Atunci când limbajul este scris, este mult mai ușor să înveți codul sau API-ul terț (și propriul). Iar în IDE este mai greu să faci o greșeală atunci când scrii cod.
În ceea ce privește bibliotecile din PHP, acestea sunt, cu siguranță, oarecum mai mari decât în Java (în direcția web). Dar am rezolvat această problemă prin RPC (pe site-uri care nu sunt critice) sau prin JNI (apel nativ de funcții C \ C ++ printr-o interfață specială). Pe de altă parte, lucrurile fundamentale precum ORM sau cadrele web sunt mult mai calitative.
Calitatea este realizată de managementul dependențelor, asamblării și producției proiectului. Totul este automatizat și ascuțit pentru Java.
În Java, aveți un proces care funcționează cu clienții, în PHP aveți nevoie de un nou proces pentru fiecare client. Nu știu cât de mult afectează performanța, dar în Java, în acest sens, este mai convenabil să lucrezi atunci când scrii niște servicii partajate pentru clienți.
În viitorul apropiat, va fi posibil să apelați librării Python, Ruby sau cadre direct din Java. Puteți face acest lucru acum, dar în Java7-8 acest lucru va fi mult optimizat. Deci, problema cu bibliotecile va fi rezolvată.
Dacă doriți acum să începeți să lucrați cu Java pe web, aruncați o privire mai atentă asupra cadrelor web Grails sau Tapestry 5. Prima nu este exact Java (construită pe Groovy), dar are o mulțime de integrare cu bibliotecile. Al doilea este în întregime în Java, dar mai puține biblioteci integrate.
De asemenea, primăvara este acum o parte a dezvoltării proiectelor web. Cadrele menționate mai sus sunt fie construite pe aceasta, fie au capacitatea de a se integra cu ea.
În Java, aveți un proces care funcționează cu clienții, în PHP, aveți nevoie de un nou proces pentru fiecare client
depinde. Atunci voi și demonii php și alții sunt încă viața. Deși, deoarece nu este ciudat. Faptul că php creează un proces separat și îl bate la sfârșit este, în principiu, adesea, chiar și un plus.
Da, ca și pentru REST, Java este, de asemenea, o idee bună. Mai ales cu cadrul de primăvară. Puteți descrie API-ul într-o clasă, din care veți avea acces la alte persoane. Și Java HotSpot JVM în timp ce rulează va deține o compilație JIT din această clasă și o viteză semnificativă de vârstă. Principalul lucru este că mâinile programatorului nu au fost strâmbe atunci când lucrează cu obiecte și memorie, altfel mult timp pentru GC va dispărea. Dar acesta este IMHO meu. Așteptați opiniile altora
PHP are un alt avantaj important pentru Web: Execuția scriptului poate fi limitată în timp și din memorie. Această restricție nu afectează restul conexiunilor.
În Java, pentru aceasta, trebuie să omori serverul aplicației și să porniți din nou, ceea ce este o lungă perioadă de timp și va afecta alte conexiuni. De fapt, prin urmare, în producție, mai multe servere sunt pornite pe o singură mașină.