Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: novomente 19. 09. 2025, 16:10:27

Název: Přechod z Javy na Rust. Ano či ne?
Přispěvatel: novomente 19. 09. 2025, 16:10:27
Zdravim.

Měl bych dotaz. Bylo by dobré přejít z JAVA na RUST? Už někdo z vás přešel z jiného jazyka a začal se věnovat výhradně RUSTu?

nm
Název: Re:Přechod z JAVA na RUST (ANO či NE)
Přispěvatel: Franta Kučera 19. 09. 2025, 16:31:08
To je asi jako se ptát, jestli je lepší autobus nebo náklaďák. Každé z těch vozidel má jiné využití.

Programovací jazyk je nástroj a časem se dopracuješ k tomu, že ti nestačí jeden. (pokud tedy neděláš celý život jen jeden typ projektů a softwaru)

Takže otázka spíš je: co tě baví, v jakém oboru chceš pracovat, jaký software chceš psát?
Název: Re:Přechod z JAVA na RUST (ANO či NE)
Přispěvatel: novomente 19. 09. 2025, 16:49:58
Nejvíc mě baví Python, trochu C. Javu jsem se učil na škole. Hledal jsem však jazyk, který mi umožní vytvořit nový způsob programování, který je rychlý a multiparadigmacký (funckionální a OOP). Našel jsem RUST. Zjistil jsem, že již ho používají velké firmy, jako Google, Apple, Microsoft, Amazon a další.

Včera jsem se s ním začal seznamovat (viz. kurz zde na root.cz). A zatím splňuje moje očekávání. Tady na foru se ptám, kdo s ním má už zkušenosti, jak se jim RUST jeví.

Jinak jsem také dělal v HTML, JavaScriptu, trochu PHP a AJAX.
Název: Re:Přechod z JAVA na RUST (ANO či NE)
Přispěvatel: Mlocik97 19. 09. 2025, 17:27:41
Jinak jsem také dělal v HTML, JavaScriptu, trochu PHP a AJAX.

HTML ani AJAX nie sú programovacie jazyky. Inak ja som JS dev, a často si ľudia mýlia čo to vlastne JS je a resp. čo všetko si pod tým predstavujú alebo nepredstavujú (už som počul mnoho "je to len front-end jazyk", a podobných nezmyslov).

Inak aký jazyk si vyberieš je úplne jedno, reálny rozdiel medzi jazykmi (čisto jazykmi ako takými keď odmyslíme ekosystém) je len syntax a API. Nič iné. Samozrejme ak započítame ekosystém, tak už tu začíname rozmýšľať na ktorý projekt je vhodný ktorý jazyk. Napríklad vieme že v machine learning dominuje Python (má knižnice pre ML), v prípade serverových utilít vedie napríklad Golang, operačné systémy teraz idú C a Rust, pre web práve JavaScript, prípadne PHP a Golang. Atď atď... treba si teda dosť rozmyslieť čo chceš robiť.

Ako už spomenul Franta, je to ako autobus vs náklaďák. Každé má využitie iné. I keď niektoré jazyky sú lepšie a iné horšie (v tomto prípade Java a PHP sú celkom špatné jazyky, kvôli obskurdnej syntaxi v prípade Javy a nekonzistentnému API v prípade PHP, keďže i jazyk ako taký má určitý význam pre kvalitu DX a design jazyka je tak isto dôležitý ako jeho ekosystém). Iné jazyky ale skutočne moc rozdiely v "kvalite" nie sú a všeobecne môžem povedať že každé majú niečo do seba a sú dobré pre určité použitie.

Ak ti vyhovuje Rust, choď hravo do toho.

TL;DR; vyhoď Javu a PHP z možností a vyber si podľa preferencie a zamerania.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: snugar_i 19. 09. 2025, 19:54:29
Pokud se tím plánuješ živit, tak odpověď je "spíš ne". Full-time jobů v Rustu (ne RUSTu btw) je docela málo. Full-time jobů v Javě je hodně. Rust totiž za rychlost běhu programu platí větší pomalostí při psaní kódu (je fakt hodně přísnej) a to se na většině projektů nevyplatí.

Ale z tvýho doplňujícího příspěvku to vypadá jako že se programováním neživíš. A že v Javě vlastně neděláš. Takže moc nevím, jak myslíš to "přejít".

Na hraní je Rust určitě zajímavej, minimálně tě naučí uvažovat v kontextu, kdo co vlastní, což se může pak hodit i v jiných jazycích.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Kit 19. 09. 2025, 20:06:33
Rust je poměrně novým jazykem a řekl bych, že má budoucnost. Nemyslím si, že by byl náhradou Javy, ale spíš náhradou C++. Pokud bych byl začátečníkem, tak bych do Rustu šel.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: echo_zulu 19. 09. 2025, 22:07:14
Nemyslím si, že by byl náhradou Javy, ale spíš náhradou C++.

