Tak ako tu uz bolo spomenute, nejak uplne nechapem tomuto telocviku a titulku.
Priamo na githube pri zlib-rs pisu ze vychadzali z zlib-ng, cize budu +/- vykonnostne porovnatelne. To ze je vykonnejsia ako zlib sa asi da ocakavat, ako tu uz bolo spomenute, povodna zlib nie je na dnesne pomery napisana najoptimalnejsie a podporuje vela kompilerov a platforiem - to je dan za vykon. Toto riesi prave zlib-ng. Ak pouzijem zlib-rs s bindingom, kde tak isto na svojom githube tvrdia ze benefit je vyssia bezpecnost, tak som tam kde som bol. Ak to pouzijem v ramci rust projektu tak asi ok.
Tak trochu mi pride ze sa spravil hype okolo rustu , ako svojho casu okolo javascriptu/node. Pritom jazykov ktore boli a vlastne aj su fajn len to pohnojili kompilerom a ekosystemom je habadej. Keby Sun nebol taky nenazrany a kratkozraky tak by Java mohla byt niekde inde, keby Google nebol za Go a netlacili by to len ako backend alternativu tak by sa z toho mozno stal zaujimavejsi jazyk, keby MS nespravil .Net ako truc podnik Sunu/Jave tak by mohol byt daleko zaujimavejsi. Keby niekto oprasil Pascal a spravil k nemu poriadny kompiler (aj ked FreePascal je celkom fajn) tak by sme mohli byt inde (Delphi/Lazarus celkom vymakane RAD) atd...
Na com skrachoval Sun by sa dalo polemizovat. Staci sa pozriet na ich HW, Sun Ultra a co stali napriklad len take sietove karty, co boli de facto brandovane 3Com karty, napoveda, tie od Sunu stali 10x tolko. A aj ten ich Solaris nebol ziaden zazrak. Jedine co mali bola Java a preto sa jej tak drzali az si sami podpilil konar.
>>>A aj ten ich Solaris nebol ziaden zazrak
Na ten som práve počul spievať ódy, mal na tú dobu unikátne vlastnosti. A AFAIK je to certifikovaný UNIX. Ich servery sa predávali ako riešenia so Solarisom. Nedá sa polemizovať, prečo skrachoval Sun, lebo skrachoval kvóli .com bubline, na ktorú doplatili aj iné HW firmy. Bolo kopec second-hand HW po skrachovaných startupoch a nový HW nikto nekupoval.
> Javu prevzal Oracle a ten nie je známy ako motor inovácii, práve naopak
Nebudu řešit obecný obraz Oracle, nicméně přijde mi, že za Sunu se Java rozvíjela mnohem pomaleji než za Oracle. Sun vyvinul až Javu 6 a velkou část Javy 7. Od Javy 8 dál mám pocit, že se to hýbe více.
A to nepočítám GraalVM, který spadá do ekosystému, ale není to přímo věc jazyka.
Otázka je, o čem přesně se bavíme. Jestli o samotném jazyků, standardní knihovně, JVM, dalším ekosystému apod. Já reagoval jen na jazyk (proto jsem nezahrnoval GraalVM), tam od Javy 1.3 (s tou jsem dělal v souvislosti s J2ME) do Javy 7 přibyla hlavně generika. Jo, bylo toho trošku víc, ale IMHO nic významného. V Javě 7 nebyla ještě ani lambda, resp. šlo to řešit leda pomocí anonymních tříd, což jednak bylo ukecané a jednak mělo určitá omezení. Naopak od Javy 8 dál začaly chodit novinky. Lambda, moduly, různá zjednodušení. Přijde mi, že od Javy 6 je to o dost jiný jazyk.
Pokud se podíváme šířeji, GraalVM mi přijde jako dost zajímavá novinka. Podpora dalších jazyků, jejich interoperabilita, native-image. I kdyby to byla jediná novinka, přijde mi to dost.
Lambdy sú možno fajn, ale to syntaktický cukor, moduly som nevidel reálne používať v praxi. Aj tie "zjednodušenia" sú syntaktický cukor, nič fundamentálne odlišné. Ak by som okolo roku 2010 upadol do kómy a prebudil by som sa teraz, Java by ma až tak neprekvapila.
Možno by ma milo prekvapili streamy, ale to je asi tak všetko. Ak by som mal na to guráž, tak sa na programovanie v Jave vykašlem a založím Rust startup. Ten jazyk robí všetko proste dobre. Hobby projekty som doposiaľ robil v Pythone, nie v Jave. (Aj v tom prototypujeme, lebo je to rýchlejšie, než sa zapodievať DecoratorModelThreadBusinessFactory a mavenom.)
28. 2. 2025, 12:13 editováno autorem komentáře
> Ten jazyk robí všetko proste dobre.
Zrovna asynchronní kód v Rustu je hrůza. Zvláště oproti novější Javě, kde máte virtuální vlákna neboli tzv. stackful coroutines. Díky tomu asynchronní kód v Javě vypadá jako synchronní (což btw zvětšuji znovupoužitelnost kódu). To se v Rustu bohužel moc neuchytilo, pár knihoven sice existuje, ale většina lidí jede Async Rust s tokio, což je mnohem složitější a náchylnejší k chybám
Hlavní problém je, že nemůžete normálně používat reference, protože všechno, co dávate v Tokiu do async funkcí musí být Send + 'static. Takhle je Tokio navržené a vy s tím nic neuděláte. Viz Async Rust can be a pleasure to work with (without `Send + Sync + 'static`)
> Lambdy sú možno fajn, ale to syntaktický cukor
…
> Možno by ma milo prekvapili streamy, ale to je asi tak všetko
Zkuste si použít streamy (jsou-li myšleny tu pro práci s kolekcemi) bez lambda… Jo, je možné použít syntaxí pro anonymní třídy, ale bude pěkně vidět, jak je ten syntaktický cukr užitečný.
> Ak by som okolo roku 2010 upadol do kómy a prebudil by som sa teraz, Java by ma až tak neprekvapila.
Pokud se jazyk vyvíjí konzistentně, nebude dělat velká překvapení, nové featury budou dobře zapadat do jazyka.
Co třeba type inference? Já vím, syntaktický cukr, ale fajn věc.
Šlo by pokračovat. Třeba pattern matching. Jo, do nějaké míry syntaktický cukr, ale zároveň snižuje prostor pro chyby.
V Javě jakožto jazyce dnes moc nedělám (na platformě Java ale ano – Scala, Kotlin), ale kdyby tu novinky z Javy 8+ byly dřív, možná bych neměl tolik důvodů zkoušet Scalu.
> Ak by som mal na to guráž, tak sa na programovanie v Jave vykašlem a založím Rust startup. Ten jazyk robí všetko proste dobre.
Jo, Rust je fajn, ale zaměřením míří trochu jinam než Java. A problém je s možnostmi práce, z velké části jde o nějaké shitcoiny.
>> Jo, Rust je fajn, ale zaměřením míří trochu jinam než Java. A problém je s možnostmi práce, z velké části jde o nějaké shitcoiny.
Java mierila do elektrospotrebičov a je z nej COBOL 21. storočia. Takže nič.
Viem si Rust napríklad predstaviť ako drop-in replacement webservisov v Spring Boot, prípadne rôznych výpočtov na backende, kde sa tradične používa Java. Chápem, že zrúdnosti typu Liferay, alebo Websphere to nenahradí.
Javascript je jazyk na houby, který má jediný benefit, vývojáře, kteří ho znají
Java je za zenitem, a své nástupce má: Kotlin, Scala.
Net je rybníček pro Windows, to nikoho nezajímá. C# je hloupý jazyk. To spíše F# je co k čemu.
Go je výborná alternativa pro aplikace, které se dříve psali v C/C++, byla a je poptávka.
Pascal, stejně jako Lisp a pod jsou prostě úkrok stranou, kdo by v tom dneska psal?
RAD (Delphi, Lazaurus, VisualStudio) je slepá ulička.
Jazyky a technologie se prostě vyvíjí jak zjišťujeme co je a co není dobrý nápad. Spiknutí bych v to nehledal.
Keď vypadol Majkrosoft Ažúr, tak polovica služieb nefungovala. Tipujem, že pre henten ich Klaud sa programuje práve na Visual Studiu. Môže to byť dosť masívne zastúpené.
Inak ak mám hovoriť z autopsie, tak väčšinou vídam rôzne deriváty Eclipse a Intellij. Môj brat je C++ vývojár a používajú vo firme Eclipse.
VisualStudio bolo pouzitelne vo verzii 6.0. Potom prisiel .NET a potreba MS ho pretlacit vsade (Java history). A preto sa rozhodli prepisat VS do .NETu. A odvtedy tu mame tento polorozbite relativne pouzitelne IDE. Na mensie projekty a .NET sa to pouzit da, ale na hocico vacsie a hlavne c/c++ je to konecna. Trochu tomu pomohla verzia 2022 ktora je prva 64bit, ale aj tak, nic nezvycajne ked VS vytuhne, debugger ma problem s vecsimi objektami/strukturami, atd. Ale to sme uz odbocili od temy.
VS by potrebovalo prekopat, ale bohuzial nema moc konkurenciu (aspon na windowse) tak naco....
Kontext. Přemýšlet prosím.
Visual Studio si udělalo svou slávu na visuálním návrháři, proto se to ostatně jmenuje Visual. Problém je v tom, že ten návrhář jednak velmi rád padá, a druhak ti umožní přepnout do kódu, ten poeditovat a následně si s ním neporadí.
Jako IDE je samozřejmě normálně použávaný, o tom není řeč.
Pak jsem vlastně zapoměl na nejslavnější RAD (po Delphi): XCode. Ale s ním mám málo zkušeností a slyšel jsem, že ten visuálná návrhář se taky moc nepoužívá. Ale zde to není má zkušenost.
Nemyslím, že to by byl benefit JavaScriptu. Tím je spíš to, že je v každém prohlížeči. Co je příčina a co je následek nelze jednoduše říci. Ale jinak i JavaScript má jisté drobné výhody ve vztahu k prostředí, ve kterém obvykle běží. Jakkoliv bych v těch prohlížečích taky raději viděl něco podstatně rozumnějšího.