o, nie zauważyłem tej wypowiedzi wcześniej. cc @somekind
No tak, bo kod w takich dynamicznych cudach techniki jak PHP i JS jest wprost najeżony wzorcami i OOP. ;]
W PHP nie wiem jak jest, bo w nim nie programuję, poza tym nie uważam PHP za dynamiczny język (PHP to takie nie wiadomo co, składnia Perla połączona z obiektówką Javy).
Co do JavaScript to nie rozumiem tego stwierdzenia. Pewnie, że w JS używa się wzorców. Cały Angular na tym bazuje. Chociaż to trochę zły przykład, bo Angular okazał się być wielką pomyłką przez to, że "jest wprost najeżony wzorcami i OOP". Nadmierne napakowanie wzorcami to taki overengineering.
Tym niemniej jak chcesz, to możesz w JS każdy wzorzec zrobić: http://addyosmani.com/resources/essentialjsdesignpatterns/book/
edit:
No, a do tego nie ma błędów typowania, więc nic się nie wypieprzy przed wdrożeniem, a że użytkownik dostanie jakieś błędy typowania na twarz, to jakie to ma znaczenie. :P
można tego uniknąć stosując np. Flow ("Flow is a static type checker, designed to find type errors in JavaScript programs:"), ale ja tego nie stosowałem akurat.
Banalne, jeśli się je zna, bo ludzie, którzy znają i rozumieją wzorce, zastosują je bez problemu w dowolnym sensownym języku. Sęk w tym, że większość ludzi zna wzorce jedynie z nazwy, a w praktyce po prostu kopiuje kod zamiast zastanowić się nad tym, jak to zrobić dobrze.
Po prostu 90% programistów to idioci (bo 90% ludzi ogólnie to idioci, a za programowanie biorą się dzisiaj przypadkowe osoby, więc raczej ciężko oczekiwać czegoś innego).
Narzut czasowy potrzebny jest na przemyślenie i wybór drogi, nie na samą implementację - to akurat powinno być oczywiste dla każdego, kto nie jest klepaczem
No tak, taki narzut faktycznie jest, masz rację.
Z drugiej strony czasem ten narzut jest taki, że myślisz dzień, dwa i więcej nawet, testujesz potencjalne rozwiązania... A czasem wpadasz na coś po minucie. Nie wiem czy obiektówka tu gra rolę. W programowaniu są trudniejsze problemy od obiektówki (np. programując w JavaScripcie dużo czasu trzeba spędzić na obchodzeniu ograniczeń bądź bugów różnych przeglądarek. Ew. na obchodzeniu niedoskonałości CSSa itp. To zabiera tam mnóstwo czasu. Dochodzą też ograniczenia frameworków (np. programując w Angularze czasem trzeba sie głowić jak zrobić coś tak, żeby przechytrzyć Angulara).
A co do samej obiektówki, to i tak nie powinno jej być zbyt dużo, bo to niezdrowo. Wg mnie obiektówka jest dobra jako pewien szkielet aplikacji, a w środku i tak najlepiej pisać funkcyjnie (nie koniecznie wszędzie, ale w tych miejscach które się do tego nadają, programowanie funkcyjne + oop = profit :).