Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Migracja z PHP do innego języka.. i na odwrót
Quantum
post
Post #1





Grupa: Zarejestrowani
Postów: 450
Pomógł: 84
Dołączył: 27.11.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Czy kiedykolwiek zastanawialiście się nad zmianą swojego "głównego" języka programowania ? Jakie były tego powody ? Czego brakowało Wam w poprzednim, a co zaintrygowało Was w nowym ?

Osobiście, jakiś czas temu szukałem odpowiedniego dla siebie frameworka w PHP. Wcześniej pisałem w Kohanie 2.3.4 czekając na zapowiadaną trójkę.. i rozczarowałem się jak i wiele innych osób. Dodatkowo totalny brak dokumentacji (praktycznie stoi w miejscu) był "wisienką na torcie". Postanowiłem spróbować innych języków, lecz z początku - nie zbyt na poważnie. W PHP przeszkadzał mi brak pełnej obiektowości. Mianowicie, nie mogłem napisać konstrukcji w stylu:
  1. array('a', 'b', 'c')->foreach($key, $value) {
  2. // operacje
  3. }

czy
  1. echo ('tekst')->ucfirst


Już sam operator "->" nie byłby zbyt trafiony, kombinacja 'tekst'->metoda psułaby wyraźnie estetykę kodu. Może i tak PHP był projektowany od początku.

Pierwszego "odkryłem" Pythona, składnia była dla mnie już o niebo lepsza, ale szukałem dalej, aż trafiłem na Ruby. Nigdy do tych języków nie przywiązywałem większej uwagi, kiedyś wydawały mi się nieco skomplikowane[?]. Po przetestowaniu obu, postanowiłem przysiedzieć trochę więcej w jednym i sprawdzić jego możliwości, plusy i minusy. Wybór padł ostatecznie na Ruby. Jedyny problem to taki, że na ten moment ten język nie jest zbyt popularny w Polsce. Rezultatem są nikłe oferty pracy i drogie hostingi (mam na myśli sytuacje, gdy wybieramy serwer pod małą stronę, np: "portfolio", w przypadku większych aplikacji i tak wybór pada na dedyk/vps). Po kilku dniach zapoznawania się z nową składnią i latach doświadczenia z pisania w PHP w kilku paradygmatach nauka kolejnego języka dotąd "idzie jak po maśle" (IMG:style_emoticons/default/smile.gif) .

Jakie są Wasze doświadczenia w tym temacie ?
Go to the top of the page
+Quote Post
dziamber
post
Post #2





Grupa: Zarejestrowani
Postów: 57
Pomógł: 18
Dołączył: 15.04.2009
Skąd: Kwidzyn

Ostrzeżenie: (0%)
-----


Podobnie jak Ty, początkowo po PHP przerzuciłem się na Ruby. Ale jakoś nie starczyło mi motywacji może czasu na naukę. Jedyne co mi po ruby pozostało to 4 książki (w tym 2 o ROR) oraz domena ruby-lang.pl (na której chciałem rozpowszechnić ten język w kraju (IMG:style_emoticons/default/smile.gif) ). Kto wie może jeszcze do niego wrócę.

Co sprawiło że zainteresowałem się Ruby? Chciałem się nauczyć nowego języka, a że chodzą słuchy że mało jest programistów ruby więc postanowiłem ugryźć ten temat. Choć przyznam, że bardzo przypadło mi do gustu to, że w Ruby wszystko jest obiektem (IMG:style_emoticons/default/smile.gif)

P.S.

Jeżeli chciałbyś prowadzić bloga o ruby to napisz mi na pw. Może razem stworzymy jakąś małą społeczność, a zarazem wrócę do nauki Ruby.

Ten post edytował dziamber 10.08.2010, 20:52:51
Go to the top of the page
+Quote Post
Zyx
post
Post #3





Grupa: Zarejestrowani
Postów: 952
Pomógł: 154
Dołączył: 20.01.2007
Skąd: /dev/oracle

Ostrzeżenie: (0%)
-----


Pewnie, tylko zaraz potem pojawiało się kilka zasadniczych pytań:

1. Jeśli nie PHP, to co? Nie czarujmy się, żaden język nie jest idealny, a jak ktoś twierdzi inaczej, jest niegodnym uwagi fanatykiem, któremu propaganda zaślepiła wzrok i który nie jest nawet godny nazywać się "programistą".