Už zas chce niekto nahradzovať C++?? To sa naozaj nestane...
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Kit 19. 09. 2025, 23:41:19
Nemyslím si, že by byl náhradou Javy, ale spíš náhradou C++.

Už zas chce niekto nahradzovať C++?? To sa naozaj nestane...

Je mi jasné, že C++ tu bude ještě dlouho, ale snad uznáš, že Rust je o něco bezpečnější a že dává méně prostoru, jak se střelit do nohy.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: balkovic 20. 09. 2025, 00:20:09
Zdravim.

Měl bych dotaz. Bylo by dobré přejít z JAVA na RUST? Už někdo z vás přešel z jiného jazyka a začal se věnovat výhradně RUSTu?

nm

Nemusíš prechádzať, dá sa to používať paralelne. Ak si naučený používať funkcionálne vlastnosti Javy, na Rust to nie je až taký skok. A je to veľmi uspokojujúce, vidiet program napísany v rust-e, ktorý proste nepadá na výnimkach a je rýchly.

Ako spomenuli vyššie, Rustom sa asi neuživíš, potrebuje ten jazyk nejakého veľkého hráča, ktorý by ho pretlačil do veľkého biznisu. (cryptobros to zatiaľ nie sú)
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: novomente 20. 09. 2025, 01:10:40
Rust je poměrně novým jazykem a řekl bych, že má budoucnost. Nemyslím si, že by byl náhradou Javy, ale spíš náhradou C++. Pokud bych byl začátečníkem, tak bych do Rustu šel.

No právě. Rust je nový a věřím, že má budoucnost. Java je již prozkoumaná snad ze všech stran. Ale mladost Rustu umožní vymýšlet nové programovací techniky. Kdo ví? Třeba na něco zajímavého přijdu.

BTW je pravda, že nemám v úmyslu se živit programováním, ale kdybych nastupoval teď na vysokou školu a chtěl se živit programováním, rozhodně bych šel právě do Rustu. Dokonce bych i doporučoval Rust na vysoké škole také vyučovat.

Co se týká Javy a C++, tak jsou dneska samozřejmé hvězdy a ještě dlouho budou, ale i tyto jazyky nějak začínali.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Kit 20. 09. 2025, 01:37:59
BTW je pravda, že nemám v úmyslu se živit programováním, ale kdybych nastupoval teď na vysokou školu a chtěl se živit programováním, rozhodně bych šel právě do Rustu. Dokonce bych i doporučoval Rust na vysoké škole také vyučovat.

Co se týká Javy a C++, tak jsou dneska samozřejmé hvězdy a ještě dlouho budou, ale i tyto jazyky nějak začínali.

Zrovna studuji XProc, který podle mne skoro nikdo nezná, ale rozhodně je zajímavý. Je důležité si rozšiřovat obzory i směrem, který je mimo majnstrým. Zatím si však komerčně vystačím s PHP a XSLT.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Filip Jirsák (forum) 20. 09. 2025, 10:00:28
Zrovna studuji XProc, který podle mne skoro nikdo nezná, ale rozhodně je zajímavý.
XProc se moc neujal, ne? Zajímal jsem se o to v době kolem vydání první verze specifikace, pak jsem se na to ještě párkrát podíval. Ale existovala jen jedna nebo dvě implementace a jejich možnosti byly dost omezené.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Filip Jirsák (forum) 20. 09. 2025, 10:08:46
Měl bych dotaz. Bylo by dobré přejít z JAVA na RUST? Už někdo z vás přešel z jiného jazyka a začal se věnovat výhradně RUSTu?
To záleží na tom, čemu se chcete věnovat. Pokud se chcete věnovat programování enterprise aplikací nebo programování pro Android, tam s Rustem nepochodíte. Pokud chcete programovat věci, kde je důležitá rychlost nebo nenáročnost na zdroje (embedded, zpracování videa apod.), tedy to, co by se dříve psalo v C, věnujte se Rustu.

A samozřejmě vám nic nebrání naučit se dobře obojí :-) I když to není tak snadné, jak to vypadá – spousta lidí sice „serializuje“ své programy v různých programovacích jazycích, ale mentálně používají pořád jenom jeden programovací jazyk. Kód v „Javě“, který napsal C++ programátor, nebo v „JavaScriptu“ napsaný Java programátorem je pak dost utrpení. V „JavaScriptu“ to nakonec vyřešili  tak, že jim kousek Javy do JavaScriptu přidali…
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Jožka Niemand 20. 09. 2025, 11:48:39
Nemyslím si, že by byl náhradou Javy, ale spíš náhradou C++.

Už zas chce niekto nahradzovať C++?? To sa naozaj nestane...

