Czy PHP w 2020r to dobry pomysł na Backend, czy może node.js?

0

Witajcie.
Aktualnie bawię się językami pod Frontend,czyli HTML,CSS oraz JavaScript.I tutaj treść wizualną mam załatwioną strony,lecz jest jeszcze druga sprawa,czyli Backend strony czy aplikacji webowej.Mam dylemat,bo niby mogę wykorzystać PHP,Node.js czy też inne języki takie jak Java,C# czy Python.Z tego co mi wiadomo to w Backendzie króluje Java,PHP oraz node.js.
Wiem jaka jest sytuacja PHP na rynku czy forach.Jedni hejtują,drudzy doceniają,no klasyka jednym słowem :D .Wiem też że przykładowo Java czy node.js ma większy próg wejścia w porównaniu do PHP.Chcę jednym słowem działać sobie w Frontend i też działać jako Backend dla swych stron internetowych,które w przyszłości będę tworzył na poziomie wartym opowiadania.Na pewno dużo część ludzi powie żeby wybrać node.js czy Javę,ale sam PHP mnie ciekawi,oferty pracy już nie takie ogromne jak Java,stąd wątpliwości.Najważniejsza kwestia to praca u mnie.Na ten moment mój celownik jest na Frontend.Lecz chcę także coś z backendu robić dla swych stron bo to także lubię.Ogólnie pisanie logiki oraz wizualne tworzenie mnie cieszy.Dodam też że co do PHP to mam pełny internet do dyspozycji,gdyż stary język=bogate fora,rozwiązania,poradniki,zaś node.js pomału rośnie w siłę i na pewno zdecydowanie prościej jest nauczyć się PHP niż node.
Tak więc? Co sądzicie,co mi doradzicie w tej sprawie.

2

Jeśli chcesz się specjalizować we froncie, to szansę że ogarniesz backend na poziomie umożliwiającym komercyjną pracę są minimalne. Backend ma znacznie większy próg wejścia od frontu. Jeśli ktoś jest fullstackiem to raczej jest to backendowiec z dobrą znajomością frontu niż odwrotnie. Tak przynajmniej wynika z moich obserwacji, bo na pewno są wyjątki.
Dla frontendowca najsensowniejszy wydaje się node.js

2

Odpowiadając na pytanie z ankiety to "Tak", PHP w 2020 roku to nadal dobry pomysł. Materiałów do nauki jest dużo, bardzo fajnie opisane frameworki, społeczność również całkiem spora. Natywnie działanie jest synchroniczne, co ułatwia zrozumienie. W twoim przypadku wybrałbym jednak Node.js. Jeżeli bardziej chcesz skupić się na frontendzie, to jeden język będzie atutem. Oczywiście nic nie stoi na przeszkodzie aby pogodzić frontowy js z backendowym php-em. Jeżeli masz tylko chęci i czas to śmiało :)

0

PHP to nigdy nie był i nie jest dobry wybór. Node.js to też rak, ale jak frontend to nie ma ucieczki.

Wybór jak między dżumą i cholerą.

0

Jak robisz frontend to nie ma co kombinować. Najprościej się wbijesz w Node.js. Niby backend i frontend w JS to niemal dwie różne rzeczy, ale przynajmniej język i niektóre biblioteki się powtarzają.

0

PHP to przeszłość, wybierz coś fancy and sexy.

0

Programowanie w PHP jest jak rzeźbienie w gównie. 99% ludzi siedziących w tym języku nie ma pojęcia co robi. Z czołowych postaci tego środowiska szanuję tylko Nikica i Rasmusa, który otwarcie mówi, że nie potrafi programować.

6
Mózg napisał(a):

Programowanie w PHP jest jak rzeźbienie w gównie. 99% ludzi siedziących w tym języku nie ma pojęcia co robi. Z czołowych postaci tego środowiska szanuję tylko Nikica i Rasmusa, który otwarcie mówi, że nie potrafi programować.

