@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ś
  • Odpowiedz
@kebab-case: FYI: Za Javą zawsze stała firma i pieniądze, PHP powstało z przypadku i rozwija je community ( ͡° ͜ʖ ͡°)

BTW. Java jest też 'betą' dla rozwiązań które później warto wprowadzić do PHP :D
  • Odpowiedz
@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.
  • Odpowiedz
@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.
  • Odpowiedz
@sarveniusz: problem z bardzo zaawansowana inteligencja bedzie taki, ze uzna ludzi za gatunek zbyt inwazyjny i w pewnym momencie swojego rozwoju dostepnymi srodkami zacznie regulowac srodowisko globu zeby bylo ok ( ͡° ͜ʖ ͡°)
  • Odpowiedz
@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.
  • Odpowiedz
  • 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
  • Odpowiedz
@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 :)
  • Odpowiedz
@dodo_: FOSUserBundle to akurat dużo roboty nie załatwia, więc spokojnie można projekt bez tego robić. Na tej stronie masz tylko recipes, czyli bundle, które mają automatyczną konfigurację przez Flex. Jak nie ma recipe to zawsze to można zrobić ręcznie, tak jak w sf3.
  • Odpowiedz
@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.
  • Odpowiedz
@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 -
  • Odpowiedz
@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.
  • Odpowiedz