Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Dobrý večer, pozitívom Node.js je JavaScript, ktorý beží všade. To znamená, že rovnaký kód a knižni… nový
moose 21.09.2017 06:58
moose
Nejsem si jistý, jestli jsou ty počty balíčků porovnatelné. Node.js má balíček na každé uprdnutí - v… poslední
Wikan 21.09.2017 15:44
Wikan

Dobrý večer,

pozitívom Node.js je JavaScript, ktorý beží všade. To znamená, že rovnaký kód a knižnice môžete použiť na serveri a aj v prehliadači. Tiež má nízku vstupnú bariéru pre vývojárov, a aj preto má veľa knižníc. Jeho package manažér npm je najväčší repozitár balíkov a obsahuje viac než dvojnásobok balíkov druhého najväčšieho repozitára Maven Central. Negatívom je JavaScript vytvorený Brendan Eichom za 10 dní, ktorý nemá silnú typovú kontrolu (tento problém rieši TypeScript, okrem toho sa aj samotný jazyk výrazne zlepšil). Tiež má nízku vstupnú bariéru pre vývojárov, takže má veľa knižníc, ktoré sa neustále menia a ich kvalita je rôzna. Najznámejším faux pas jeho package manažéra bolo odstránenie knižnice left-pad z repozitára, ktorá slúžila len na vyplnenie reťazca znakmi zľava.

Pozitívom PHP je, že jeho životný cyklus začína a končí s webovou požiadavkou. To znamená, že v podstate neleakuje pamäť, kedže po dokončení spracovania požiadavky sa na všetko zabudne (leakovať môže zle napísaný C/C++ modul, ale PHP spuštané webovým serverom ani nie). Negatívom je, že jeho životný cyklus začína a končí s webovou požiadavkou. Z toho vyplýva, že sa nedajú jednoducho držať v pamäti údaje naprieč viacerými požiadavkami alebo napr. otvorené websocketové pripojenia. Dá sa to obísť použitím memcache alebo spustením webového servera priamo z PHP. Ďalším negatívom je samotný jazyk (aj keď sa výrazne zlepšil a PHP 7 je už dobré) a jeho takmer žiadne konvencie - zvláštne názvy funkcií, parametre funkcií sú ako keby v náhodnom poradí. Tie zvláštne názvy funkcií vychádzaju historicky z toho, že PHP vo svojich začiatkoch používalo ako hešovaciu funkciu pre rýchle vyhľadanie funkcie dĺžku jej názvu.

Pozitívom ASP.NET je jazyk C#, čo je v súčasnosti asi najvyspelejší jazyk so silnou typovou kontrolou a dobre navrhnutou syntaxou. Ďalším pozitívom je jeho IDE - Visual Studio pre Windows, ktoré výrazne uľahčuje vývoj. Negatívom je, že na Linuxoch začal byť Microsoftom priamo podporovaný len prednedávnom (pred vyše rokom). V balíčkovacom systéme NuGet je cca polovica toho, čo je v Maven Central. To všetko platí pre ASP.NET MVC - ASP.NET WebForms je nevydarený pokus preniesť desktopové myslenie na web.

Zpět do poradny Odpovědět na původní otázku Nahoru