2. Co mam zrobić z prawie dziewięcioletnim bagażem doświadczenia w PHP?

3. I ile czasu zajmie mi poznanie nowego języka choćby do połowy mojej znajomości PHP?

4. Kto mi przepisze garść co fajniejszych bibliotek na ten nowy język? W myśl przysłowia "cudze chwalicie, swego nie znacie", mnóstwo programistów zdaje się nie zauważać, że od pewnego czasu PHP nie ma się czego wstydzić w tej kwestii i co więcej - takie rzeczy, jak Doctrine 2 to coś, czego inni powinni programistom PHP zazdrościć. Z bardziej przyziemnych rzeczy, po prostu odmawiam pracy z językiem, który nie będzie miał zaimplementowanego OPT albo czegoś działającego na podobnych zasadach (IMG:style_emoticons/default/smile.gif) .

5. Czy naprawdę wady PHP są aż tak poważne, by warto było migrować?

Jak sobie odpowiedziałem na te pytania, wyszło mi, że prędzej napiszę własne PHP, niż zmienię język do tworzenia aplikacji WWW (bo poza nim znam i rozwijam także znajomość innych). W części przekonań utwierdziła mnie niedługa przygoda z Rubym i "jedynym słusznym" Ruby On Rails. Flejma nie chcę wszczynać, dlatego powiem tylko, że ani jeden, ani drugi mi się wybitnie nie spodobał.

Ten post edytował Zyx 10.08.2010, 21:42:51
Go to the top of the page
+Quote Post
mrok
post
Post #4





Grupa: Zarejestrowani
Postów: 258
Pomógł: 17
Dołączył: 22.05.2007

Ostrzeżenie: (0%)
-----


Cytat
2. Co mam zrobić z prawie dziewięcioletnim bagażem doświadczenia w PHP?

Rozwijając temat - co mam zrobić z masa kodu php, który mogę w każdej chwili wykorzystać ponownie w innym projekcie? Przepisywać wszystko na nowo, żeby było ruby-way?


Osobiście średnio 2 razy w roku zaczynam pałać miłością do Pythona (bo to bo tamto), znajduję wiec jakieś małe wyzwanie w którym mogę go wykorzystać, potem wkurzam się, że piszę coś co częściowo mógłbym wziąć z wcześniej wykonanego projektu - i tak mi jakoś samo przechodzi (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
SHiP
post
Post #5





Grupa: Zarejestrowani
Postów: 697
Pomógł: 47
Dołączył: 19.12.2003
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Zgadzam się z Zyxem. Ja swego czasu myślałem o migracji w trochę innym kierunku tj. do okienek(dokładnie QT) i nawet napisałem prawie kopię kurnika(ale tylko z jedną grą) i jak już skończyłem doszedłem do wniosku, że ja się na tym po prostu nie znam, bo mimo, że wszystko działało miałem wrażenie, że jest to napisane nieelegancko, bałem się o bezpieczeństwo połączenia, działanie na różnych Windowsach etc etc. Postanowiłem więc zostać przy php. Jednak aby czasem się "zrelaksować" uciekam od tego języka w stronę JavaScript. Troszkę inna technologia oraz całkowicie inne wymagania od programisty. Gdyby jeszcze na rynku były propozycje pracy dla programistów JS to z chęcią bym się przerzucił (IMG:style_emoticons/default/winksmiley.jpg) .
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Gdyby jeszcze na rynku były propozycje pracy dla programistów JS to z chęcią bym się przerzucił

Są, ale nie w PL. (IMG:style_emoticons/default/winksmiley.jpg) I to zazwyczaj ze znajomością ExtJS (który - podobnie jak QT - jest potężnym frameworkiem).

Ale skoro już jesteśmy przy JS, to zawsze możesz pójść w stronę Titanium, czy AIR (Titanium, to platforma pozwalająca na pisanie aplikacji desktopowych w popularnych językach webowych, JS na pewno, PHP chyba też (IMG:style_emoticons/default/winksmiley.jpg) )
Go to the top of the page
+Quote Post
marcio
post
Post #7





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Ja przy PHP pozostalem nic mi w nim nie brakuje lubie go taki jaki jest.
Jak mam ochote ucze sie i kodze w Python'ie i teraz bede zaczynal C#.
Nie ma powodu dla ktorego zaczalem kodzic tez w innych jezykach poprostu z czasem samo php mi sie znudzilo (IMG:style_emoticons/default/smile.gif)

Wady wadami ale inne jezyki tez nie sa takie super ;]

