Odnośnie projektowania systemu przychodni:
https://www.pluralsight.com/courses/domain-driven-design-fundamentals
Świetny kurs zwracający uwagę na tworzenie czegoś takiego. Tu na tapet wzięta "przychodnia" dla zwierząt, czyli klinika weterynaryjna.
Jako uzupełnienie polecam literaturę:
- Domain-driven design in PHP - Carlos Buenosvinos (https://leanpub.com/ddd-in-php)
- Domain-Driven Design. Zapanuj nad złożonym systemem informatycznym - Eric Evans
- Domain Specific Languages - Martin Fowler
- Domain Specific Languages Engineering - Markus Voelter
- Applying Domain Driven Design and Patterns - Jimmy Nilson
- Implementing Domain-Driven Design - Vaughn Vernon
- Architektura systemów zarządzania przedsiębiorstwem. Wzorce projektowe - Martin Fowler (Helion 2005)
- Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku - Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides
- PHP5. Obiekty, wzorce, narzędzia - Matt Zandstra
- Wzorce implementacyjne - Kent Beck
- xUnit Test Patterns - Gerard Meszaros (The Addison-Wesley Signature Series)
- Software Testing. Concepts and Operations - Ali Mili (John Wiley & Sons 2015)
- TDD - Kent Beck
- Testy jednostkowe. Świat niezawodnych aplikacji. Wydanie II - Roy Osherove
- Growing Object-Oriented Software Guided by Tests - Steve Freeman (The Addison-Wesley Signature Series)
- Kod doskonały. Jak tworzyć oprogramowanie pozbawione błędów. Wydanie II - Steve McConnell (Helion)
- Agile. Programowanie zwinne - zasady, wzorce i praktyki wytwarzania oprogramowania - Robert C. Martin (Helion 2008)
- Pragmatyczny programista. Od czeladnika do mistrza - Andrew Hunt, David Thomas (Helion 2014)
- Zwinny samuraj. Jak programują mistrzowie zwinności - Jonathan Rasmusson
- Czysty kod. Podręcznik dobrego programisty - Robert C. Martin
- Mistrz czystego kodu. Kodeks postępowania profesjonalnych programistów - Robert C. Martin
- Zwinne wytwarzanie oprogramowania. Najlepsze zasady, wzorce i praktyki - Robert C. Martin
Oczywiście pisząc aplikację obiektowo, nie są nam potrzebne przykłady w danym języku, tylko jakimkolwiek. Obiekty na świecie są zawsze takie same. Przynajmniej nie różnią się w przypadku C#, PHP, Java, F# (zasadniczo).
Kurs na pluralsight to C#, jednak wiedza w nim zawarta pozwala na samodzielne zbudowanie poważnej aplikacji. W treści znajdziesz tworzenie harmonogramu oraz wielu różnych bardzo ważnych elementów.
Książki które podlinkowałem też Ci pomogą.