[polemika] .net 5 comming

Ahojte, trošku by sa zišlo obnoviť tú zaujímavú časť debát, ktoré sa týkajú citlivých tém, na ktoré má každý z nás vlastný názor. Dnes ma zaujala téma:
.net 5
Kto trošku sleduje vývoj .net, tak vie, že súbežne s .net frameworkom bol posledných pár rokov vyvýjaný .net core. .net 5 by už ale nemal byť súbežný projekt ale logicky pokračovateľ oboch .net verzii, ako tej multiplatformnej okresanej verzie core, tak full windows only verzie framework.
Keďže teraz konvertujeme finstat do .net core, tak vidím, že to nie je len taký nejaký easy task, iné definície projektov, iné libky, proste to nebude jednoduché preklopiť ho na novú platformu, aj keď v podstate všetká business logika je bezo zmeny, toho kódu okolo toho je dosť na to, aby to nebolo jednoduché. U nás konvertujeme z mvc 5 a to sa už dosť principiálnych vecí okolo request flow, routingu, razor pomenilo.
Koľko ale je firiem, ktoré na tento luxus nebudú mať čas a keďže vývojari libiek budú mať ako keby 3 platformy na podporu (aj keď .net core bude takmer 100% spätne kompatibilny s .net 5), stále je to testovanie navyše a je teda otázne, či väčšina knižníc niektorú platformu neobetuje.
Čo si o tom myslíte?

Viac menej je to len marketing a naozaj nejde o nic ine ako dalsiu verziu .net core. Chcú zdôrazniť, že .net framework je minulosť a nemá a zmysel neprejsť na .net core, resp .net5. V .net core 3 je uz portovane prakticky vsetko, vratane Win32 desktop aplikacii (wpf) a je len logické ze to chcu naoko zjednotit. Uz dnes .netcore nieje okresana verzia, ale nadmnozina stareho net frameworku.

Treba povedat, ze migracia z .net frameworku do netcore nieje jednoducha preto, ze hlavne frameworky (asp.net, entity framework) boli napisane odznova a uplne inak. Pri upgrade z .net core na net5 sa nic take neudeje.

“či väčšina knižníc niektorú platformu neobetuje”,
drviva vacsina kniznic uz dnes targetuje .net standard a teda to na 99,9999% bude fungovat vsade bez toho aby sa tym niekto zaoberal.

BTW, vsetky tvoje kniznice v solutione by tiez mali targetovat .net standard a nie .net core

Ku mne sa dostala info, že jedným z najväčších zákazníkov Microsoftu (ohľadom .NETu) sú americké banky, s ktorými ma MS zmluvy o podpore a kontinuite .NET frameworku. A to bol jeden z faktorov pri výbere názvu (spôsobu tvorby názvov).

to Liero: 99.999% je pre .net, bohužiaľ niektoré veci hlavne pri multiplatformových aplikáciách treba podmieniť #if (platform) a teda aj pretestovať. Ono to teoretický môže vyzerať ako simple konverzia, ale nie je. Ako príklad knižnice robiace s grafikou
to Burgyn: nikto nehovorí, že ten kód na windows a .net frameworku nepobeží ešte 20 rokov, len že budeš musieť používať staré knižnice, prípadne si urobiť ich ďalší vývoj sám

Ale multiplatformove kniznice maju co spolocne s roznymi runtime? To je uplne ina tema.

Graficke kniznice su samozrejme v multiplatformovych knizniciach ine ako v starom net frameworku, ale to znova nesuvisi s runtimom, ale s tym ze chce aby tu to bezalo na Linuxe napr. Nejaky .net 5 na to nebude mat ziaden vplyv.
Dokaz? Stare graficke kniznice zavisle na direkt x alebo gdi su dnes portovane do .net core, ale samozrejme bezia iba na Windowse. Proste toto je iny problem.

Co sa tyka testovania, je to to iste, ako keby si chcel testovat voci .net core 3 ale aj .net core 2. To ze sa to nebude volat .net core 4 ale .net 5 na veci nic nemeni. Dokazom je aj to, ze uz nebudu dalsie verzie .net core, takze to je uplne ina situacia ako .net framework 4.x vs .net core. .Net 5 NIEJE dalsi runtime ktory bude treba podporovat

Dovolím si nesúhlasiť. .net 5 bude ďalší runtime a dokiaľ bude .net core 3.1 podporovaným frameworkom, tak budeš musieť riešiť prípadne bugy, pretože prebehne nejaký vývoj a .net 5 nebude mať rovnaký kód (už teraz do neho merguju mono).
.net core ma až tak nezaujíma, tam bude prechod na .net 5 úplne plynulý. Problémom je skôr to, či pre .net framework 4.x budu vytvárané nové knižnice, prípadne budú feature full oproti ich 5.x verzii.

Problémom je skôr to, či pre .net framework 4.x budu vytvárané nové knižnice, prípadne budú feature full oproti ich 5.x verzii.

Nerozumiem. Uz teraz niesu .NET Framework 4.x feature full oproti .NET Core. Vid Blazor napr, alebo gRPC v ASP.NET Core. .NET Standard 2.1 tiez nebude v .net framework 4.x

Nove feature pribudaju v .NET Frameworku viac menej preto, ze targetuju .NET Standard, ktory funguje vsade.

Hovorim o drobných rozdieloch ako sú iné umiestnenia tried, mierne odlišná funkčnosť, ktoré musíš o#ifovať, lebo .net standard môže byť niekedy nepostačujúci a potrebuješ urobiť funkčnosť mimo štandardu, napr. systémove veci.