Jak ktos patrzy na perspektywe pracy to w PHP jest ona nieskonczona ofert jest pelno z roznego rodzaju (IMG:style_emoticons/default/snitch.gif)
Go to the top of the page
+Quote Post
Quantum
post
Post #8





Grupa: Zarejestrowani
Postów: 450
Pomógł: 84
Dołączył: 27.11.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Cytat(Zyx)
Z bardziej przyziemnych rzeczy, po prostu odmawiam pracy z językiem, który nie będzie miał zaimplementowanego OPT albo czegoś działającego na podobnych zasadach .

System szablonów włącznie z pseudo-językiem został zaimplementowany w RoR. Fakt faktem jest to chyba jedyny framework do Ruby i jeżeli coś nam w nim nie odpowiada to nie mamy czego szukać w samym Ruby.

Cytat(Zyx)
Nie czarujmy się, żaden język nie jest idealny, a jak ktoś twierdzi inaczej, jest niegodnym uwagi fanatykiem, któremu propaganda zaślepiła wzrok i który nie jest nawet godny nazywać się "programistą".

Tak.. społeczność Rails, jest conajmniej dość agresywna w stosunku do porównujących ich język do innego, wystarczy rzucić okiem na ten plakat: szkolenie/2010/plakat_1000.jpg

Żaden język idealny nie jest, z tego co na początku udało mi się zauważyć to benchmark na jakiejś stronie porównującej języki webowe. Ruby było za PHP, lecz Ruby on Rails było już przed Symfony. Kilka dni temu znalazłem fajną stronkę, mianowicie: http://railsforphp.com/reference/. Pokazuje ona na przykładach jak używać odpowiedników funkcji/rozwiązań z PHP w Ruby/Rails.

Cytat(SHiP)
Jednak aby czasem się "zrelaksować" uciekam od tego języka w stronę JavaScript.

Pełna obiektowość, FTW ! (IMG:style_emoticons/default/biggrin.gif) W sumie to właśnie dzięki JS-owi zacząłem poszukiwania odpowiednika pod względem składni i struktury do backend-u. Większą przyjemność sprawiało mi podpinanie nowych zdarzeń pod nowy interfejs niż jego obsługę po stronie serwera.

Cytat(marcio)
Jak ktos patrzy na perspektywe pracy to w PHP jest ona nieskonczona ofert jest pelno z roznego rodzaju

Racja, racja, ale sam przyznasz, że większość ofert pracy dla programisty PHP na samym PHP się nie kończy (pomijając (x)HTML, CSS, ew. JS - bo to właśnie technologie webowe, których nie wyobrażam sobię nie znać pracując na takim stanowisku). W dodatku nie są tak dobrze opłacane jak inne bo.. "i tak znajdzie się ktoś kto przystanie na nasze warunki".
Go to the top of the page
+Quote Post
batman
post
Post #9





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Odnoszę wrażenie, że podobny temat już był (i to nie jeden raz), ale ten wydaje się być najbardziej sensowny ze wszystkich. Mam nadzieję, że taki pozostanie i będzie można go przypiąć dla potomnych. A teraz do rzeczy.

Cytat(Zyx @ 10.08.2010, 22:41:55 ) *
2. Co mam zrobić z prawie dziewięcioletnim bagażem doświadczenia w PHP?
Wykorzystać w innym języku. Jeśli przesiadka odbywa się na inną technologię webową, to nie jest to aż tak trudne jak to się wydaje.

Cytat(Zyx @ 10.08.2010, 22:41:55 ) *
3. I ile czasu zajmie mi poznanie nowego języka choćby do połowy mojej znajomości PHP?
Dużo. Dlatego też podczas zmiany języka/technologii należy wziąć pod uwagę inne aspekty, takie jak kasa. Pracując jako programista PHP od X lat można wyrobić sobie pewną markę oraz stanowisko. Im dłużej się pracuje w jednym miejscu, tym więcej się zarabia. Przejście do zupełnie innego świata oznacza obniżenie zarobków oraz budowanie wszystkiego od nowa. Im człowiek starszy, tym mniej mu się chce takie coś zrobić.

