• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Python vs PHP vs Java [ankieta]

Object Storage Arubacloud
0 głosów
3,354 wizyt
pytanie zadane 27 lipca 2017 w Rozwój zawodowy, nauka, praca przez Blue Obywatel (1,180 p.)

Witam, zastanawiam się nad wyborem języka do nauki i nie wiem, który wybrać.

1) Słyszałem opinie, że Python to przyszłość, że jest łatwiejszy do nauki dla początkujących, ale też są opinie, że ten język jest... śmieszny z powodu składni, szybkości i niektórzy nie traktują go poważnie.

2) Od kilku lat po internecie krążą opinie, że PHP wymiera, ale jakoś tego nie widać. To znaczy, tak myślę, obejrzałem ostatnio ten filmik https://www.youtube.com/watch?v=K3-t_EHRL5w

3) Myślę też nad Javą i Springiem, trochę już umiem, ale materiałów na YouTubie jest mniej niż do PHP i nie są one tak... dobre, przez co nauka mi idzie wolno, nawet bardzo wolno. No chyba że to ja nie umiem szukać albo się po prostu do tego nie nadaję, chociaż sama Java mi się podoba. Polubiłem kanał TraversyMedia i chciałbym się dalej z niego uczyć PHP i frameworków, ale nie wiem, czy warto.

Co sądzicie? Z góry dziękuję za każde odpowiedzi.

Aha, ankieta dotyczy wyłącznie tego, co WY byście wybrali, a nie tego, co ja powinienem.

Możliwe odpowiedzi:
Python (3 głosów, 16%)
Java (4 głosów, 21%)
PHP (12 głosów, 63%)
2
komentarz 27 lipca 2017 przez Assasz Nałogowiec (30,460 p.)
PHP wymiera, dobre sobie ;)
komentarz 27 lipca 2017 przez HaKIM Szeryf (87,590 p.)

Nah... IMO podałeś za mało informacji aby stwierdzić który język może okazać się dla Ciebie interesującym.

Tak czy siak; to tylko język.

komentarz 28 lipca 2017 przez Blue Obywatel (1,180 p.)
edycja 28 lipca 2017 przez Blue
HaKIM, wydaje mi się, że najbardziej pociąga mnie Java. Trochę już pisałem w JavieFX i naprawdę polubiłem ją. Ale z drugiej strony jest PHP, Node, które też wyglądają zachęcająco. Jeszcze jedno pytanie: czy ciężko jest znaleźć pracę w PHP? Czy nie jest przypadkiem tak, że skoro dużo ludzi zna ten język, to trzeba się liczyć z dużą konkurencją? Może właśnie dlatego ofert związanych z Javą i JS jest więcej.

Aha, i jak to jest w średnich miastach? Łatwiej znaleźć pracę w PHP, JS, czy Javie? Nie chodzi mi o to, żeby pójść najłatwiejszą drogą, po prostu pytam.
komentarz 28 lipca 2017 przez HaKIM Szeryf (87,590 p.)

Jeszcze jedno pytanie: czy ciężko jest znaleźć pracę w PHP? Czy nie jest przypadkiem tak, że skoro dużo ludzi zna ten język, to trzeba się liczyć z dużą konkurencją?

Powiem tak: Jeśli będziesz naprawdę dobry w programowaniu i umiejętnościach miękkich to dobrze płatną pracę znajdziesz i łatwo i we wszystkich wymienionych językach przez Ciebie. Byle klepaczy kodu po studiach jest od zatrzęsienia - Brak nam programistów którzy stale się rozwijają.

Posłuchaj tej prezentacji (Obrazki tutaj akurat nie są aż tak ważne), zainteresuje Cię:

https://www.youtube.com/watch?v=1OmmeShKxpM&feature=share

Czy nie jest przypadkiem tak, że skoro dużo ludzi zna ten język, to trzeba się liczyć z dużą konkurencją? Może właśnie dlatego ofert związanych z Javą i JS jest więcej.

Tak nawiasem mówiąć to osób które „znają” JS jest od ch*ja (Ciężko mi przytoczyć inną skalę) więcej niż osób „znających” PHP.

W IT jest brak profesjonalistów, nie Januszów Kodu którzy ogarnęli HTML (Oczywiście z W3Schools cheeky (Zamiast tego zalecana jest nauka z MDN)), Bootstrap i JS na poziomie alertów w pętli.

