Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jaki język do aplikacji webowych?
Forum PHP.pl > Inne > Hydepark
aleo
Tak jak w temacie, ogarniam dość dobrze C++, Java podstawy.
Chce iść w kierunku web, php znam tak powierzchownie, nigdy się nie zagłębiałem.
Nie wiem teraz, czy obkumać php'a do perfect, a potem brać się za ror'a, czy django?,

Czy może od razu django, lub ror, a jeśli to drugie to chyba przy bardziej hardcorowych projektach brać ror'a?
erix
Cytat
to chyba przy bardziej hardcorowych projektach brać ror'a?

Czy ja wiem...

Cytat
Czy może od razu django, lub ror

Django Cię wkurzy... biggrin.gif Na pierdołach, ale wkurzy.
Van Pytel
Jeżeli znasz dobrze c++ to nie powinieneś miec problemu z php
rzymek01
Istnieje alternatywa, mianowicie Java + Jython/Python

W taki oto sposób możesz pisać zarówno strony internetowe, jak i aplety, gry internetowe oraz aplikacje klienckie/usługi/serwer itd., jednym słowem wszystko co sobie zamarzysz
Spawnm
Ale po co babrać się w django czy ror jak masz php i jego frameworki?
batman
Cytat(Spawnm @ 22.06.2011, 12:23:04 ) *
Ale po co babrać się w django czy ror jak masz php i jego frameworki?

Ponieważ są lepsze i praktycznie wszystko jest już tam napisane i po prostu działa.

@aleo
Django i RoR to nie języki tylko frameworki napisane odpowiednio w Pythonie i Ruby.
Crozin
Chcesz brać się za PHP tylko po to by przerzucić się na Pythona lub Ruby? Nie mogę doszukać się tutaj żadnej logiki. Podobnie jak w tym, że znając Javę w której jak najbardziej można tworzyć aplikacje internetowe szukasz czegoś innego nie podając w ogóle dlaczego (co Ci w JEE nie pasuje czego chciałbyś uniknąć gdzie indziej).
aleo
Hej

Java to była w technikum rok, jakoś tam ją znam. Robiliśmy okienkowe appsy, nie zachwycila mnie.
C++ troche bardziej sie musialem naumiec, bo rozszerzona maturke jeszcze po drodze było mi zdawać.

Php'a traktuje jako podstawe, ktora kazdemu webdeveloperowi wypada znac, dlatego tego typu pytanie. Wiem, ze ror i django to frameworki, jednak zastanawiam sie co wybrac, od razu ror'a badz django,a moze na poczatek obkumac phpa i potem inny jezyk.
peter13135
W wymaganiach pracodawców PHP spotyka się częściej niż ror czy django, chociaż wszystko może się zmienić.
Jak znasz c++ i javę to z PHP będziesz miał mniej męczarni niż z rorem czy django (tak przynajmniej mi się wydaje) z racji podobieństwa tych języków.
batman
@aleo
PHP wypada znać. Chociażby dlatego, że w Polsce ciężko o pracę związaną z tworzeniem www bez znajomości tego języka.
Warto jednak poznać alternatywę jaką zapewnia Python oraz Ruby, by w razie potrzeby móc szybko się przekwalifikować.
erix
Cytat
W wymaganiach pracodawców PHP spotyka się częściej niż ror czy django, chociaż wszystko może się zmienić.

Ale kto mu każe robić dla wyłącznie polskich pracodawców? Są firmy, które w RoR robią całkiem niezłe rzeczy (np. Applicake).

PHP nie jest idealny. Wcale się nie dziwię, że niektórzy się rozglądają za innymi językami. Dwa czynniki, które irytują najbardziej:
  • Opieszałość hostingowni (na niektórych 5.3, to wciąż nowość, sic!)
  • Spory devteamu. Skupiają się na pierdołach i są niezdecydowani zatrzymując rozwój języka. I wychodzi tu brak sensownego zaprojektowania pewnych rzeczy. Np. do tej pory nie mieści mi się, jak ArrayAccess nie przyjmuje tablic wielowymiarowych. Sytuacja jest identycznie jak w przypadku IE - pewne rzeczy zaczęli rozwijać zdecydowanie za późno, a dokumentacja za tymi zmianami nie nadąża (vide: opisy nowych klas w SPL). No i zmiana ku OOP, a funkcje podstawowe plują warningami. Django/RoR kulturalnie wypuszczają wyjątek, a nie warning. Toć nawet w JS można przechwycić...