Je mi jasné, že C++ tu bude ještě dlouho, ale snad uznáš, že Rust je o něco bezpečnější a že dává méně prostoru, jak se střelit do nohy.
To není zas tak silný argument, jak si spousta lidí myslí. Snaha o takové jazyky tu byla už dávno a stejně oproti těm "nebezpečnějším" vždycky hrály spíše druhořadou roli. Asi nejznámější příklad - Pascal vs. C. Pascal nepochybně je bezpečnější a přehlednější než C, tlačil se lidem do hlav už od středních škol, ale stejně nakonec většina těchto lidí přešla na C. Ten proces bych přirovnal k přechodu z cvičného letounu na "ostrý" stroj.
Za sebe říkám, že Rust mi nestojí za tu hromadu problémů, kterými se pokouší řešit jiné problémy. Je to podobné, jako by mi někdo místo češtiny nutil jiný jazyk, který nemá vyjmenovaná slova a shodu podmětu s přísudkem - zato říci v něm "dobrý den" je, jako když Wimmer učí maďarštinu. Jenže já v těchto pravopisných jevech chyby už dávno nedělám. Rustafariáni tvrdí, že každý v tom dělá chyby, ale já trvám na svém - chybu takového typu jsem v C neudělal, ani nepamatuji. Navíc pak tu je nedílná součást vývoje - testování.

Před nějakými 30 lety se kladly řečnické otázky, zda FORTRAN přežije rok 2000. C, a zejména C++, mělo přitom nepochybně mnohem silnější tah na branku v porovnání s FORTRANem-66 nebo 77, než má Rust oproti C++. Asi není špatné Rust umět (po mně to už nechtějte), ale pracovat na C++ nebo Javě je jistější chleba.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Filip Jirsák (forum) 20. 09. 2025, 12:15:24
Asi nejznámější příklad - Pascal vs. C. Pascal nepochybně je bezpečnější a přehlednější než C, tlačil se lidem do hlav už od středních škol, ale stejně nakonec většina těchto lidí přešla na C. Ten proces bych přirovnal k přechodu z cvičného letounu na "ostrý" stroj.
Pascal se používal v podobě Object Pascalu v Delphi. A řekl bych, že GUI aplikací bylo daleko víc napsaných v Delphi než v C nebo C++. Delphi pak porazila Java, ne C nebo C++.

Rust podle mne konkuruje spíš C než C++.

V Javě bude ještě dlouho mnohem víc aplikací, než v Rustu. To samé i když v menší míře platí i o C++. Ale výhoda programování je, že si můžete vybrat prakticky libovolný programovací jazyk, a hlady nezemřete. U některých bude trochu snazší najít práci, u jiných trochu složitější, ale pokud budete opravdu umět programovat, práci si najdete vždycky.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Kit 20. 09. 2025, 12:19:35
Zrovna studuji XProc, který podle mne skoro nikdo nezná, ale rozhodně je zajímavý.
XProc se moc neujal, ne? Zajímal jsem se o to v době kolem vydání první verze specifikace, pak jsem se na to ještě párkrát podíval. Ale existovala jen jedna nebo dvě implementace a jejich možnosti byly dost omezené.

Aktuální je verze XProc 3.1, která vyšla letos na jaře. Umí toho řádově víc než jednička. Hlavně více vstupů v různých formátech, včetně CSV a JSON. Umí i položit SQL dotaz a zpracovat výstup. Je toho docela dost. Existují dvě implementace - XML Calabash a MorganaXProc.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Kit 20. 09. 2025, 12:29:06
Před nějakými 30 lety se kladly řečnické otázky, zda FORTRAN přežije rok 2000. C, a zejména C++, mělo přitom nepochybně mnohem silnější tah na branku v porovnání s FORTRANem-66 nebo 77, než má Rust oproti C++. Asi není špatné Rust umět (po mně to už nechtějte), ale pracovat na C++ nebo Javě je jistější chleba.

Pro drcení čísel je Fortran stále nepřekonaným jazykem a stále je modernizován. Neznám jiný jazyk, který by tak efektivně pracoval s vícerozměrnými poli.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: balkovic 20. 09. 2025, 12:40:00
Pro drcení čísel je Fortran stále nepřekonaným jazykem a stále je modernizován. Neznám jiný jazyk, který by tak efektivně pracoval s vícerozměrnými poli.

Len sa to nikomu nechce prepisovať z predpokakanosti, že by v tom narobili chyby. A keď je to zapúzdrené v knižniciach a na používateľskej úrovni sa použije povedzme python, nikoho to ani netrápi. (Teda dovtedy, kým to neprináša nejaké nepríjemné obmedzenia)
Název: Re:Přechod z JAVA na RUST (ANO či NE)
Přispěvatel: snugar_i 20. 09. 2025, 19:21:57
Inak ja som JS dev

...

v tomto prípade Java a PHP sú celkom špatné jazyky, kvôli obskurdnej syntaxi v prípade Javy a nekonzistentnému API v prípade PHP

...