IMHO, rób w języku w którym programowanie sprawia Ci największą frajdę. Wpływa to na Twoją wydajność, nie tylko w pisaniu kodu; Nauka nowych bibliotek, framework'ów i innych idzie w parze.

 

Raz jeszcze polecam Ci obejrzeć wykład, do którego podałem link wyżej i... przy okazji... zapoznaj się z tym:

https://www.youtube.com/watch?v=odrean5ShZQ

Trochę o tym w jaki sposób możesz być przez pracodawcę wyceniany (Nie mówię konkretnie o sposobie Jakuba a całości).

komentarz 28 lipca 2017 przez Blue Obywatel (1,180 p.)
Naprawdę dziękuję. Chyba najbardziej motywujący komentarz, jaki czytałem. Biorę się za naukę.
komentarz 7 sierpnia 2017 przez Raoul Zahary Duke Nowicjusz (140 p.)
Pythona nie traktują poważnie - hyhyhyhy

3 odpowiedzi

+4 głosów
odpowiedź 27 lipca 2017 przez CenterPL Pasjonat (19,070 p.)
1. Jednemu po prostu python będzie pasował, drugiemu nie. Mi nie pasuje, bo nie ma klamerek. Ogólnie jego kod jest, dla mnie rzecz jasna, mniej czytelny. W związku z tym pozostałaby mi Java i PHP i tak się akurat składa, że obu używam - w PHP piszę backend/api, w Javie pisze aplikacje na androida.

2. Nie umiera, ma się dobrze i się rozwija. Każdy kto mówi, że PHP umiera powinien wisieć. Rozumiem, że jeszcze niedawno można było się z niego śmiać, cisnąc bekę, jak zwał tak zwał. Obecnie nie ma wielu rzeczy, do których można by się doczepić.

3. PHP ma mniejszy prób wejścia - instalujesz apache i działasz. Może jest nieco prostszy? Nie wiem. Oczywiście jako pehapowiec polecę pehapa ;)
komentarz 27 lipca 2017 przez Blue Obywatel (1,180 p.)
Dziękuję. Właśnie coś podobnego chciałbym robić.
+2 głosów
odpowiedź 27 lipca 2017 przez CzikaCarry Szeryf (75,340 p.)