Ale kilka procent wie co robi i uważa, że to dobre rozwiązanie ( ja należę do tej grupy ). W wielu przypadkach lepsze niż NodeJs, Java, Python itp ... Bo ... Z automatu działa na każdym serwerze, z palcem w d... znajdziesz taniego programistę do rozwoju.
PHP to łatwy język a zarazem mądrze używany niczym nie ustępuje innym rozwiązaniom. Polecam początkującym tak samo jak czystego JS.

Bowiem wszystko zależy od zastosowania, potrzeb i umiejętności samego stosującego.

Mózg napisał(a):

Programowanie w PHP jest jak rzeźbienie w gównie. 99%

Jak sam sobie ch...owo napiszesz kod boś pacan to potem trzeba rzeźbić w gó..ie ...

3

Programowanie w PHP jest jak rzeźbienie w gównie. 99% ludzi siedziących w tym języku nie ma pojęcia co robi. Z czołowych postaci tego środowiska szanuję tylko Nikica i Rasmusa, który otwarcie mówi, że nie potrafi programować.

Większość projektów, to rzeźbienie w gównie, głównie z winy programistów, bo nie znają się dobrze na tym co robią i z winy pracodawców, bo nie wiedzą, co chcą osiągnąć, a to już niezależne od wybranego języka.

Ale fakt, PHP pozwala zrobić jeszcze większe g**no niż w innych językach, (no może poza node.js)

0

Zapomnieliście, że Node.js to trup? Tylko Deno. Trololo.

0

To co ogólnie mi polecacie.Tak ostatecznie.Bo teraz to mam mętlik w głowie totalny.Napiszcie w komentarzu poniżej.

2
niewiem12qw napisał(a):

To co ogólnie mi polecacie.Tak ostatecznie.Bo teraz to mam mętlik w głowie totalny.Napiszcie w komentarzu poniżej.

Sam się prosiłeś o mętlik. Szczególnie, że wątek założyłeś w dziale PHP i już na starcie ograniczyłeś widownię.

Tak jest zawsze, zlecą się pehapowcy to polecą PHP, javowcy Javę, nołdowcy JS, eliksirowcy Phoeniksa, tylko kolesie od Prologa raczej Prologa nie polecą, bo mają odrobinę rozsądku i wiedzą, że nikt tego w webie nie używa.

Co wybierzesz zadziała. Możesz sobie napisać aplikację od TODO w kilku językach/frameworkach i samemu zdecydować, co wolisz.

0

Odpowiedź do komentarza, bo tego może być trochę więcej.

tl;dr; kolega chce się skupić na frontendzie na razie i pytał o polecenia czegoś na front

React.js - Biblioteka od FB. Dosyć minimalistyczny (przynajmniej na zewnątrz, bo w środku się dzieją cuda) i elastyczny. Obecnie jest pewnie z miliard istniejących kombinacji narzędzi do tworzenia aplikacji w React. Wydaje się, że obecnie najpopularniejszy.

Angular - To natomiast produkt od Google. Nie mylić z Angular.js/Angular1, który jest praktycznie czymś zupełnie innym. Battery included, wszystkie najpotrzebniejsze rzeczy już są i też wiele narzuca. Domyślnie wspiera TypeScript (nawet nie wiem czy da się pisać w JS). Również popularny, ale mniej.

Vue - Niewiele w tym pisałem. Sprawia wrażenie raczej biblioteki nastawionej na prostotę. Informacja na pewno niekompletna, bo jak mówiłem, niewiele w tym pisałem. Najmniej popularny (z tej tróki rzecz jasna, bo jest znacznie więcej), ale oferty jednak jakieś są.

Wybierz sobie. Osobiście nie mam żadnego faworyta. Jeśli ktoś ma coś do dodania to możemy zrobić pracę zbiorowa i dopiszę uwagi z komentarzy w edycie.

1
hadwao napisał(a):

