@kebab-case: Java na pewno jest językiem bardziej rozwiniętym, ale to nie znaczy, że idealnym do wszystkich zastosowań. Dla mnie język to jednak tylko narzędzie i w miarę możliwości nie ograniczam się do jednego.

Żarty na temat PHP obecnie nie są już jakieś aktualne, społeczność mocno uświadomiona, wystarczy zerknąć na tematy poruszane na grupach na facebooku czy na konferencjach. Oczywiście nadal są ludzie, którzy gdzieś tam korzystając ze starych tutoriali wrzucają jakiś
@sarveniusz Wiesz że wg internalsów to była pomyłka (w sensie że flaga na początku każdego pliku, zachęcam do poczytania na ten temat i popytania na ich kanałach dlaczego) i strict types powinien być przełączany na poziomie php.ini.
@RedWizard: W sumie to tak się wydaje, że tej roboty jest mega dużo, ale jak się ma jakieś sprecyzowane wymagania i nie rozważa przeprowadzki to całkiem ciężko wybrać coś konkretnego, a opcje zdalną nie wszyscy oferują i wiadomo nie każdemu pracownikowi też to odpowiada.
@sierzchula: Właśnie przewidywanie co się stanie jest dosyć problematyczne. Bardzo fajnie rozpisane możliwe scenariusze są w książce Nicka Bostroma "Superinteligencja. Scenariusze, strategie, zagrożenia". Całkowita zagłada ludzkości nie jest pewna, obecnie taką superinteligencją jesteśmy dla zwierząt, a zależy nam jednak aby cały czas one były, bo mamy z tego pewne korzyści. Dopiero jeśli wchodzą nam w drogę to z nimi walczymy.
  • 1
@AVAW z tablicami jest problem w ide, nie podpowiada co tam w niej siedzi, tak damo typehinty malo mowia, a jak masz obiekt to jest wiadomo, poza tym w DTO czy tam inny obiekcie możesz mieć jakieś dodatkowe operacje.

Odnośnie final to na blogu kiedyś pisałem posty o klasach final oraz wadach dziedziczenia, możesz sprawdzić. Z reguły jak już muszę dziedziczyc to tylko po abstrakcji, bo jak zaczniesz robić niesamowite hierarchie dziedziczenia
@sarveniusz: potwierdzam, post jakby urwany. Tez ciezko wskazac mi o co chodzi ale po przeczytaniu czuje jakiś niedosyt a nie czułem tego przy innych Twoich wpisach. Może jak przeczytam kilka razy to coś mi się nasunie :)
@sarveniusz: Artykuł przyjemny, krótki i rzeczowy. Jednak to nawiązanie do laravela chyba nie potrzebne ( ͡º ͜ʖ͡º) Samo nazwanie tego tworu fasadą wydaje mi się mocnym nadużyciem.
@sarveniusz: Jak na bloga to trochę zbyt formalne zdania - jeśli ktoś jest w stanie rozumieć o czym mowa to już raczej dawno wie to czego miałby się z nich dowiedzieć (trochę jak z "A monad is just a monoid in the category of endofunctors").

Poza tym przypadek używania dziedziczenia jako mechanizmu kopiowania funkcjonalności do stworzenia nowego typu można odrzucić na samym początku, bo ten jest już wystarczająco upośledzony -
@sarveniusz: Po prostu pozbądź się klasy abstrakcyjnej. Bardzo ważna zasada na równi z SOLID - composition over inheritance. Niezawodnym sposobem pisania jest tworzenie wpierw interfejsów, a następnie klas implementujących. W razie konieczności wraz z rozwojem projektu rozbijamy interfejsy na mniejsze, klasy podobnie rozbijamy na mniejsze, a następnie tworzymy kompozycję przez klasy agregujące które proxują calle w drzewie kompozycji.