vyhoď Javu a PHP
To je teda objektivní příspěvek :-) Chápu, že máš rád JS a nemáš rád Javu a PHP, ale objektivně jsou všechny tři na stejné úrovni. Třeba já osobně bych mnohem radši dělal v Javě nebo PHP než se patlal s JS/TS peklem.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: CPU 20. 09. 2025, 19:27:19
Už se objevují zakázky, kde je Rust zmíněný jako preferovaný.
Za sebe musím říct, že mi přišla nabídka remote v USA v Rustu za MOC ZAJÍMAVOU SUMIČKU!
Konkrétně za natolik motivační, že to byl trojnásobek platu programátora v Praze.
Nakonec jsem to nevzal, protože jsem se místo učení Rustu flákal.
Ale nabídek na Java chodí samozřejmě mnohem víc, zatím.
Název: Re:Přechod z JAVA na RUST (ANO či NE)
Přispěvatel: Mlocik97 20. 09. 2025, 19:30:05
Inak ja som JS dev

...

v tomto prípade Java a PHP sú celkom špatné jazyky, kvôli obskurdnej syntaxi v prípade Javy a nekonzistentnému API v prípade PHP

...

vyhoď Javu a PHP
To je teda objektivní příspěvek :-) Chápu, že máš rád JS a nemáš rád Javu a PHP, ale objektivně jsou všechny tři na stejné úrovni. Třeba já osobně bych mnohem radši dělal v Javě nebo PHP než se patlal s JS/TS peklem.

Ak by si prečítal celú správu a nevystrihol 3 vety z toho, tak by si pochopil. Vôbec nikde nefavorujem JS, odporúčam prakticky hociktorý jazyk okrem PHP a Javy. Ale na stejné úrovni tie jazyky rozhodne nie sú. Existujú merateľné štatistiky koľko znakov či riadkov kódu je potreba pre dosiahnutie stejnej funkcionality v JS a Jave (alebo akomkoľvek jazyku vs Jave), je merateľné počet inkonzistencií v API v PHP atď.
Název: Re:Přechod z JAVA na RUST (ANO či NE)
Přispěvatel: Kit 20. 09. 2025, 19:56:28
Vôbec nikde nefavorujem JS, odporúčam prakticky hociktorý jazyk okrem PHP a Javy. Ale na stejné úrovni tie jazyky rozhodne nie sú. Existujú merateľné štatistiky koľko znakov či riadkov kódu je potreba pre dosiahnutie stejnej funkcionality v JS a Jave (alebo akomkoľvek jazyku vs Jave), je merateľné počet inkonzistencií v API v PHP atď.

O Javě se ví, že je ukecaná. PHP je na tom o dost lépe. Nekonzistenci PHP API si můžeš snadno upravit vhodným dekorátorem. Měření počtu řádek je zcela irelevantní, podstatná je čitelnost kódu. Nadbytečné řádky jsou způsobeny nepochopením principu zapouzdření.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: BoneFlute 20. 09. 2025, 20:08:28
Nemyslím si, že by byl náhradou Javy, ale spíš náhradou C++.

Už zas chce niekto nahradzovať C++?? To sa naozaj nestane...
Protože to už se stalo.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: BoneFlute 20. 09. 2025, 20:20:54
U Javy bych zdůraznil tyto výhody:
- je to silně etablovaný jazyk
- je to jazyk nad běhovým prostředím
- je to snadný jazyk na naučení i používání
 
U Rustu bych zdůraznil tyto výhody:
- vytváří to rychlé a kompaktní binárky na úrovni C/C++
- snaží se o maximální bezpečnost, víc než Java
- má bohatý výrazový aparát
- má vestavěný systém pro balíčky, překlady, testování, dokumentaci, a podobně

Pokud chceš vydělávat peníze, tak Rust ještě není to pravé.
Pokud si chceš rozšířit obzory stran programování, tak je to výborná volba, ale Haskell by byla ještě lepší.
Pokud chceš praktický jazyk, kterým lze vytvářet užitečné aplikace a přitom zužitkovat každou hodinu jeho studia, a přitom chceš moderní syntax a nástroje, tak pak je Rust výborná volba.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: CPU 20. 09. 2025, 20:24:27
Mimochodem, USA prý zatížili H-1B vízum částkou $100,000 ročně, za tři roky byste si takhle našetřili na fungl nový Aston Martin DB12 v plný palbě. Takže 160 tisíc korun měsíčně dáte jenom za to vízum, což na výplatě asi částečně pocítíte. Pohledem malého človíčka z Horní dolní to je straně moc peněz, ale šikovný vývojář si tam vydělá 20 000 USD měsíčně a po pár letech si můžete požádat o občanství.
A zároveň to znamená, že se bude víc lidí najímat na remote práci.
Před Covidem hodně firem trvalo na přestěhování, to se při Covidu změnilo a teď to bude zase o dost běžnější.

Ale zpátky k Rustu, podle mě to není špatná volba.

