PHP Symphony vs Spring Boot

Alex

PHP Symphony vs Spring Boot
« kdy: 09. 11. 2018, 15:29:39 »
Pracoval jste někdo v obou těchto framework a můžete srovnat náklady na údržbu a provoz ? My děláme ve Spring ale zákazník chce backend v PHP z důvodu levnějšího vývoje. Jedná se o sever část mobilní herní aplikace kterou máme dělat.

Je Teda pravda že PHP programátor vyjde levně než Java ale co jsem viděl tak produkuje těžko udržovatelný kód, testy jsou výjimkou. Já jsem přesvědčen že PHP programátor kvalitou srovnatelný se Java 7+ let praxe bude také stejně stát a rozhodně do Javy jsou lepší knihovny a nástroje.

Zákazník řešil podle svých slov programátorama v PHP za 35 tisíc. Já nemám vůbec zkušenosti s tím jak tenhle typ lidí je schopen dodržovat alespoň základní pravidla jako například transakce a referenční integrity. Protože když ho nechám ať si backend naprogramovat svépomocí tak to dopadne že když to nebude v pořádku tak bude nutno dokazovat v jaké části je chyba, to povede ke zbytečným sporům a prostojům.


test

Re:PHP Symphony vs Spring Boot
« Odpověď #1 kdy: 09. 11. 2018, 18:11:23 »
A chcete srovnávat PHP vs Java vývojáře a nebo Symfony (takhle se to píše správně) vs Spring framework

Co se týče frameworků tak jsem měl možnost psát něco menšího ve springu a větší věci v symfony. Frameworky jsou si hodně podobný (třeba security komponenta byla pro mě ve springu dost jednoduchá k používání, protože symfony má dost principů přebraných).

Co se týče práce se šablonama (pokud není potřeba nějaký FE framework) tak je má IMO lepší symfony. Thymeleaf a různé další se mi ovládali hodně těžkopádně a víc času jsem trávil hledáním co a jak vyřešit než abych tu šablonu jednoduše vykreslil.

Dál mi přišlo trochu lepší routování v symfony, kde jsou tuším větší možnosti, ale nic co by se nedalo řešit a nebo udělat jinak.

Co se týče porovnání programátorů tak dle mého názoru vám zkušený programátor napíše stejně otestovaný kód v obou frameworcích a obdobně kvalitní. Java má rozhodně výhodu ve statickým typování což může odchytit dost chyb.

Bohužel za mě symfony trpí tím že je postavený na PHP což je bastl se kterým pořád dělám :-)

test

Re:PHP Symphony vs Spring Boot
« Odpověď #2 kdy: 09. 11. 2018, 18:12:59 »
mimochodem: seniorního PHP programátora rozhodně za 35 neseženete - teda pokud to není blázen. Počítejte spíš tak 70+. Juniora za ty prachy jo, ale ta kvalita je samozřejmě jinde (ale to i v Javě)

Re:PHP Symphony vs Spring Boot
« Odpověď #3 kdy: 09. 11. 2018, 19:18:42 »
programator za 35 neni programator. a je jedno jestli v php nebo jave. testy muzes (ne)napsat stejne v obou jazycich.
Děkuji za možnost editace příspěvku.

combine

Re:PHP Symphony vs Spring Boot
« Odpověď #4 kdy: 10. 11. 2018, 09:52:00 »
Pracoval jste někdo v obou těchto framework a můžete srovnat náklady na údržbu a provoz ? My děláme ve Spring ale zákazník chce backend v PHP z důvodu levnějšího vývoje. Jedná se o sever část mobilní herní aplikace kterou máme dělat.

Je Teda pravda že PHP programátor vyjde levně než Java ale co jsem viděl tak produkuje těžko udržovatelný kód, testy jsou výjimkou. Já jsem přesvědčen že PHP programátor kvalitou srovnatelný se Java 7+ let praxe bude také stejně stát a rozhodně do Javy jsou lepší knihovny a nástroje.