Co się wymierania PHP'a, to nie jest tak, że PHP wymiera, nie jest tak, że spadło na ziemię coś takiego jak Node.JS czy Django i nagle dinozaur zwany PHP'em umiera. Po prostu inne języki i frameworki backendowe zyskują na popularności (python (django, flask etc), Ruby (RoR), JavaScript (node.JS), C# (ASP.NET hihihi))

Oczywiście zgodzę się z tym, że PHP jest trochę "wykastrowany" z niektórych rzeczy które mieć powinien każdy porządny język programowania (generyka, pełne OOP - w PHP brakuje paru rzeczy, i wiele, wiele innych), ale przewaga PHP'a nad innymi językami backendowymi polega na kilku rzeczach:

  • Niski próg wejścia - postanawiasz, że napiszesz coś w PHP, pobierasz Apache, nginx czy inny serwer HTTP i ciśniesz. Trwa to w porywach do 5 minut, a instalacja rzeczy do Ruby, co wiąże się z instalowaniem RoR, bo jedno bez drugiego obecnie tak na prawdę nie istnieje, trwa zdecydowanie dłużej i jest o wiele bardziej skomplikowane dla nowicjuszy w programowaniu?
  • Ma świetną dokumentację, świetną społeczność, świetne frameworki i jeszcze więcej świetnych projektów Open source
  • Ma mało skomplikowaną składnię w porównaniu do Ruby czy JS (comandeer nie bijlaugh)
  • Nie jest w pełni obiektowa (tzn nie wymusza na nas od początku pisać obiektowo, co jest dobre, gdy dopiero raczkujemy w programowaniu). Z jednej strony może się to wydawać plusem ujemnym, ale plus dodatni jest taki, że Stara miłość nie rdzewieje ​​​​​​laugh​​​​
komentarz 27 lipca 2017 przez CzikaCarry Szeryf (75,340 p.)
edycja 27 lipca 2017 przez CzikaCarry
1. Robić klasę która dziedziczy po 30 innych to jeszcze gorzej, w dodatku zajmie to parę linijek. Tym wielkim monolitem była klasa z zapytaniami (wiem, doctrine etc, ale optymalizacja lub jeszcze nieznajomość doctrine etc), chciałem podzielić klasę na pliki tematycznie z zapytaniami, aby jakoś sensowne opracować strukturę plików

2. dobrze, jeśli operacje matematyczne Ci nie wystarczają można zrobić np. Merge dwóch list: $list1=+$list2

3. Przecież typ można , definiować, opisać, nawet w PHPDoc'u, to wszystko zależy od inwencji programisty / twórcy silnika PHP'a oraz IDE lub po prostu programisty czytającego kod. Co do łamania zasad enkapsulacji to nie dostrzegam tutaj tego zjawiska. Tworzenie tego przy pomocy magicznych metod get i set faktycznie jest problematyczne i wygląda brzydko, wprowadza bałagan, dlatego tak wytykam te gettery i settery. Bardzo podobny system do tego co tu opisałem (jak nie identyczny) jest w C# i jest to po prostu bardzo czytelne, wszyscy z tego korzystają.
komentarz 27 lipca 2017 przez Boshi VIP (100,240 p.)
1 W phpie masz dziedziczenie jedno klasowe, więc nie wiem o czym piszesz. Kompletnie nie widzę sensu tego partiala. Imo rozbicie monolitu na kawałki po to by kompilator skleil to w całość... no chyba, że ktoś pracuje nad systemami gdzie każda klasa ma po 10-100k lini, ale to są raczej przypadki szczególne.. patrz windows itd

2 równie dobrze mogę zrobić array_merage(arr, arr), mam to samo.

3 No tak, bo przecież phpDoc > hinta, zwłaszcza w takim c# czy tam javie. Zero kontroli nad tymi setterami. Równie dobrze, moża dać publiczny dostęp i wpisać w właściwość dane, efekt ten sam.

Mam wrażenie, że  czepiasz się bardzo na siłę... ja rozumiem, że jak by to był php 4 gdzie nie było np modyfikatorów dostępu, klas abstrakcyjnych bodajże i wielu innych rzeczy, ale Ty się czepiasz, że tak powiem bzdur.

jedyne, ale to już w kontekście samego php-a to brakuje mi list z javy.
komentarz 27 lipca 2017 przez CzikaCarry Szeryf (75,340 p.)

1. Potrzeba jest matką wynalazku, jako, że PHP nie udostępnia takiego czegoś to było trzeba to obejść..:

Class Class1{}
Class Class2 extends Class1{}
Class Class3 extends Class 2{}

Już wytłumaczyłem dlaczego chciałem to rozbić na wiele plików: dla czytelności...

2. Równie dobrze mogę tak zrobić, ale jest to bardziej intuicyjne. Równie dobrze też możesz pisać zapytania w czystym SQL zamiast używać doctrine i też wyjdzie na to samo, albo i nawet lepiej, bo performance lepszy :)

3. Nie do końca rozumiem, jak to brak kontroli? Przecież to tak jakby to zastąpić metoda setProperty / getProperty, tylko czytelniej i ładniej.

Mam wrażenie, że  czepiasz się bardzo na siłę... (...) ale Ty się czepiasz, że tak powiem bzdur. 

Oczywiście, nie są to zmiany jak w PHP4 -> 5, ale na myślę, że jeśli panowie programiści silnika PHP potrafili zaprogramować pętle aby wykonała kod w środku to potrafią też (zagaduję / obstawiam) wykonać kod w środku settera. Niby mało przydatne rzeczy, ale według mnie bardziej przydatne niż jakieś spaceship operatory czy inne ?? które wprowadzili w PHP7 (nie mówię że PHP7 nie wprowadziło nic dobrego - performance o wiele lepszy a poza tym typy skalarne j deklaracja typu zwracanego :D)

komentarz 12 sierpnia 2017 przez jpacanowski VIP (101,940 p.)

Niski próg wejścia

Cóż za argument... Wybierać jeden język zamiast innego tylko dlatego, bo postawienie środowiska jest łatwiejsze? "Programuję w języku X bo postawienie środowiska trwa 5 minut".

Ma świetną dokumentację, świetną społeczność

Free Pascal też, Ruby też, Python też...

