JSP czy PHP ?

Odpowiedz Nowy wątek
2011-10-23 23:48
0

Jak myślicie, który język jest (według Was) lepszy ?

jsp to nie język, więc jak to porównywać z php ? - tomii 2011-10-24 14:59

Pozostało 580 znaków

2011-10-24 00:21
0

Same języki mają zbliżoną charakterystykę, jeśli chodzi o rdzeń.

Oba latają na VM, oba można skompilować do natywnego.

W obu masz dobre wsparcie dla OO, czyli te klasy, dziedziczenia, interfejsy, wyjątki, enkapsulację i reflection.

Oba mają szczątkowe wsparcie dla funkcyjnego w postaci funkcji lambda (chociaż w Javie zapisywane strasznie głośno i naokoło za pomocą obiektów anonimowych).

Typowanie jest inne - dynamiczne vs statyczne. Oba równie dobre.

Na oba masz frameworki wspierające MVC, ORM, i całą resztę cudów-niewidów. Żadne "killer features" mi do głowy nie przychodzą.

Chyba jedyna silna różnica, ale za to różnica ideologiczna głównie to implementacje maszyn wirtualnych. Dla PHP masz jedną jedyną. Implementacji JVM jest więcej.

Pozostało 580 znaków

2011-10-24 09:38
0

A co jeżeli mowa o JEE ? Słyszałem, że jest bezpieczniejsza niż PHP.

Pozostało 580 znaków

2011-10-24 13:25
1

Ewidentnie JSP, wszystkie frameworki są lepsze od PHP.


Pozostało 580 znaków

2011-10-24 14:40
Zaki88
0

winerfresh

Mógłbyś uargumentować to w jakiś sposób ?

skoro pytasz na forum javy to znaczy że wszystko jest tu lepsze od wszystkiego innego, bo tak i już :) - moskitek 2011-10-24 14:43

Pozostało 580 znaków

2011-10-24 14:45
0

A konkretnie jsp nie jest językiem, jest tylko "małym frameworkiem" dla molocha jakim jest jee i to wcale nie najlepszym. Zresztą pytanie co jest lepsze, php czy java to bardziej do działu flame.

Pozostało 580 znaków

2011-10-24 17:19
2
Zaki88 napisał(a)

winerfresh

Mógłbyś uargumentować to w jakiś sposób ?

Mówisz masz (oprócz tego, że już to pisałem n razy i jestem znany z nienawiści do PHP):

  • Brak jakiejkolwiek konwencji nazewniczej w:
    • bibliotece standardowej (raz piszemy z podkreśleniami, raz bez, funkcje biblioteki standardowej (o ile dobrze pamiętam) są nieczułe na kapitaliki, a definiowane przez użytkownika są czułe)
    • nazwach wyjątków (kiedyś udało mi się wywołać wyjątek po hebrajsku)
  • Udostępnienie miliarda funkcji robiących praktycznie to samo
  • Obiektowość w bibliotece standardowej jest chyba tylko na pokaz
  • Jak gdzieś wystąpi błąd to nie rypnie się cała aplikacja jak to w każdym normalnym frameworku tylko ładnie wypisze Ci gdzieśtam i jeszcze będzie radośnie merdać ogonem, że dobrze wykonał pracę
  • Nie znam innego języka, w którym by dało się zrobić takie spaghetti jak w PHP się robi bez trudu
  • Łatwiej przepisać czyjś kod niż go zrozumieć
  • Słabe typowanie zmiennych co powoduje generowanie praktycznie kur... strasznie ciężkich do wykrycia błędów

Warto byłoby dopisać, że ciągi znaków w PHP łączy się kropką. Raz dzięki temu straciłem dzień roboty na wykrywanie, dlaczego wywala mi zero, bądź jakieś inne liczby, zamiast po prostu połączyć ciągi znaków... PHP jest genialne :D - Patryk27 2011-10-24 17:39
W D też nie łączy się + ale tam ci rypnie już od razu, że coś mi tutaj nie halo, a w PHP to szukaj wiatru w polu. - hauleth 2011-10-24 17:56

Pozostało 580 znaków

2011-10-24 17:39
1