Zákazník řešil podle svých slov programátorama v PHP za 35 tisíc. Já nemám vůbec zkušenosti s tím jak tenhle typ lidí je schopen dodržovat alespoň základní pravidla jako například transakce a referenční integrity. Protože když ho nechám ať si backend naprogramovat svépomocí tak to dopadne že když to nebude v pořádku tak bude nutno dokazovat v jaké části je chyba, to povede ke zbytečným sporům a prostojům.

Pokud programuje v Jave a zákazník po Vás chce  bastlit v php, tak mu vysvětlete, že v php nebastlite a musí jit hledat někam jinam. Poprejte mu hodně štěstí a trpělivosti s php bastlirema. Třeba se za rok vrátí a dostane rozum.

Výjimkou je, že by Vas brutálně preplatil za to, že to zbastlite v php. Vzhledem k tomu, že hledá levné bastlire a ne programátory, to asi nehrozí.

Ty dva frameworky srovnat nedokážu. V php jsem rok dělal a je to strašná pytlovina. Fuj, ještě teď se mi zvedá kufr při té vzpomínce.

Senior php programátor je oxymórón, protože žádný senior programátor by si jako jazyk nevybral php.


perceptron

Re:PHP Symphony vs Spring Boot
« Odpověď #5 kdy: 10. 11. 2018, 10:50:04 »
chcete projekt

v horsej technologii
v ktorej nerobite
v mensom budgete

to sa oplati!

Alex

Re:PHP Symphony vs Spring Boot
« Odpověď #6 kdy: 10. 11. 2018, 21:37:36 »
Udělal jsem plán :
Uděláme API design a testy, zákazník si udělá svépomocí backend který projde testy.
Pak začneme dělat na zbytku. Provoz si budou řešit svépomocí.

Nejsem si sice jist že levná pracovní síla kterou má nasmlouvanou na úpravy WordPress mu ten backend udělá, ale tímto přesunu riziko na ně.

combine

Re:PHP Symphony vs Spring Boot
« Odpověď #7 kdy: 11. 11. 2018, 11:56:28 »
Udělal jsem plán :
Uděláme API design a testy, zákazník si udělá svépomocí backend který projde testy.
Pak začneme dělat na zbytku. Provoz si budou řešit svépomocí.

Nejsem si sice jist že levná pracovní síla kterou má nasmlouvanou na úpravy WordPress mu ten backend udělá, ale tímto přesunu riziko na ně.

A na scénu tohoto příběhu přichází ještě levný "WordPress" programátor. To je cirkus. Mám pocit, že to dobře nedopadne. Mluvím z vlastní zkušenosti ze svých začátků, kdy někoho(snad nás, snad zákazníka) napadlo dělat sociální síť postavenou na Joomle. Jak rád bych se teď vrátil v čase a všechny, včetně sebe, profackoval. 😁

Nevím proč a čím, ale PHP přitahuje největší loosery.

x

Re:PHP Symphony vs Spring Boot
« Odpověď #8 kdy: 11. 11. 2018, 13:21:27 »
Citace

Nevím proč a čím, ale PHP přitahuje největší loosery.

Sam Ste napisal, ze Ste
1) stavali (v zaciatkoch) socialnu siet na Joomle
2) tym padom na PHP

Okrem toho, ze Ste sam seba nazvali looser-om, tak navyse nikoho, kto v PHP ma co to napisane a hlavne vacsieho a navstevovanejsieho kodu, by nikdy nenapadlo pouzit Joomla. Vas ospravedlnuje len to, ze Ste boli v zaciatkoch (a Vas to neospravedlnuje uplne, aj ked pevne verim tomu, ze za onym rozhodnutim boli aj ine ako len technologicke dovody a vlastna nevedomost).

To preco niekoho pritahuje PHP moze byt z viacerych dovodov ako to, ze je looser. Napr.:
1. Ponuka a podpora hostingov
2. Rychlost vyvoja
3. Narocnost vyvijaneho (v zmysle v rozsiahlosti) projektu, typ aplikacie
4. Dostatocna konkurencia a kvalita dodavatelov na trhu
5. Cena vyvoja
6. Narocnost na maintenance a troubleshooting
7. Narocnost vybudovania/dalsieho skalovania (temporarne v pripade potreby)
8. Fundamentalna stranka fungovania daneho jazyka/prostredia
9. Konkurencia/kvalita/cena na pracovnom truhu (napr. v pripade interneho staffu)
10. Historicke (a ine) dovody

