PHP skategoryzowane
PHP jest tylko językiem kleju, podobnie jak BASH lub Perl. Jest w tym dobra, ale nie jest dobra w niczym innym, pomijając poważną pracę. Język nie jest zaprojektowany. Jest to ewoluowane przez hakowanie różnych kodów razem w przypadkowy sposób (kod i poprawka).
Języki skompilowane
W przeciwieństwie do PHP, Java jest językiem skompilowanym, który został odpowiednio zaprojektowany. Istnieją JSR definiujące język, wiele struktur i koncepcji klasy korporacyjnej, takich jak EJB, JMS, ESB, Spring, Struts, Hibernacja i inne.
Oprogramowanie firmowe
Pod względem systemów korporacyjnych Java EE jest rozwiązaniem, które pasuje do tego celu (wersja Enterprise), podczas gdy PHP jest używane w firmach, które starają się obniżyć koszty poprzez zatrudnienie taniej siły roboczej o niższych kwalifikacjach.
Poczyniono znaczne wysiłki, aby przeciągnąć PHP do segmentu Enterprise przy użyciu różnych platform. W szczególności Zend Framework 2 . Podstawowym problemem tutaj nie jest zorientowanie obiektowe PHP, ale jest to brak projektu, brak silnego pisania, niestandardowe rozwiązania standardowych problemów (rodzaj włamań do wszystkiego) i całkowity brak jakiejkolwiek przepisanej architektury.
Projektowanie oprogramowania (omówiona architektura)
W przypadku PHP ciężar architektury oprogramowania nadal leży w pełni w rękach programistów, którzy wykonują bardzo słabą robotę, tj. Często nie mają żadnej architektury, tylko losowo kodują i naprawiają. Brakuje bezpieczeństwa i transakcji, dlatego programiści muszą uzyskać odpowiednie wsparcie. W Javie jednym rozwiązaniem jest EJB z adnotacją. Weź również pod uwagę fakt, że w PHP nic się nie dzieje, jeśli pominiesz łapanie wyjątków lub popełnisz różne błędy. To jest do czasu wykonania. Dzięki Javie będziesz otrzymywać ostrzeżenia i błędy bezpośrednio w czasie projektowania. Nazywa się to solidnością, ale dzięki PHP możesz tylko śnić.
Wielowątkowość
PHP nie obsługuje wielowątkowości. Kod jest zawsze pojedynczym wątkiem. Utrudnia to jego działanie w przypadku nietrywialnych problemów przy większym obciążeniu. W Java EE wielowątkowość jest w pełni obsługiwana, na przykład przez interfejs Runnable.
Wsparcie i standardy
Weź również pod uwagę wdrożenie, usługi sieciowe i inne standardy. Podczas gdy w Javie istnieją duże firmy, takie jak Oracle, IBM, RedHat, Apache i wiele innych, PHP ma tylko Zend.
Wniosek
Podsumowując, PHP jest bardzo złym językiem obiektowym. Ściśle mówiąc, nie jest on nawet obiektowy, ale hybrydowy, co jest złe w wersjach> 5, ponieważ OOP jest pomieszane z programowaniem proceduralnym. Poleciłbym PHP tylko jako klej jak BASH, ale do poważnej pracy użyłbym Java EE.
Powiązane myśli
Główną kwestią związaną z najnowszą wersją Zend Framework 2 jest to, że stara się być jak Java EE, ale całkowicie nie zapewnia przynajmniej zdalnie porównywalnego zestawu dostępnych pakietów, funkcji, narzędzi, automatyzacji, kontroli błędów, architektury, projektowania i wszystko.
Z mojego doświadczenia wynika, że używanie PHP do złożonych projektów jest droższe niż w Javie.
Krążą też pogłoski, że PHP oznacza dość okropne programowanie . Mogę to potwierdzić.