Jeśli chcesz się specjalizować we froncie, to szansę że ogarniesz backend na poziomie umożliwiającym komercyjną pracę są minimalne. Backend ma znacznie większy próg wejścia od frontu. Jeśli ktoś jest fullstackiem to raczej jest to backendowiec z dobrą znajomością frontu niż odwrotnie. Tak przynajmniej wynika z moich obserwacji, bo na pewno są wyjątki.

Backendowcy rzadko kiedy znają dobrze frontend, prędzej jak barbarzyńcy będą pchać na chama złe praktyki czy przyzwyczajenia z języków backendowych, które znają.

3

Według mnie PHP jest dobrym pomysłem. Dlaczego?

  • Duża ilość materiałów do nauki, masa wideoporadników na yt + blogi
  • Niski próg wejścia
  • Świetna społeczność
  • Frameworki znacząco przyśpieszające pracę

Faktem jest, że PHP jest mocno krytykowane. Ze swojej strony dodam, że ta krytyka jest w moim odczuciu niesłuszna. PHP 7 jest na prawdę ok.
W tym artykule jest to w dobry sposób opisane: https://www.quora.com/Is-PHP-dead-What-is-the-job-outlook-and-future-of-PHP-in-the-next-five-years

2
NIEPROGRAMISTA_ napisał(a):

(...)
Faktem jest, że PHP jest mocno krytykowane. Ze swojej strony dodam, że ta krytyka jest w moim odczuciu niesłuszna. PHP 7 jest na prawdę ok.

No fajnie, ale najpierw trzeba się dostać do firmy gdzie używają >7.0. Z moich obserwacji wynika, że większość projektów wciąż ciągnie 5.x, a w tym to nawet ja naczelny szambo-nurek zespołu nie chciałbym pisać.

4

@Dregorio: chyba trochę przesadzasz. PHP to nie Java i tutaj większość projektów ma relatywnie krótki cykl życia. W ostatnich 2-3 latach z php 5.6 miałem do czynienia w słownie jednym projekcie utrzymaniowym, który ma już ponad 10 lat i nie da się go upgradować wyżej niż 5.6 - na szczęście właśnie we wrześniu projekt kończy swój żywot, więc już całkowicie pożegnam się z 5.6.
Obecnie na co dzień pracuję w wersji 7.2 i szykuje się upgrade do 7.3, jeden projekt utrzymaniowy w 7.0, ale da równowagi jeden w 7.4. Miałem właśnie pisać koledze, wyżej że podlinkował artykuł sprzed 4 lat i sporo poszło do przodu i 7.0, które tam jest wychwalane, to już takie trochę legacy. PHP 5.x to już jest tylko jakieś ogromne legacy. Swoją drogą jedną z zalet programowania w PHP jest właśnie to, że pracuje się z w miarę nowym stackiem. Dla przykładu w Magento backend jest na nowszej wersji stacku niż frontend ;-)

Co do samych zmian w PHP, to uważam że wśród języków interpretowanych to jest obecnie najlepszy język do webówki. Ma bardzo fajne OOP, opcję strict_type która pozwala pisać dość rygorystyczny kod (typowanie parametrów funkcji, typowanie zwracanych wartości od 7.4 nawet typowanie zmiennych klasowych), bardzo wysoka wydajność i dojrzały ekosystem z dużą ilością sprawdzonych i nieźle napisanych rozwiązań. Oczywiście jest też ten drugi świat PHP gdzieś tam w piwnicy agencji interaktywnej w Sosnowcu, gdzie nadal robi się stronki za tysiaka, ale to już nie wina języka, że ma niski próg wejścia.

W PHP da się obecnie pisać ładny kod, zgody z nowoczesnymi standardami. Większym problemem niż sam język jest brak wykwalifikowanych programistów i tu upatruję głównej słabości PHP obecnie. Niemniej średniej wielkości biznes (czyli między innymi największe polskie ecommercy) widzą ten potencjał i korzystają z PHP, to już nie są małe projekty tylko typowy enterprise z licznymi integracjami itp.