Ono velakrat vidime aj spolocnosti v Fortune 50(0) pouzivat veci pisane v PHP a ako loosers vnimani nie su...
Taktiez je mnoho pouzivanych znamych vacsich OSS projektov pisanych v PHP (v rychlosti ma napadne napr. Nextcloud) a asi funguju dobre, kedze su vyuzivane firmami po celom svete...
Takze o akych looser-och je tu vlastne rec?

.

Re:PHP Symphony vs Spring Boot
« Odpověď #9 kdy: 11. 11. 2018, 14:16:10 »
Udělal jsem plán :
Uděláme API design a testy, zákazník si udělá svépomocí backend který projde testy.
Pak začneme dělat na zbytku. Provoz si budou řešit svépomocí.

Nejsem si sice jist že levná pracovní síla kterou má nasmlouvanou na úpravy WordPress mu ten backend udělá, ale tímto přesunu riziko na ně.
To je rozumný plán. Jen bych explicitně přidal i výkonostní testy a požadavek na maximální latenci.

cydreb

Re:PHP Symphony vs Spring Boot
« Odpověď #10 kdy: 11. 11. 2018, 15:11:25 »
Citace
Pracoval jste někdo v obou těchto framework a můžete srovnat náklady na údržbu a provoz ? My děláme ve Spring ale zákazník chce backend v PHP z důvodu levnějšího vývoje. Jedná se o sever část mobilní herní aplikace kterou máme dělat.

Mám asi rovnaké skúsenosti s PHP/Symfony (4 roky) a s Java/Spring/Spring Boot (4 roky).

1. V Symfony sa backend napíše rýchlejšie ako v Spring, pretože je možné veľa kódu vygenerovať, nie je potrebné riešiť reštart servera, redeploy, hot swapping, kompiláciu.
2. Či sa jedná o Symfony alebo o Spring tak vždy je potrebné napísať testy, tu úspora času nie je.
3. Rovnako dobrý PHP programátor je o niečo lacnejší (asi 10-20%) ako rovnako dobrý Java programátor. Na trhu je ale veľmi veľa slabých PHP programátorov (to sú tí čo robia za 35k).

Citace
Je Teda pravda že PHP programátor vyjde levně než Java ale co jsem viděl tak produkuje těžko udržovatelný kód, testy jsou výjimkou. Já jsem přesvědčen že PHP programátor kvalitou srovnatelný se Java 7+ let praxe bude také stejně stát a rozhodně do Javy jsou lepší knihovny a nástroje.

1. V PHP je kód horšie udržiavateľný, pretože mu chýba typová kontrola.
2. Nedá sa povedať, že knižnice v Jave sú lepšie. Napr. knižnice pre web sú v Jave shit, v PHP sú podstatne lepšie. Zas knižnice pre SOAP sú v PHP shit, shit sú aj v Jave, ale o niečo menší.

Citace
Zákazník řešil podle svých slov programátorama v PHP za 35 tisíc. Já nemám vůbec zkušenosti s tím jak tenhle typ lidí je schopen dodržovat alespoň základní pravidla jako například transakce a referenční integrity. Protože když ho nechám ať si backend naprogramovat svépomocí tak to dopadne že když to nebude v pořádku tak bude nutno dokazovat v jaké části je chyba, to povede ke zbytečným sporům a prostojům.

Tak nech mu to celé naprogramuje a choďte na projekt inam, práce je kopec.

jim21

Re:PHP Symphony vs Spring Boot
« Odpověď #11 kdy: 11. 11. 2018, 16:45:50 »
Nevím proč a čím, ale PHP přitahuje největší loosery.

Jen loser píše slovo "loser" jako "looser"

https://www.urbandictionary.com/define.php?term=looser

combine

Re:PHP Symphony vs Spring Boot
« Odpověď #12 kdy: 11. 11. 2018, 17:13:53 »
Nevím proč a čím, ale PHP přitahuje největší loosery.