https://www.indeed.com/jobs?q=rust+developer&l=new+york%2C+ny&radius=35&from=searchOnDesktopSerp&vjk=5eb1eabb7184d320

200 tisíc dolarů ročně = 330 tisíc měsíčně za práci v Rustu...pracovat za to v ČR...jako dostanete se k lepším nabídkám, ale tohle jsou právě ty joby, které budou teď remote.

A co se stane:
Indové využijí příležitosti a pokusí se urvat co nejvíc jobíků v USA za 200 000 USD/měsíčně.
Češi budou kníkat, kroutit si koulema, stěžovat si, ale reálně makat v ČR za nějakých 100 000 Kč, kolik programátor v ČR má (v Praze samozřejmě mnohem víc).

Respekt vůči Indům, sice prd umí, ale nejsou to zabělci a umí si o peníze říct. A nakonec tyhle joby urvou.
My Češi máme často moc malou dušičku, moc se bojíme, rádi fňukáme, vysvětlujeme proč to nejde a schováváme se pod kámen.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Radek Miček 20. 09. 2025, 20:41:05

U Rustu bych zdůraznil tyto výhody:
- snaží se o maximální bezpečnost, víc než Java

Pravda je, že se asi snaží. Nicméně stále jsou v kompilátoru bugy, někdy staré i řadu let, které umožňují v safe kódu vyvolat segfault nebo přetypovat cokoliv na cokoliv jiného. Krom toho pak pravidla pro aliasing zatím nejsou specifikována, takže není zatím jasné, které crates mají nedefinované chování a které jsou v pořádku.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: echo_zulu 20. 09. 2025, 20:46:01
Nemyslím si, že by byl náhradou Javy, ale spíš náhradou C++.

Už zas chce niekto nahradzovať C++?? To sa naozaj nestane...

Je mi jasné, že C++ tu bude ještě dlouho, ale snad uznáš, že Rust je o něco bezpečnější a že dává méně prostoru, jak se střelit do nohy.

To je v kontexte mojej odpovede úplne irelevantné. Rust nič nenahradzuje. Nahradenie niečoho znamená, že to, čo je nahradené, sa prestane používať. A začne sa používať to, čím to bolo nahradené. Masovo. Rust je jednoducho ďalšia možnosť. Alternatíva. V niektorých smeroch s rozšírenou funkcionalitou.

Osobne ale naozaj nechápem to nadšenie členov komunity Rustu ohľadne náhrady C++ Rustom.

Pretože ak by C++ bolo naozaj nahradené, čo sa môže stať jedine tak, že by bolo legislatívne vytlačené z obchodne zaujímavých oblastí, tak tí, ktorí v ňom píšu, predsa len tak z pracovného trhu neodídu, ale jednoducho začnú písať v Ruste. A to bude pre tých, čo v Ruste píšu teraz a pravdepodobne sa cítia kvôli tomu byť výnimočnými, aspoň mi to tak pripadá, súdiac podľa tých konfrontačných príspevkov voči C++, veľmi-veľmi nepríjemná konkurencia.

Inak si myslím, že by bolo na čase, aby sa takéto výkriky do tmy prestali objavovať pretože to naozaj nikomu neprospieva.

A čo sa bezpečnosti C++ týka, letné zasadanie v Sofii nejaké veci naznačuje.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: anonacct 20. 09. 2025, 21:02:02
Rust konkuruje více jazykům - C, C++, Go, node.js, Java, atd...

Ono se to nezdá, ale rust je celkem multiúčelový a díky package managementu je celkem jednoduché ho použít pro různé věci. Já už bych třeba nikdy nechtěl psát server nějaké služby v C++. Kdysi jsem měl oblíbený node.js právě pro tu jednoduchost napsat v tom nové věci nebo nějaké jednoduché služby, co jsem potřeboval, ale dnes mám radši rovnou použít rust.

Lidi co říkají, že rust nenahradí C++ žijou ve vlastním omezeném světě. Ono už se to totiž děje, sice salámovou metodou, ale jede se.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: BoneFlute 20. 09. 2025, 21:09:46

U Rustu bych zdůraznil tyto výhody:
- snaží se o maximální bezpečnost, víc než Java

Pravda je, že se asi snaží. Nicméně stále jsou v kompilátoru bugy, někdy staré i řadu let, které umožňují v safe kódu vyvolat segfault nebo přetypovat cokoliv na cokoliv jiného. Krom toho pak pravidla pro aliasing zatím nejsou specifikována, takže není zatím jasné, které crates mají nedefinované chování a které jsou v pořádku.

Na jednu stranu mám tendenci s tebou souhlasit; už jen z toho principu, že Rust je mladý, musí tam být chyby.

Na druhou stranu mi to tak trochu kazí, že příklady, které jsi doteď uváděl byly špatné a nepotvrzovali tvé tvrzení.


