Segregacja interfejsów/klas

0

Pytanie: jak poprawnie segregować w plikach definicje interfejsów i klas? Przykładowo mamy interfejs "wszystkożerne" dziedziczący po "roślinożernym" i "mięsożernym". Jako że stosujemy segregację interfejsów, zgodnie z tą zasadą poprawnie byłoby wrzucić te interfejsy do jednego pliku, przykładowo "CoJedza.php", czy podzielić je na inne, mniejsze pliki, odpowiadające funkcjonalnością pojedynczemu interfejsowi? Czyli "Miesozerne.php", i tak dalej. Drugie rozwiązanie wymuszałoby masę podłączonych plików i jakakolwiek zmiana konfiguracji/relacji dziedziczenia wymuszałaby gonienie po kolejnych plikach. Z drugiej strony wydaje się to bardziej zgodne z SOLID. Co zatem wybrać?

1

Jak przestaniesz pisać notatnikiem/lodówką to nagle nie będzie problemu z "gonieniem po plikach" i będziesz się mógł się skupić na prawdziwym problemie.

0

Więc opcja z dostosowywaniem nazwy pliku do nazwy klasy/interfejsu jest bardziej odpowiednia niż ogólna nazwa na plik, który przechowuje kilka interfejsów?

0

Tak. Np.w Javie to jest standardowo przyjęta praktyka że jedna klasa = jeden plik, chyba że masz jakieś klasy niepubliczne, używane tylko przez tą "główną", wtedy można je wrzucic do tego samego pliku bo i tak nikt nie powinien ich ruszać.

1 użytkowników online, w tym zalogowanych: 0, gości: 1