Jen loser píše slovo "loser" jako "looser"

https://www.urbandictionary.com/define.php?term=looser

To je dobré! 😁

balki

Re:PHP Symphony vs Spring Boot
« Odpověď #13 kdy: 11. 11. 2018, 17:26:18 »
[quote author=Alex link=topic=20039.msg294976#msg294976 date=1541773779
....

Zákazník řešil podle svých slov programátorama v PHP za 35 tisíc. Já nemám vůbec zkušenosti s tím jak tenhle typ lidí je schopen dodržovat alespoň základní pravidla jako například transakce a referenční integrity. Protože když ho nechám ať si backend naprogramovat svépomocí tak to dopadne že když to nebude v pořádku tak bude nutno dokazovat v jaké části je chyba, to povede ke zbytečným sporům a prostojům.
[/quote]

Nebolo by dobre k lopatam za 35 najat aspon jednoho PHP seniora, ktory by spravil navrh aplikacie a lopaty by uz len pisali lopatovaci kod? Mam taku skusenost, ze bezni php-ckari zvyknu zle strukturovat kod. Potom spravia rozne spagety, kde triedy/moduly maju pomiesane zodpovednosti a nieco zmenit je pain in the ass. Ak je vnutri nagrcane, ale aspon spravne modularizovane (spravne navrhnute classy, metody, procedury, funkcie, baliky),  spravuje sa to lahsie.

Jano7

Re:PHP Symphony vs Spring Boot
« Odpověď #14 kdy: 11. 11. 2018, 17:28:32 »
Ak chce zákazník BE v Symfony, tak nech ho má. Aj keď súhlasím s názormi, že šetriť na platoch
programátorov sa rozhodne neoplatí. Avšak cena vývoja nie je jediným faktorom. Ročné predplatné
IDEY je drahšie ako PHP Storm, Java má ďalšie skryté náklady, napr. JRebel. V neposlednom rade,
Oracle od nového roku spoplatňuje Javu; a tie poplatky vyzerajú brutálne vysoké. Sú tam poplatky
za vývojára, za updaty a za počet CPU. Je to veľmi neprehľadné (neviem sa vysomáriť, či sú to mesačné
alebo ročné poplatky), ale pohybuje sa to v desiatkach dolárov za advanced desktop Javu až po 3300$ za
Java Advanced Suite (bohvie čo to je). Toto sú už poriadne pálky, kde sa naozaj oplatí pozrieť na Symfony.
Ďalej tam má Oracle klauzulu subject to change without notice, čo znamená, že to kedykoľvek môže
vyletieť hore.


Ináč Java programátor sa bude cítiť v Symfony ako doma. Nájde to známe pojmy ako repository, entity,
dokonca celý validation modul bol komplet prebratý z Java špecifikácie. Symfony je kompaktnejšie, príjemnejšie
na používanie, vyžaduje menej kódu a kognitívnej záťaže.

Citace
Thymeleaf a různé další se mi ovládali hodně těžkopádně

Súhlas. Twig je oveľa lepší. Dokonca donedávna Thymeleaf neakceptoval HTML5 tagy, ale iba XHTML, čo
spôsobovalo problémy s twitter, google, facebook atď. buttonmi.

Citace
V PHP je kód horšie udržiavateľný, pretože mu chýba typová kontrola.

S príchodom PHP 7 sa to výrazne zmenilo. Pribudli type hinty, ktoré umožnujú typovú kontrolu.
Kód: [Vybrat]
public function index(Request $request, int $page, string $_format, PostRepository $posts, TagRepository $tags):   Response  {

Dependency injection je tiež podľa mňa v Symfony elegantnejšie.

Citace
Nedá sa povedať, že knižnice v Jave sú lepšie.

Nuž, ja si myslím, že v mnohých prípadoch sú Java knižnice ďaleko kvalitnejšie a prepracovanejšie. Jackson, JSoup, OpenCSV, Lucene/Solr/ElasticSearch ťažko nádju v PHP alebo iných jazykoch konkurenciu. Ale určite je zopár ďalších knižníc ako je Twig, ktoré sú kvalitnejšie v PHP.