Jaká je rychlost kódování v Rustu oproti C/C++. Máte někdo již dlouhodobější zkušenost? A co generování částí kódu Rustu pomocí AI?
Tu samou věc, kterou bych napsal v Java/C#/PHP za jednotku času, napíšu v Rustu za dvě jednotky času. (Proti C/C++ bohužel nemohu sloužit, je to už dlouho.)
LLM pomáhá hodně, používám. Ne celé aplikace, ale části a hledání problému ano. (Ale tam je to asi nepřenosné, vzhledem k tomu, jak kdo používá LLM jakým způsobem.)
Rád bych se zeptal, co Vás nejvíce zdržuje při porovnání programování v Java/C#/PHP oproti Rustu? Je to čtení kódu, odlišná syntaxe Rustu, odlišnost přístupu k přísným datovým typům (im/mutability) Rustu, neexistující knihovny, automatické doplňování kódu v IDE (jaké nástroje používáte? VS Code nebo JetBrains RustRover etc.) nebo ještě něco jiného? Rád bych totiž našel řešení, jak zrychlit vývoj v Rustu oproti Java/C#/PHP a hlavně oproti C++ tak, aby to bylo obráceně: přinejmenším Java/C#/PHP = 2 jednotky času oproti Rust = 1 jednotka času. Ale rád bych dosáhl poměr 1:10 ve prospěch Rustu. Bylo by to reálné? Třeba i s popmocí A.I.?
Předem díky za odpověď,
nm
Ne, není to reálné.
Java/C#/PHP používá GC. Což z principu znamená, že i když je Rust naprosto famózní v usnadňování věcí, tak některé situace prostě musíte explicitně rozhodnout. Takže vždycky to bude Java/C#/PHP 1jednotka, Rust 2jednotky, C/C++ cca 20jednotek.
Ano, je sice pravda, že je řada věcí, které musíte rozhodnout v Rustu i v Javě, či v C, ale to ve výsledné rovnici ničemu nepomůže. (Pokud se bavíme o rychlosti vývoje.)
Stojí za zmínku, že Rust díky své filozofii funguje tak, že většinu chyb odchytíte v compile-time, což přináší trochu ceny, zatímco u Java/C++ většinu chyb odchytě v client-time, což znamená, že tu cenu zaplatíte později. Je to podobný efekt jako psaní automatických testů.
LLM tomu moc nepomůže, protože ta dokáže poradit jak v Rustu tak v Javě. Ačkoliv, jak nad tím přemýšlím, mohlo by mít efekt, že Rust je one-way, takže třeba jo. Neodvažuji se posoudít.