Nie jest w pełni obiektowa (tzn nie wymusza na nas od początku pisać obiektowo

W końcu jakaś zaleta języka PHP którą wymieniłeś i chyba jedyna. Jak widzę opakowane w 10 linii kodu Hello World to szlag mnie trafia, ale nie z powodu, że tyle trzeba napisać, ale z powodu głupoty "OOP everywhere".

Napisz jeszcze raz taką argumentację odnośnie PHP, ale w oparciu o PHP7 i jego szybszy silnik.

Oczywiście jestem zwolennikiem PHP.

komentarz 12 sierpnia 2017 przez CzikaCarry Szeryf (75,340 p.)

Niski próg wejścia

Cóż za argument... Wybierać jeden język zamiast innego tylko dlatego, bo postawienie środowiska jest łatwiejsze? "Programuję w języku X bo postawienie środowiska trwa 5 minut".

 To jest sensowny argument, tylko może źle mnie zrozumiałeś. Obstawiam, że więcej osób korzysta z PHP niż z Ruby nie dla tego, że np. PHP może być lepsze. Owszem, może, ale według mnie różnica wynika z tego, że więcej osób w ogóle spróbowało pisać w PHP niż w Ruby ponieważ próg wejścia jest niski. Jeśli ktoś chce się przekonać, czy język będzie dla niego dobry musi w nim coś napisać, ale wiele osób jest leniwych lub zielonych w rzeczach IT, a takim osobom bym nie polecał Ruby bo się tylko zdenerwują przy konfiguracji środowiska :). Oczywiście są jeszcze bardziej skrajne przypadki. Zaletą jest to, że nie trzeba mieć Mac'a aby pisać w PHP, w przeciwieństwie do Swifta*.

Ma świetną dokumentację, świetną społeczność

Free Pascal też, Ruby też, Python też...

Bardzo fajnie, wszyscy powinniśmy się z tego powodu cieszyć. Niestety takich rzeczy nie możemy powiedziec np. O języku R 

*Chodzi o kompilację

+1 głos
odpowiedź 27 lipca 2017 przez ForeverFriendzone Dyskutant (7,520 p.)
Wszystko zależy w jakim kierunku chciałbyś pójść. Ja na przykład uczyłem się prawie rok Pythona i ogarnąłem podstawę, ale zupełnie nie wiedziałem co dalej- jedyną ścieżką wydawało się Django ale po trzymiesięcznej nauce odpuściłem- nie ma to przyszłości ( pracodawcy nie poszukują ludzi zajmujących się Django, mało hostingów go obsługuje i są znacznie lepsze technologie). Z tego co słyszałem sprawdza się z przetwarzaniem danych- bazy danych i tam ma główne zastosowanie. Mówią też, że można tworzyć programy desktopowe- ale to też na dłuższą metę okazuje się złym pomysłem, bo jednak C++ jest zdecydowanie do tego lepsze. Podsumowując nie żałuję, że się go uczyłem gdyż język to tylko narzędzie i w zasadzie każdą nową technologię łatwo mi przyswoić, ale patrząc wstecz nie okazał się niczym świetnym dla mnie (+ za prostą składnię). Tak jak pisałem na początku musisz zastanowić się czy chciałbyś pójść w stronę weba, dekstopa czy może aplikacje mobilne. Co do PHP słyszałem, że wersja 7 zrobiła przełom jeżeli chodzi o wydajność, jest też powszechnym językiem i każdy hosting go wspiera.
1
komentarz 27 lipca 2017 przez adrian17 Ekspert (344,860 p.)

jedyną ścieżką wydawało się Django

Data science w Pythonie jest duże i rośnie. Nie wspominając o "zwykłych" zastosowaniach backendowych nie używających Django.

pracodawcy nie poszukują ludzi zajmujących się Django

Na targach pracy na PW widziałem go więcej niż PHPa :P

mało hostingów go obsługuje

Statyczne/PHPowe hostingi nie obsługują - ale z takich i tak firmy nie korzystają; prędzej AWS/inne VPSy/własne serwery.

bo jednak C++ jest zdecydowanie do tego lepsze

C++ jest do tego słabe, w porównaniu z C#/Javą.

Z resztą się zgadzam :)

Podobne pytania

+1 głos
2 odpowiedzi 777 wizyt
0 głosów
2 odpowiedzi 721 wizyt
pytanie zadane 19 grudnia 2018 w Rozwój zawodowy, nauka, praca przez TaskerPEW Użytkownik (510 p.)
0 głosów
2 odpowiedzi 3,439 wizyt
pytanie zadane 24 maja 2017 w Rozwój zawodowy, nauka, praca przez devnull Nowicjusz (120 p.)

92,575 zapytań

141,424 odpowiedzi

319,649 komentarzy

61,960 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...