PHP nie byłby taki popularny, gdyby nie fakt, że był pierwszym, w którym przy niewielkim nakładzie dało się coś zrobić... Gdyby było to np. Rails, ale wcześniej - prawdopodobnie nie dyskutowalibyśmy dzisiaj. (;

Cytat
Ale po co babrać się w django czy ror jak masz php i jego frameworki?

Pobaw się dzień RoR-em. Nie zaczynaj od Django, bo składnia i sposób konstruowania niektórych rzeczy Cię tylko wkurzy. [; Choć jest takie powiedzenie, jeden woli ogórki, drugi ogrodnika córki. (;

Znając jakikolwiek język i coś operujące na ActiveRecord poczujesz się jak w domu. (;
Spawnm
Przyznam że z rorem nie miałem kontaku i chwilowo mieć nie będę ze względu na brak czasu.
Pythonem się bawiłem, do django nawet książkę kupiłem i tutaj masz rację, nie podoba mi się. Dodatkowo nie widzę sensu dokładnego uczenia się czegoś w czym pisał bym to samo co w php które już znam nawet dobrze.
Choć przyznam że do namespace nie mogę się przekonać.
bikerszymek
Cytat(Spawnm @ 22.06.2011, 21:54:23 ) *
Choć przyznam że do namespace nie mogę się przekonać.


Ja też nie mogłem, do czasu zanim zacząłem pracować na Symfony2. Donośnie tematu miałem kilka podejść do Django ale dochodziłem do podobnego wniosku jak: co więcej może mi on zaproponować niż PHP (w moim przypadku plus symfony).
mat-bi
A ja się nie zgodzę. Pisałem w Symfony - miałem wrażenie, że ta kobyła nie wstanie. Napisałem coś podobnego w Django - bardzo szybko chodziło.

RoR - miałem do czynienia. Trochę przereklamowany, według mnie.

Jeśli chcesz przejść gdzieś, polecam Javę - przyda się potem.
bikerszymek
Zacznij używać Symfony2 to przekonasz się, że Django ani RoR nie będzie Ci do niczego potrzebne, powiem nawet, że to te ostatnie powinny teraz równać do pierwszego.

Co do Javy to zgadzam się w z Tobą w pełni, jest to obecnie jedyne rozsądne posunięcie.
mat-bi
Niestety, próbowałem. Pogubiłem się w modułach i zrezygnowałem.
bikerszymek
Masz na myśli bundle? wg mnie nie sposób się w nich pogubić, dawno tak prostego (nie mylić z prostackim smile.gif) interfejsu nie widziałem
mat-bi
No widzisz. Mi wywalało wyjątkami, zajrzałem do AppKernela i ja dziękuję, postoję.

Tak BTW, za bardzo sie tym nie podniecaj, bo większość hostingów jedzie jeszcze na php 5.2, który namespace'ów nie ma smile.gif
bikerszymek
A co takiego dziwnego w AppKernel znalazłeś? Bo nie rozumiem Twoich rozterek

W tych czasach nie wyobrażam sobie pracy na serwerze współdzielonym!
erix
Cytat
W tych czasach nie wyobrażam sobie pracy na serwerze współdzielonym!

Jeśli robisz aplikacje dedykowane, to możesz sobie na to pozwolić; co innego, gdy sprzedajesz produkt.
bikerszymek
Miewam też takie przypadki, proponuję wtedy własny serwer za podobne pieniądze.
elektrrrus
Symofony2 to faktycznie kawał dobrej roboty.
Co do javy - polecam start od wicket-a, bardzo przyjemny fw do prostszych projektów, dobrze łączy się z hibernatem. A potem już spring, i całe j2ee, historia rzeka...
aleo
hehe, widzę dyskusja wre;)
No to chyba czas na ror'a zakochany.gif
mat-bi
Nie polecam. Przereklamowany
aleo
@mat-bi

Django lepsiejsze? W sumie jezyk to narzedzie...
Nie wiem, czemu ale do rubiego czuje większa miętę - ideologia etc.
elektrrrus
Python to nie tylko django, jest jeszcze pylons u cała otoczka zope-owa. W dobrze poskładanym pylons można zrobić na prawdę dużo i nie ma tych denerwujących cech django.
Moim zdaniem python ma jeszcze jedną przewagę - sam język daje większą otoczkę niż ruby, więcej w nim można napisać desktopowo w krótszym czasie(dobrej jakości bindingi z bibliotekami systemowymi).
RoR z Ruby to trochę zamknięty świat, python i np. pylons dają więcj możliwości ruchu.
melkorm
Cytat
Python to nie tylko django, jest jeszcze pylons u cała otoczka zope-owa. W dobrze poskładanym pylons można zrobić na prawdę dużo i nie ma tych denerwujących cech django.
Moim zdaniem python ma jeszcze jedną przewagę - sam język daje większą otoczkę niż ruby, więcej w nim można napisać desktopowo w krótszym czasie(dobrej jakości bindingi z bibliotekami systemowymi).


web2py - sądzę że najlepszy fw jeżeli chodzi o web (i nie tylko) odnośnie pythona, przerobiłem django, pylons(teraźniejsze pyramid), pyramid i sądzę że na teraz jest to najlepszy fw wink.gif Zresztą będę pisać w nim inżynierkę więc zobaczymy jak na prawdę wypadnie w bardziej zaawansowanych projektach w porównaniu do innych i ogólnie php wink.gif
chlebik
Dobra ja się może wypowiem (wolne w końcu). Nie rozumiem w ogóle po co zakładasz ten wątek - chcesz po prostu 'zaliczyć' wszystkie technologie/języki/frameworki, które widzisz jak wpiszez w pracuj.pl hasło 'programista'? Jeżeli tak jest jest to odpowiem krótko - NIE WARTO. Zastanów się na jakim etapie życia jesteś, czy wiesz czym chcesz się zawodowo zajmować. Poznawać kolejne technologie/języki/frameworki możesz w wolnym czasie później (ja mam taki dream by pobawić się czystym C, pogrzebać w kernelu linuxa, klepnąć LFS i rozumieć co robię, ale odkładam to ad acta bo wciąż jest masa rzeczy, które muszę poznać w codziennej pracy). Piszesz, że dobrze ogarniasz C++ - mówię ci to z perspektywy człowieka, który w tym języku nie napisał linijki kodu, ale pracował z ludźmi, którzy w tym pisali - nie ogarniasz i długo jeszcze nie będziesz. Podstawy Javy - no fajnie, ale ja wejdę w sieć i po tygodniu powiem, że mam podstawy assemblera/erlanga/brainfucka i co z tego wyniknie? Zastanów się nad tym.

Chcesz klepać aplikacje webowe? No to odpowiadasz sobie na proste pytanie - czy chcę klepać sporą kasę na kobylastych projektach JEE w korpo, czy wystarczy mi praca przy projektach typowo 'webowych' - głównie sklepy, jakieś CMSy, stronki i takie tam (pytanie jest uproszczone, ale to forum i hydepark, a nie poradnia zawodowa)?

I tyle. Po odpowiedzi na to pytanie wiesz co masz robić:

1. Jak JEE to lecisz z tym, co dzisiaj się używa - servlety (tak tak i to wciąż w masie miejsc bo lekkie są), Spring (core, MVC, nie zaszkodzi security), ORMy + JPA (w sumie tego do końca nie da się rozdzielić), możesz zajrzeć do specki EJB, frameworki webowe ( Play, Wicket, JSF, może SEAM później bo to większa kobyła, GWT). I jak to sqmasz to już lecą poważniejsze zagadnienia jak całe SOA, JMSy, ESB, bajerki integracji i insze wywalone w kosmos korpo-technologie.

2. Jak webówka to naucz się BARDZO DOBRZE zwykłego webdevelopmentu. I nie chodzi mi o znajomość PHP czy Pythona. Chodzi mi o znajomość wzorców używanych w programowaniu webowym (w Javie to jest bardzo często zaszyte już w uzywane frameworki, w PHP o wiele z tym trudniej). Dowiedz się co to są wzorce projektowe i zacznij ich używać, dowiedz się jak używa się cache i co z tego wynika dla aplikacji (jej architektury). Jakie są zasady zabezpieczania aplikacji i co z tego wynika. A to czy będziesz to wszystko realizował klepiąc w RoR czy Pytongu to już kwestia absolutnie obojętna. Naucz się dobrze 1 języka to poznanie na szybko kolejnych będzie zabawą. Zaś zdobycie biegłości to po prostu zwykła codzienna orka. Ja też w CV (jako Javowiec) wymieniam masę różnych fajnych nazw technologii, ale to też nie jest tak, że jak mnie zapytasz z marszu jak bym zrobił X,Y czy Z w danym frameworku to znam odpowiedź. Po prostu nie da się, bo np. przez ostatnie 6 miesięcy klepałem w czyms zupełnie innym.


Rozpisałem się, ehh, co ta kawa robi z człowiekiem wink.gif
Miłego dnia życzę,
Michał


Jabol
Jak już ktoś wspomniał. Myślisz, że znasz C++? Mylisz się. Myślisz, że znasz Javę? Może wiesz coś o niej tak jak w ZSRR ludzie wiedzieli co się dzieje na zachodzie. Poznanie Javy trwa na prawdę dłużej niż kilka tutoriali. O poznaniu C++ już nie wspomnę - odpuść sobie od razu jeżeli chcesz szybkich wyników. Być może znasz oba akurat na tyle, że będzie Ci łatwo wdrożyć się w PHP.

Javę EE odradzam, bo to z bardzo dobrą znajomością Javy tygodnie jak nie miesiące bólów głowy. Tutaj bym najpierw radził poznać język dobrze. Poza tym JavaEE to niestety wciąż głównie programowanie w XML'u a nie w Javie.

Cokolwiek będziesz robił polecam tylko zrobić coś więcej niż jeden dwa tutoriale. Napisz własną aplikację. Spóbuj ulepszyć kod z tutoriala, przenieść to czego się nauczyłeś z jednego tutoriala do kodu który masz z drugiego.

No i nie oszukuj się - większość z tych języków/frameworków bla bla robi reklamę z tego jak szybko możesz zacząć w nich pracować. Ale jeżeli chcesz któryś z nich poznać to nad każdym będziesz musiał dłużej przysiąść.

Każda technologia ma swoje ułatwienia które sprawiają, że rzeczy działają same z siebie. Sęk w tym, że dopuki nie zrozumiesz czemu działają, nie będziesz w stanie ich suwerennie używać. I tym samym nie będziesz dobrym programistą. Także nie oszukuj się, żadna z tych technologi nie pozwoli Ci stać się wartościowym programistą szybciej niż inna. A w czym szybciej będziesz mógł szablonowy kod klepać, to niech Ci już ktoś inny tutaj odpowie...

Także podsumowująć. Wybierz sobie technologie którą chcesz. Gdyby jedna była lepsza od drugiej to pewnie ta gorsza już by nie istniała. Można więc wywnioskować, że wszystkie technologie które istnieją dłużej niż kilka lat (a to wszystkie z wymienionych: php, java ee, ror, django) mają swoje zalety i wady którymi trzymają się w szachu. Po prostu bądź cierpliwy bo na końcu nie ważne w jakiej technologi, ważne żeby być zajebistym.
erix
Cytat
proponuję wtedy własny serwer za podobne pieniądze.

Cóż, nie każdy na to idzie. [;

Cytat
RoR z Ruby to trochę zamknięty świat, python i np. pylons dają więcj możliwości ruchu.

Zależy, jaką społeczność obserwujesz. [;
mat-bi
Idzie odwilż - na home i nazwie wprowadzili php 5.3, więc zaczęło być możliwe używanie SF 2 (tak BTW, chyba się go douczę i napiszę w nim to, co miałem w Kohanie, a ona jest wkurzająca)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.