Myślę też, że twój profesor ekonomii ma rację i to jest sposób na nauczenie się czegokolwiek w pierwszej kolejności; Spójrzmy jednak na to tak: czy zachowałbyś Koło w tajemnicy i pozwoliłby wszystkim je wynaleźć na nowo, ze względu na kreatywność ? Oczekuję, że powiesz „Nie”, ponieważ nie wszyscy ludzie są stworzeni / zdolni do wynalezienia swoich kół - a jeśli tak, zrobią to w pewnym momencie, nie ma znaczenia, czy są świadomi istnienia koła lub nie.
Wróćmy do programistów; Z dnia na dzień jestem programistą, więc MVC jest jedną z tych rzeczy, z którymi codziennie wchodzę w interakcje. Kilka razy próbowałem zbudować własne struktury, wiele się nauczyłem, ale wszystkie zakończyły się niepowodzeniem. Starałem się jak najlepiej, ale co by się stało, gdyby nie było MVC? Cóż, prosty, mój kod źródłowy jest do kitu - pod względem niezawodności, łatwości konserwacji i rozszerzalności.
Myślę, że dla większości z nas to samo. Jeśli nikt nie mówi ci o DI - jako dobrej praktyce, to ile aplikacji korporacyjnych powinno się zmagać lub nie działać, dopóki ich programiści nie nauczą się tej lekcji?
Drugi punkt to standardy branżowe . Jeśli nie nauczysz MVC programistów internetowych, czy jesteś gotowy stawić czoła wszystkim niestandardowym strukturom, które musisz poświęcić trochę czasu, aby najpierw nauczyć się, jak to robić, a potem zdajesz sobie sprawę, że niektóre z tych struktur mogą masz dobry pomysł, ale większość z nich będzie miała poważne wady projektowe, które mogą mieć poważne konsekwencje dla twojego projektu oprogramowania - nawet dobrze znane frameworki wciąż zmagają się z wadami projektowymi od czasu do czasu.
Ale co by się stało, gdybyśmy mieli te wszystkie fajne pomysły i połączyli je wszystkie, a ci inteligentni programiści wzięli dobre rzeczy z tych wszystkich eksperymentów i stworzyli naprawdę fajną strukturę, która najlepiej pasuje do tego konkretnego problemu? Właśnie utworzyłeś wzorce projektowe . Jeśli jesteś żywym stworzeniem, nie ma innej możliwości; Nawet zwierzęta stosują najlepsze praktyki i wzorce projektowe w swoim codziennym życiu.