Cytat(Zyx @ 10.08.2010, 22:41:55 ) *
4. Kto mi przepisze garść co fajniejszych bibliotek na ten nowy język? W myśl przysłowia "cudze chwalicie, swego nie znacie", mnóstwo programistów zdaje się nie zauważać, że od pewnego czasu PHP nie ma się czego wstydzić w tej kwestii i co więcej - takie rzeczy, jak Doctrine 2 to coś, czego inni powinni programistom PHP zazdrościć. Z bardziej przyziemnych rzeczy, po prostu odmawiam pracy z językiem, który nie będzie miał zaimplementowanego OPT albo czegoś działającego na podobnych zasadach (IMG:style_emoticons/default/smile.gif) .
Ale po co przepisywać? Wystarczy znaleźć zamienniki. A Doctrine jest kopią Hibernate. Z tą zazdrością to bym się wstrzymał. Entity Framework z .NET bije Doctrine na głowę (IMG:style_emoticons/default/smile.gif)

Cytat(Zyx @ 10.08.2010, 22:41:55 ) *
5. Czy naprawdę wady PHP są aż tak poważne, by warto było migrować?
To zależy. Jeśli ktoś chce tworzyć tylko strony www, PHP będzie dla niego najlepszym językiem.

Cytat(SHiP @ 10.08.2010, 23:08:00 ) *
Gdyby jeszcze na rynku były propozycje pracy dla programistów JS to z chęcią bym się przerzucił (IMG:style_emoticons/default/winksmiley.jpg) .

Cytat(erix @ 10.08.2010, 23:09:46 ) *
Są, ale nie w PL. (IMG:style_emoticons/default/winksmiley.jpg) I to zazwyczaj ze znajomością ExtJS (który - podobnie jak QT - jest potężnym frameworkiem).
Są i to w Polsce. Sam miałem okazję brać udział w rekrutacji na stanowisko programista JS (czysty JS bez żadnych zbędnych dodatków). Nie udało się, poległem na 3 etapie.

Cytat(erix @ 10.08.2010, 23:09:46 ) *
Ale skoro już jesteśmy przy JS, to zawsze możesz pójść w stronę Titanium, czy AIR (Titanium, to platforma pozwalająca na pisanie aplikacji desktopowych w popularnych językach webowych, JS na pewno, PHP chyba też (IMG:style_emoticons/default/winksmiley.jpg) )
Wprawdzie można pisać aplikacje AIR w Javascript, jednak daleko im do aplikacji pisanych w Actioscript. Chociażby dlatego, że w JS (jeszcze) nie ma takiego cuda jak E4X.

Jeśli chodzi o przesiadkę, to od pewnego czasu zgłębiam tajniki Silverlight. Do tego siłą rzeczy doszedł C# (poznawałem go wcześniej, gdy .NET miał numerek 2, ale jakoś wiedza wyparowała). Obok Silverlight zdarza mi się grzebnąć coś w ASP.NET MVC i w tym przypadku z przesiadką nie byłoby żadnego problemu. Jeśli kiedykolwiek robiło się coś w dowolnym frameworku, który miał z MVC coś wspólnego, przesiadka na ASP nie sprawi większego problemu. Zasady są takie same, różni się jedynie język.

Z przesiadką na inną technologię wiąże się jeden dosyć poważny problem, o którym już wspomniałem - mniejsze zarobki (przynajmniej na start) oraz konieczność poznawania nowej technologii od podstaw. W przypadku Silverlighta jest to zupełnie inny model programowania. W PHP pisze się wszystko sekwencyjne, w SL programowanie oparte jest o zdarzenia. W PHP trzeba korzystać z różnych protez w warstwie prezentacji, w SL mamy XAML. PHP i ASP.NET to dwa zupełnie różne światy jeśli chodzi o serwer, na którym uruchamiane są aplikacje. Proces wdrażania aplikacji, dostęp do danych, konta użytkowników i ich prawa dostępu, ".htaccess" - to wszystko (a nawet więcej) trzeba poznawać na nowo i ktoś kto posiada dużą wiedzę w jednej dziedzinie, może czuć się zniechęcony faktem, że musi zaczynać od nowa. Wprawdzie łatwiej będzie mu tą wiedzę przyswoić, jednak jej ogrom może przytłaczać.
Go to the top of the page
+Quote Post
erix
post
Post #10





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Hmm, z nowymi technologiami raczej nie byłoby takiego problemu, gdyby nie fakt, że na hostingach współdzielonych nie ma po prostu do nich dostępu, więc kolejni adepci mają ograniczone pole manewru do nauki...