v kompilátoru bugy, ... které umožňují v safe kódu vyvolat segfault nebo přetypovat cokoliv na cokoliv jiného.
Rust sice i v unsafe něco hlídá, ale podstatou unsafe je, že to může zbuchnout (dokonce i transitivně v safe kódu který unsafe použije). Takže jaký bug?


Krom toho pak pravidla pro aliasing zatím nejsou specifikována, takže není zatím jasné, které crates mají nedefinované chování a které jsou v pořádku.
Tady se nechytám, tak se k tomu nebudu vyjadřovat
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: BoneFlute 20. 09. 2025, 21:17:58
Rust konkuruje více jazykům - C, C++, Go, node.js, Java, atd...

Ono se to nezdá, ale rust je celkem multiúčelový a díky package managementu je celkem jednoduché ho použít pro různé věci. Já už bych třeba nikdy nechtěl psát server nějaké služby v C++. Kdysi jsem měl oblíbený node.js právě pro tu jednoduchost napsat v tom nové věci nebo nějaké jednoduché služby, co jsem potřeboval, ale dnes mám radši rovnou použít rust.

Psát webovou aplikaci v C úplně normální není. V Rustu klidně. Je to jen o trošku těžší než v PHP, nebo Pythonu.

Když jsem nucen psát v PHP, Python, Javascript je to proto, protože klient má hosting, nebo legacy kód, nebo vývojáře.
Když jsem nucen psát v C#, je to proto, protože klient má existující codebase a vývojáře.
Když jsem nucen psát v Javě, tak proto, protože telefony. Ale Rust už zalejzá i tam.
Javascript/Typescript do prohlížeče je stále nejvhodnější volba.


Lidi co říkají, že rust nenahradí C++ žijou ve vlastním omezeném světě. Ono už se to totiž děje, sice salámovou metodou, ale jede se.
Tak jim to dopřejme.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: echo_zulu 20. 09. 2025, 21:18:24
Lidi co říkají, že rust nenahradí C++ žijou ve vlastním omezeném světě.

Tak určite...
Název: Re:Přechod z JAVA na RUST (ANO či NE)
Přispěvatel: Filip Jirsák (forum) 20. 09. 2025, 21:24:19
Existujú merateľné štatistiky koľko znakov či riadkov kódu je potreba pre dosiahnutie stejnej funkcionality v JS a Jave
Nějaké ještě méně relevantní kritérium už vás nenapadlo?
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Radek Miček 20. 09. 2025, 21:33:09
v kompilátoru bugy, ... které umožňují v safe kódu vyvolat segfault nebo přetypovat cokoliv na cokoliv jiného.
Rust sice i v unsafe něco hlídá, ale podstatou unsafe je, že to může zbuchnout (dokonce i transitivně v safe kódu který unsafe použije). Takže jaký bug?

Třeba tohle je bug starý cca 10 let, který ani nevím jestli někdo umí opravit (protože, kdyby to uměli, tak by ho tam nejspíš nenechali). Je to program, co používá již uvolněný vektor:

Kód: [Vybrat]
static UNIT: &'static &'static () = &&();

fn helper<'a, 'b, T>(_: &'a &'b (), v: &'b T, _: &()) -> &'a T { v }

fn anything_to_static<'a, T>(x: &'a T) -> &'static T {
    let f: fn(_, &'a T, &()) -> &'static T = helper;
    f(UNIT, x, &())
}

fn main() {
    let v = vec![1; 50_000_000];
    let my_ref = &v;
    let static_ref = anything_to_static(my_ref);
    drop(v);

    // Use after free.
    let sum: u64 = static_ref.iter().sum();
    println!("{}", sum);
}

