Nejlepší odpověď
Je to jazyk, který má tendenci běžet na serveru, ale je to trochu vymyslený výraz.
Ve skutečnosti neexistuje žádný takový rozdíl ve výpočetní technice. Lidé provozují Python na serverech a na svých počítačích a téměř v jakémkoli jiném jazyce.
Pokud mluvíme o webu, je jediným dostupným jazykem klienta JavaScript, takže podle této logiky , všechny ostatní jazyky jsou „na straně serveru“.
Ale ve skutečnosti je to smyšlený výraz, neexistuje nic jako „jazyk na straně serveru“.
Odpověď
Ach, chlapče, to je naivní.
Co by vás přimělo myslet si, že PHP je bezcenné, protože NodeJS je venku?
Pravděpodobně humbuk za NodeJS.
Ale dospělí lidé se nedostanou do humbuku. Vysvětlím to.
Snadnost : PHP je tu již více než 20 let. Miliony programátorů ho využívají a nadměrně využívají k budování nejoblíbenějšího webu a CMS vůbec. Potýkali se s obrovským množstvím problémů a PHP bylo vytvořeno tak, aby je řešilo . Je to úspěšný šablonový jazyk a programovací jazyk . Má všechny nástroje pečené, aby mohl každý vývojář začít vytvářet své webové stránky (MySQL, APC, dokonce i funkce FTP). Největší věcí v PHP je snadnost vytváření a krásná vývojářská zkušenost s aktualizovaným výsledkem stisknutím klávesy F5.
NodeJS přišel vyřešit další problém: přinesl programování orientované na události, je to jedno vlákno a docela rychle. Zatímco NodeJS má mnoho kladů a záporů, hlavní upozornění u JS spočívá v tom, že je sám o sobě . Abyste mohli začít, potřebujete spoustu nástrojů. Obvykle nebudete vytvářet aplikaci NodeJS bez TS, což znamená Babel, TSLint a stahování DT.
Pak potřebujete server HTTP, takže si stáhnete Express.
Pak potřebujete k propojení s MySQL / MongoDB, takže si stáhnete ORM nebo jednoduchý ovladač.
Obvykle potřebujete systém sestavení, vezměte si zbraň mezi Webpack, Gulp a Grunt (a Rollup a Parcel a cokoli se chystá na první stránku redditu příští týden).
A to je jen začátek minimální konfigurace.
Výkon : Není mnoho důkazů o tom, kdo má lepší výkony. PHP7 přinesl hodně a PHP8 bude mít opět lepší měřítka s vylepšením kompilátoru JIT. NodeJS využívá technologii V8, takže ve výchozím nastavení je neuvěřitelně rychlá.
Křivka učení : prostřednictvím JS je samo o sobě hrozné, je to opravdu hluboká jazyk a jeho zvládnutí vyžaduje čas. Je toho tolik, co je třeba vědět o jeho prototypové povaze, o uzávěrech, o typovém systému. S PHP je opravdu snadné začít : je to v podstatě C, dynamicky psané a se třídami.
Přístupnost : každý hostitel dnes poskytuje podporu PHP. Jen málo z nich nabízí podporu NodeJS, protože jich je stále více.
Popularita : v PHP je jen spousta vývojářů. Existuje několik nástrojů (Symfony, Laravel, CakePHP, WordPress, Joomla, Drupal…), které opravdu vypadají jako na jiném. Pravděpodobně napíšete projekt s jedním z těchto rámců a snadno najdete vývojáře, kteří vám pomohou. Vývojářů NodeJS je také čím dál víc, ale jeden backend nemá doslova s druhým nic společného. Široký výběr nástrojů v prostředí NodeJS je silnou stránkou i katastrofou.
Nikdy bych NodeJS nepoužíval jako vyhrazený backend. Raději bych použil PHP. Ale NodeJS je neuvěřitelně silný v architektuře mikroslužeb.
Takže zatímco NodeJS je dnes humbuk a pravděpodobně má světlou budoucnost, PHP zdaleka není mrtvé. Většina webu je stále poháněna pomocí PHP a nevidím žádné klienty, kteří by chtěli, aby jejich blog používal spíše Gatsby nebo Ghost než WordPress.