Zresztą, skoro update z PHP 5.2 na 5.3 stanowi problem, to o czym my rozmawiamy...?
Go to the top of the page
+Quote Post
Quantum
post
Post #11





Grupa: Zarejestrowani
Postów: 450
Pomógł: 84
Dołączył: 27.11.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Znalazłem porównanie frameworków Symfony, Ruby on Rails i Django pod względem wydajności:

http://oldwiki.rubyonrails.org/rails/pages...ork+Performance

Django > RoR > Symfony

Bardzo zależy mi na skalowalności aplikacji. O tym jak szybko się aplikacje w RoR pisze to już się przekonałem przez wiele screencastów. Nie chciałbym jednak na samym starcie witryny iść w niesamowite koszta utrzymania x-mongrelów. Przejście z jednego języka na drugi nie może być dla mnie zbyt wysoką stratą wydajności z uwagi na fakt, że PHP i tak do "błyskawic" nie należy.

Z tego co wiem na Django oparte jest grono.net, znacie inne aplikacje narażone na podobny traffic oparte na RoR/Symfony ?
Go to the top of the page
+Quote Post
erix
post
Post #12





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Przejście z jednego języka na drugi nie może być dla mnie zbyt wysoką stratą wydajności z uwagi na fakt, że PHP i tak do "błyskawic" nie należy.

Trzeba tutaj wspomnieć przykład Wykopu. Pierwotnie napisane w Ruby, jednak potem przepisali... do PHP. (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
Quantum
post
Post #13





Grupa: Zarejestrowani
Postów: 450
Pomógł: 84
Dołączył: 27.11.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Cytat(erix)
Trzeba tutaj wspomnieć przykład Wykopu. Pierwotnie napisane w Ruby, jednak potem przepisali... do PHP.


Tu nie chodziło o wydajność, a o "siłe roboczą". Na ofertę pracy dla programisty PHP nadal zgłosi się kilka razy więcej potencjalnych koderów niż dla Ruby.
Go to the top of the page
+Quote Post
SHiP
post
Post #14





Grupa: Zarejestrowani
Postów: 697
Pomógł: 47
Dołączył: 19.12.2003
Skąd: Lublin

Ostrzeżenie: (0%)
-----


@erix: a to nie było tak, że wykop był w php ale przepisali go do Ruby. Później się coś im nie pasowało i wrócili do php?
Go to the top of the page
+Quote Post
Quantum
post
Post #15





Grupa: Zarejestrowani
Postów: 450
Pomógł: 84
Dołączył: 27.11.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Cytat(SHiP)
@erix: a to nie było tak, że wykop był w php ale przepisali go do Ruby. Później się coś im nie pasowało i wrócili do php?

http://antyweb.pl/krotka-rozmowa-z-wlascicielem-wykoppl/

Mam nadzieję, że rozwiałem wszelkie wątpliwości (IMG:style_emoticons/default/biggrin.gif)

Co do hostingów to sprawa wygląda o niebo lepiej niż kilka lat temu, generalnie tam gdzie jest Ruby jest i przeważnie Python wraz z obsługą ich frameworków. Na pierwszy rzut oka to vipserv.org, megiteam.pl, vpsinn.pl, slicehost.com, cal.pl, newrails.pl mają nawet ciekawe oferty.
Go to the top of the page
+Quote Post
mike
post
Post #16





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Cytat(Quantum @ 12.08.2010, 19:40:24 ) *
Znalazłem porównanie frameworków Symfony, Ruby on Rails i Django pod względem wydajności:

http://oldwiki.rubyonrails.org/rails/pages...ork+Performance

Django > RoR > Symfony
To jeszcze poszukaj daty publikacji tego tekstu (IMG:style_emoticons/default/tongue.gif) i zobacz której wersji (0.7.1587) Symfony użyto w testach.

Co do zmian języka to Java.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.09.2025 - 18:20