Číslo bugu 25860 (https://github.com/rust-lang/rust/issues/25860)
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Radek Miček 20. 09. 2025, 21:38:00
Případně si ten můj program lze pustit v playgroundu (https://play.rust-lang.org/?version=stable&mode=release&edition=2024&gist=e66bb9466404a9f25483e17ce50d2ae2) a uvidí, že výsledkem je SIGSEGV.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Kit 20. 09. 2025, 21:49:41
Rust konkuruje více jazykům - C, C++, Go, node.js, Java, atd...

Ono se to nezdá, ale rust je celkem multiúčelový a díky package managementu je celkem jednoduché ho použít pro různé věci. Já už bych třeba nikdy nechtěl psát server nějaké služby v C++. Kdysi jsem měl oblíbený node.js právě pro tu jednoduchost napsat v tom nové věci nebo nějaké jednoduché služby, co jsem potřeboval, ale dnes mám radši rovnou použít rust.

Psát webovou aplikaci v C úplně normální není. V Rustu klidně. Je to jen o trošku těžší než v PHP, nebo Pythonu.

Když jsem nucen psát v PHP, Python, Javascript je to proto, protože klient má hosting, nebo legacy kód, nebo vývojáře.
Když jsem nucen psát v C#, je to proto, protože klient má existující codebase a vývojáře.
Když jsem nucen psát v Javě, tak proto, protože telefony. Ale Rust už zalejzá i tam.
Javascript/Typescript do prohlížeče je stále nejvhodnější volba.

Jasné vyjádření, že pro různé účely jsou vhodné různé jazyky. Za mne pro web PHP, výstupní šablony XSLT, frontend Javascript, systémové utility C/C++ nebo možná i Rust, pro AI Python, pro síťové nástroje Go, pro obchodní aplikace Java a další. Vzájemně se jejich působnost překrývá, však to jsou Turingovsky kompletní jazyky - tedy až na SQL a jemu podobné.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: BoneFlute 20. 09. 2025, 22:55:47
...

Tak teď jsem si pěkně naběhl. Přehlédl jsem se, a myslel jsem si, že píšeš o unsafe kódu, ale ty jsi psal o safe.
Sorry.
A děkuji za příklad.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: balkovic 21. 09. 2025, 01:36:19
Lidi co říkají, že rust nenahradí C++ žijou ve vlastním omezeném světě. Ono už se to totiž děje, sice salámovou metodou, ale jede se.
Tak jim to dopřejme.

Predpokladám rustizáciu C++, už rustoví krtkovia pracujú a je to nepopulárne. https://developers.slashdot.org/story/25/09/20/0449252/c-committee-prioritizes-profiles-over-rust-style-safety-model-proposal
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: BoneFlute 21. 09. 2025, 02:19:44
Lidi co říkají, že rust nenahradí C++ žijou ve vlastním omezeném světě. Ono už se to totiž děje, sice salámovou metodou, ale jede se.
Tak jim to dopřejme.

Predpokladám rustizáciu C++, už rustoví krtkovia pracujú a je to nepopulárne. https://developers.slashdot.org/story/25/09/20/0449252/c-committee-prioritizes-profiles-over-rust-style-safety-model-proposal

Profily jsou rozumný kompromis: snaží se dát nějaké záruky, ale s ohledem na realitu C++ ekosystému – velké množství legacy kódu, zpětné kompatibilita, nemožnost dosáhnout výsledku, aniž by se udělal zásadní řez do jazyka. Velkou roli hraje i mentální nastavení Céčkarů, kteří se jen neradi vzdávají pocitu kontroly nad kódem.
A naopak, pokud by někdo opravdu chtěl zaručenou paměťovou bezpečnost jako v Rustu, profily pravděpodobně nebudou stačit – chybí některé klíčové mechanismy (borrow checker, restrikce aliasování mutable referencí, atd.).

Na druhou stranu dobrá zpráva je, že pro nové aplikace není důvod již C++ používat.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: echo_zulu 21. 09. 2025, 19:55:53
Na druhou stranu dobrá zpráva je, že pro nové aplikace není důvod již C++ používat.

To už láskavo nechajte na tých, ktorí o tom rozhodujú.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: a6b 21. 09. 2025, 20:05:05
javu jsem mel kdysi rad kvuli gui s knihovnami swing.
c++ musim pouzivat profesne, ale radeji mam ciste c.
takze chci si javu i c++ ponechat a doucit se rust, ale jeste vice se mi libi golang, kvuli podobe s c.
rust mi pripada jako potomek c++ a golang jako potomek c.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: BoneFlute 21. 09. 2025, 20:50:07
doucit se rust, ale jeste vice se mi libi golang, kvuli podobe s c.
rust mi pripada jako potomek c++ a golang jako potomek c.

golang vnímám jako zjednodušení C, escape-analýza, etc.
U Rustu nevidím nic, co by měl společného s C++. Jde úplně jinou cestou. Skoro až opačnou.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Franta Kučera 21. 09. 2025, 20:58:51
U Rustu nevidím nic, co by měl společného s C++. Jde úplně jinou cestou. Skoro až opačnou.

Proto to s tím nahrazováním C++ nebude až tak horké.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: BoneFlute 21. 09. 2025, 21:07:07
U Rustu nevidím nic, co by měl společného s C++. Jde úplně jinou cestou. Skoro až opačnou.

Proto to s tím nahrazováním C++ nebude až tak horké.

Pro kterou aplikaci je C++ vhodnější než Rust?

- Micročipy (ale prej...)
- Legacy aplikace napsaná v C++
- C++ vývojáři
- Možná ještě to stabilní ABI by mohlo něco znamenat, ale to nedokážu posoudit.

Napadá vás něco dalšího?
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: echo_zulu 21. 09. 2025, 21:08:14
U Rustu nevidím nic, co by měl společného s C++.

Memory model. Čo je mimochodom celkom podstatná vec...
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: echo_zulu 21. 09. 2025, 21:16:29
Pro kterou aplikaci je C++ vhodnější než Rust?

- Micročipy (ale prej...)
- Legacy aplikace napsaná v C++
- C++ vývojáři
- Možná ještě to stabilní ABI by mohlo něco znamenat, ale to nedokážu posoudit.

Napadá vás něco dalšího?

Ani nie, iba toto: Qt/Qt3D, Unreal Engine, Chromium a systémy založené na ňom, CUDA/HIP, OpenCV, CGAL/OpenCascade, API CAD aplikácií, no a potom všetko, kde potrebujete certifikáciu, pre Automotive/aerospace/medical, ako napríklad MISRA/AUTOSAR/ISO 26262/DO-178C
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: echo_zulu 21. 09. 2025, 21:29:24
c++ musim pouzivat profesne

skúste si pozrieť nejaké aktuálne video z konferencií, možno vás to zaujme a možno vám to zlepší pohodu v práci. pokiaľ teda máte možnosť používať nový prekladač. v piatok skončil cppcon a tri videá sú už na youtube.

ale jeste vice se mi libi golang

čo bude asi kvôli jeho jednoduchosti?

inak, čo sa týka rustu, tak ja s ním problém nemám, ale nech mi nikto nehovorí, že je to náhrada c++.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: balkovic 21. 09. 2025, 21:31:48
Ani nie, iba toto: Qt/Qt3D, Unreal Engine, Chromium a systémy založené na ňom, CUDA/HIP, OpenCV, CGAL/OpenCascade, API CAD aplikácií, no a potom všetko, kde potrebujete certifikáciu, pre Automotive/aerospace/medical, ako napríklad MISRA/AUTOSAR/ISO 26262/DO-178C

Myslím, že vymenované zapadá do kolonky legacy aplikácie, ktorú spomínal BoneFlute.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Radek Miček 21. 09. 2025, 21:40:42
U Rustu nevidím nic, co by měl společného s C++. Jde úplně jinou cestou. Skoro až opačnou.

Proto to s tím nahrazováním C++ nebude až tak horké.

Pro kterou aplikaci je C++ vhodnější než Rust?

- Micročipy (ale prej...)
- Legacy aplikace napsaná v C++
- C++ vývojáři
- Možná ještě to stabilní ABI by mohlo něco znamenat, ale to nedokážu posoudit.

Napadá vás něco dalšího?

Myslím, že Rust není moc přizpůsobený na situace, kdy část kódu má mít omezenou paměť nebo kdy dochází paměť. Což je například užitečné ve webové serveru - mohu chtít aby na každý request bylo použito maximálně X bajtů paměti. A bohužel ve standardní knihovně Rustu nemůžu říct nějaké funkci, aby alokovala pouze v nějakém omezeně velkém prostoru (například každý request by dostal svůj specializovaný alokátor).
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: BoneFlute 21. 09. 2025, 22:08:27
U Rustu nevidím nic, co by měl společného s C++. Jde úplně jinou cestou. Skoro až opačnou.

Proto to s tím nahrazováním C++ nebude až tak horké.

Pro kterou aplikaci je C++ vhodnější než Rust?

- Micročipy (ale prej...)
- Legacy aplikace napsaná v C++
- C++ vývojáři
- Možná ještě to stabilní ABI by mohlo něco znamenat, ale to nedokážu posoudit.

Napadá vás něco dalšího?

Myslím, že Rust není moc přizpůsobený na situace, kdy část kódu má mít omezenou paměť nebo kdy dochází paměť. Což je například užitečné ve webové serveru - mohu chtít aby na každý request bylo použito maximálně X bajtů paměti. A bohužel ve standardní knihovně Rustu nemůžu říct nějaké funkci, aby alokovala pouze v nějakém omezeně velkém prostoru (například každý request by dostal svůj specializovaný alokátor).

To je velice zajímavá poznámka.

Z mého rychlého studia, co jsem narychle zjistil:

Existuje std::panic::catch_unwind() pro práci s nebezpečným kódem - to musím vyzkoušet.

Od Rustu 1.70 je stabilní trait Allocator. Ale vypadá to na spoustu unsafe.

Pak jsou k dispozici nějaké knihovny které umí pracovat s předalokovanou pamětí.

Na první pohled mi to přijde jako plichta :-) Vypadá to, že v Rustu se to dělá tak, že se napíše unsafe řešení, které je následně k dizpozici vyšší úrovni... Takže rozhodně nic geniálně předpřipraveného.

Ale pro mě to znamená, že si musím vyzkoušet ve své aplikaci, kde používám scriptovací jazyk v Rust engine, co udělá, když tím scriptem vyžeru veškerou paměť.
Název: Re:Přechod z Javy na Rust. Ano či ne?
Přispěvatel: Kit 22. 09. 2025, 00:21:55
inak, čo sa týka rustu, tak ja s ním problém nemám, ale nech mi nikto nehovorí, že je to náhrada c++.

Možná jsem s tou náhradou přestřelil, protože ten pojem chápu trochu jinak. Co třeba alternativa či konkurence?