Oczywiście nie mówię, że PHP to język idealny, bo swoje za uszami ma, ale i tak jest całkiem spoko i przyjemnie się pisze w nowych wersjach.

2

Zanim spotkałem PHP w pracy miałem do tej technologii resztki szacunku.

Jak spotkałem w pracy to ten szacunek utraciłem. I mówię tu z perspektywy pracy z website który pewnie każdy tutaj zna. Całe szczęście mogłem się trzymać bardziej z boku.

2

Wziąwszy pod uwagę, kto może zadawać takie pytanie (nowicjusz), to radzę nodejs.
Radzę dlatego, że js/ts ma szersze zastosowanie. Ucząc się go, więcej się zyskuje, natomiast jakościowo są to dość podobne środowiska. Raczej nie są one "enterprise", ale takie swojskie.
Chociaż w pracy pracuję jako fullstack .net/react/react-native, to powiem szczerze, że jak coś piszę prywatnie, to zawsze wybieram node, a dlaczego?

Bo mam absolutnie spójną warstwę modelu, którą dzielę w jednym języku między dwiema aplikacjami (backend/frontend). Jak piszę w .net to muszę to później tłumaczyć na TS - niby prosta rzecz, ale traci się czas, duplikuje testy lub testuje tylko w jednym ekosystemie itp.

PS2. plus oczywiście automatyczne tłumaczenie działa do jakiegoś poziomu, ale jeżeli pojawiają się bardziej złożone metody, to cały automatyzm się wywala.

2

PHP to takie g..no które jednak warto znać.

  1. Najszybciej znajdziesz w tym pracę (Trójmiasto: 48 ofert, node.js - 28 ofert)

  2. Łatwy w nauce do poziomu "dostateczny"

  1. Masa materiałów do nauki

  2. W miarę rozwinięty język:

  1. Masa frejmłorków, ale nie pojawiają się i znikają tak szybko jak w JavaScripcie
    Z tego co się dowiadywałem ostatnio najpopularniejszy jest/był Laravel.
    Jest jeszcze Symfony.
    Więcej: https://dev.to/websitedesignnj/top-6-most-used-php-frameworks-for-web-development-2020-46o5

  2. Masa gotowych "skryptów" - Wordpress, Drupal, phpBB

  3. Dostępne narzędzia zarządzania pakietami

  1. Można w nim pisać funkcyjnie:
2
vpiotr napisał(a):

PHP to takie g..no które jednak warto znać.

  1. Najszybciej znajdziesz w tym pracę (Trójmiasto: 48 ofert, node.js - 28 ofert)

Liczba ofert o niczym nie świadczy. Może łatwo znaleźć pracę w php, a może nie. Nie wiem, ale liczba ofert o tym nie świadczy. Pokazuje tylko, że php ma duży rynek. Najwięcej jest ofert na react, a wcale nie jest super łatwo znaleźć w tym pracę. Z drugiej strony pojawiają się niszę, gdzie super z pracą. Wiem, że jakiś czas temu react-native był taką niszą. Jak szukaliśmy na to ludzi, to na mida za 9-12k+ poznań nie zgłosił się nikt kto spełniałby wymagania ogólnych 3 lat i 1 roku w react-native. W końcu wzięliśmy rokującego studenta za przyzwoite pieniądze. Niby mały rynek, ale właśnie łatwy do wejścia wtedy był (nie wiem, czy jest nadal).

  1. Łatwy w nauce do poziomu "dostateczny"

To mega subiektywna sprawa, czy coś jest łatwe. Dla mnie najłatwiejszy był .net/c# bo ma mega szczegółową dokumentację, jedno słuszne IDE, do którego nie trzeba za bardzo nic pluginować, typowanie wszystko podpowiada, jest dużo książek itp. Front też jest prosty w mojej opinii, a z drugiej strony php wydaje mi się trudny, bo różni się składnią od jedynej słusznej :D.

  1. Masa materiałów do nauki

jak z java, .netem, nodem itp.

  1. W miarę rozwinięty język:

Niosący tony legacy...

  1. Masa frejmłorków, ale nie pojawiają się i znikają tak szybko jak w JavaScripcie
    Z tego co się dowiadywałem ostatnio najpopularniejszy jest/był Laravel.
    Jest jeszcze Symfony.
    Więcej: https://dev.to/websitedesignnj/top-6-most-used-php-frameworks-for-web-development-2020-46o5

Laravel gwałci SOLID z samych swoich założeń architektonicznych

  1. Masa gotowych "skryptów" - Wordpress, Drupal, phpBB

Wordpress, Drupal to nie jest programowanie. To tak jak nazwać żabkę siecią cukierni i kawiarni (spotkałem się z tym określeniem przy próbach walki z zakazem w niedziele). To jest najczarniejsza strona IT, tak jak domki typowe są najczarniejszą stroną budownictwa.

  1. Dostępne narzędzia zarządzania pakietami

Jakby w innych językach tego nie było. To tak jakby reklamować samochód - nowość; ma koła i kierownicę

  1. Można w nim pisać funkcyjnie:

w .net też jest F#, w node też można, w scala można itp. Znowu reklama typu; ma koła i kierownicę.

Mimo wszystko niestety czasem muszę coś zrobić w PHP na zastępstwach. Język jak wiele innych, ale niestety bardzo dużo amatorskiego kodu w nim jest napisane.

Ps. jakby teraz szukać niszy zatrudnienia, to na pewno nie jest to PHP, ale Ruby, może Python. Perspektywy ma też flutter itp. Na pewno jako nowicjusz nie pchałbym się gdzieś, gdzie jest tak duży rynek.

Ps2. Myślę, że lepszym wskaźnikiem perspektywy zatrudnienia byłaby odwrotność liczby odpowiedzi na jedno ogłoszenie, tj. jak na ogłoszenie z fluttera spływają 2 odpowiedzi, to znaczy, że latwiej znaleźć pracę, niż np. na react, gdzie odpowiedzi załóżmy jest 30.

1

Programuję w PHP od ponad siedmiu lat. Przeszedłem drogę od gołego PHP przez CodeIgniter/Kohana do Symfony. Nie polecałbym tego języka. Nie ze względu na braki i niedociągnięcia, które są wymieniane przez osoby wyżej a są powoli naprawiane/eliminowane w kolejnych wersjach. Np. ostatnio dodali możliwość typowania zmiennych w klasach, można już wpisywać liczby w przyjazny sposób (np. 100_000_000 jak w np. Javie) a w wersji 8 wprowadzili deklarowanie zmiennych klasowych w konstruktorze tak jak np. w Typescript. Wciąż trochę brakuje, ale jest coraz lepiej.

Ale ja nie o tym chciałem.

Przyczyną, dla której nie polecam tego języka jest MONSTRUALNA ilość tzw. szajskodu, który trzeba rozwijać i utrzymywać. To jest naprawdę parszywa i demoralizująca praca, często przydzielana właśnie przede wszystkim osobom początkującym. Jeśli ktoś jest przyzwyczajony do porządku i przejrzystości, to może się srodze rozczarować.

1

Po dłuższych namysłach itp itp zdecydowałem że wybiorę PHP,czyli..
Jako ścieżka zawodowa,na której się skupię to Frontend,czyli wiadomo HTML/CSS/JS + frameworki.W wolnym czasie PHP.Warto też dodać że niektórzy pracodawcy od Web Development chętnie przyjmą osobę z powiedzmy wiedzą o Laravel czy Symfony,MySQL również przydatne będzie,no warto mieć chociaż podstawową wiedzę jak to działa.W domu sobie działać,tworzyć strony w celu nauki i PHP jako backend swej strony,wiadomo na razie to będą proste skrypty w PHP,no ale od razu Rzymu nie zbudowano,a nie ma też w dzisiejszych czasach programisty zawodowo,który by znał tylko jeden swój język z pracy,czyż nie? :)
Dzięki wszystkim :D

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