JVM, ale nie JSP. Do Javy polecam Apache Wicket lub GWT - zależnie od typu aplikacji (+ Project Lombok, Google Guice i inne frameworki). Po zaznajomieniu się z pisaniem aplikacji webowych na JVM można próbować innych języków: Scala, Clojure, JRuby, Groovy, etc W tych językach można też pisać na desktopy (Swing, JavaFX), komórki (Android), aplikacje konsolowe, wielowątkowe, rozproszone, itp itd PHP to wybitnie język pod generowanie HTMLa i tyle.


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
edytowany 2x, ostatnio: Wibowit, 2011-10-24 17:39

Pozostało 580 znaków

2011-10-24 19:50
headcrab
1
Ranides napisał(a)

Oba latają na VM, oba można skompilować do natywnego.

Można, ale czy trzeba? Java traci swoje atuty (przenośność) oraz podupada na wydajności, do tego natywnie skompilowane moduły są niekompatybilne z "pośrednimi", należy kompilować całą aplikację. PHP da się skompilować pośrednio do C++, potem do kodu natywnego, ale nie obywa się to bez problemów (kompilowany jest tylko pewien subset języka). Zyski są niewielkie, zazwyczaj to nie skrypt jest najkosztowniejszym obliczeniowo elementem systemu, 50% krótsze wykonywanie PHP przekłada się na kilka procent wydajności całej aplikacji.

Ranides napisał(a)

Typowanie jest inne - dynamiczne vs statyczne. Oba równie dobre.

winnerfresh napisał(a)
  • Jak gdzieś wystąpi błąd to nie rypnie się cała aplikacja jak to w każdym normalnym frameworku tylko ładnie wypisze Ci gdzieśtam i jeszcze będzie radośnie merdać ogonem, że dobrze wykonał pracę
winerfresh napisał(a)
  • Słabe typowanie zmiennych co powoduje generowanie praktycznie kur... strasznie ciężkich do wykrycia błędów

Między innymi słabemu dynamicznemu typowaniu PHP zawdzięczamy tak wielką ilość podatności w webaplikacjach, http://php.net/manual/en/types.comparisons.php jako przykład, inne języki nie potrzebują takich tabelek, nie zawierają równie nielogicznych konstrukcji. Napisanie == zamiast === może położyć bezpieczeństwo całej aplikacji (dzięki bezsensownym konwersjom niespotykanym w jakimkolwiek innym języku dynamicznie typowanym). Typowy "programista PHP" sadzi === tylko przy sprawdzaniu, czy funkcja zwróciła używalny wynik, czy bool(false), co jest standardowym sposobem zgłaszania błędów w tym języku (nawet przy dzieleniu przez zero). Kolejnym niespotykanym cudem humanistycznej myśli technicznej jest operator @, który blokuje danemu wyrażeniu możliwość wywalenia komunikatu błędu na wyjście (co ochoczo robi niemal każda funkcja mogąca zwrócić bool(false) w charakterze błędu).

Wibowit napisał(a)

PHP to wybitnie język pod generowanie HTMLa i tyle.

PHP to zwykły język szablonów, który w pewnym momencie, zapewne dla żartu, zrobiono Turing-complete.

Ranides napisał(a)

Chyba jedyna silna różnica, ale za to różnica ideologiczna głównie to implementacje maszyn wirtualnych.

Chyba jedyna silna różnica to jakość obu technologii i łatwość strzelenia sobie w stopę. PHP to mix losowych elementów losowych języków (funkcje lambda skopiowano z C++, gorzej się nie dało), realizowany bez planu, niespójny i pełen niebezpiecznych konstrukcji.

Pozostało 580 znaków

2011-10-24 22:13
0

Czyli zaczęcie od GWT uważacie za słuszne posunięcie ?

Pozostało 580 znaków

2011-10-24 22:24
0

Jest OK, jeżeli nie wymagasz indeksowalności stron (w innym wypadku lepiej uczyć się Apache Wicket). Szczególnie kombos typu GWT + Android + App Engine wydaje się ciekawy i Google udostępnia gotowe rozwiązania do takiego połączenia (zestaw współpracujących wtyczek pod Eclipse).


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
edytowany 1x, ostatnio: Wibowit, 2011-10-24 22:24

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0