Společnost Epic Games vydala verzi 5.7 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.
Intel vydal 30 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20251111 mikrokódů pro své procesory.
Byla vydána říjnová aktualizace aneb nová verze 1.106 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.106 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Canonical pro své zákazníky, předplatitele Ubuntu Pro, prodloužil podporu Ubuntu LTS z 12 let na 15 let (Legacy add-on). Týká se verzí od 14.04 (Trusty Tahr).
Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 5.0.0. Nově je oficiálně podporován Linux ARM64/AArch64. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byla vydána verze 10 dnes již multiplatformního open source frameworku .NET (Wikipedie). Přehled novinek v příspěvku na blogu Microsoftu. Další informace v poznámkách k vydání na GitHubu nebo v přednáškách na právě probíhající konferenci .NET Conf 2025.
Rodina hardwaru služby Steam se začátkem roku 2026 rozroste. Steam Deck doplní nový Steam Controller, herní PC Steam Machine se SteamOS s KDE Plasmou a bezdrátový VR headset s vlastními ovladači Steam Frame.
Amazon Web Services (AWS) oznámil (en) výstavbu Fastnetu – strategického transatlantického optického kabelu, který propojí americký stát Maryland s irským hrabstvím Cork a zajistí rychlý a spolehlivý přenos cloudových služeb a AI přes Atlantik. Fastnet je odpovědí na rostoucí poptávku po rychlém a spolehlivém přenosu dat mezi kontinenty. Systém byl navržen s ohledem na rostoucí provoz související s rozvojem umělé inteligence a
… více »Evropská komise zkoumá možnosti, jak přinutit členské státy Evropské unie, aby ze svých telekomunikačních sítí postupně vyloučily čínské dodavatele Huawei a ZTE. Místopředsedkyně EK Henna Virkkunenová chce změnit doporučení nepoužívat rizikové dodavatele při budování mobilních sítí z roku 2020 v právně závazný požadavek.
sudo-rs, tj. sudo a su přepsané do programovacího jazyka Rust, již obsaženo v Ubuntu 25.10, bylo vydáno ve verzi 0.2.10. Opraveny jsou 2 bezpečnostní chyby.
Nokia oznámila přechod projektu Qt pod otevřenou správu. Do Qt projektu tak mohou přispívat jak firmy, tak jednotlivci a zároveň mohou tito vývojáři ovlivňovat směřování projektu. „KDE Free Qt Foundation“ pak zajišťuje, že Qt bude vždy dostupné jako svobodný software s licencemi LGPL 2.1 a GPL 3. KDE tento vývoj vítá.
Tiskni
Sdílej:
Z toho C kódu co jsem viděl, to pak vypadá, že co volání funkce, to kontrola výstupového kódu a reakce na chybový stav. Pak 2/3 kódu funkce je "nerelevatní" k primárnímu poslání funkce. To mi opravdu nepřijde výhodné.A jaký kód jsi viděl;)?
Že je to rychlejší? To bych se divil. Vždyť je za každým voláním funkce testování podmínky. U vyjímek nic takového není, kód je výrazně lineárnější.Testování podmínky při návratu z funkce jsou 2 instrukce. Pokud nechci psát IF, tak můžu použít makro.
Že je zpracování vyjímek pomalé? No a co, vyjímky jsou od toho vyjímky, že jsou vyjímečné.Otázka zůstává pořád stejná, na co všechno chceš použít výjimky? Já bych třeba pro chybnou alokaci paměti použil spíš výjimku, ale u chyby při otevírání souboru raději chybový kód. Možná je problém v tom, že se na C++ díváš jako na Javu. Pro mě jsou to 2 odlišné světy. Chtít po C++ aby to bylo jak Java, nebo naopak, prostě nemá cenu.
2 instrukce jsou stále pomalejší než žádná instrukce jako je tomu při použití vyjímek ;) Prostě vaše tvrzení, že návratové kódy jsou rychlejší, není pravdivé.2 instrukce jsou naprosto zanedbatelné, když bereš v úvahu volání funkce. Navíc pokud je volaná funkce inline, tak testování návratové hodnoty odpadá úplně (ten jump se vygeneruje už v té inline funkci).
A to byla moje pointa. Že je to nárůst nepatrný vám neberu.Při povolení výjimek je nárůst binárky mnohem větší, než při zpracování návratové hodnoty. Důvod je ten, že ty unwind tabulky se někam musí uložit. Navíc každá "exception enabled" funkce musí obsahovat peciální prolog a epilog.
Například kód Firefoxu. Řádky jako: if (NS_FAILED(rv)) return rv;Já osobně používám RETURN_ON_ERROR(kód), nenaroste počet řádků a v 90% situací postačuje. Jinak kód FF je zrovna velmi špatný příklad;)
Java vs. C++ jako jazyk, ne jako JVM versus nativní kód, samozřejmě srovnávat lze. Java je jazyk z C++ vzešlý, snažila se vyhnout chybám předchůdce, a vesměs se jí to i podařilo.Já si zase myslím, že C# se vyhl chybám Javy, a můžeme se tu hádat;)
Proč Cckaři nepoužívají vyjímky je dán historicky. Starší kompilátory neměli dobrou implementaci (alespoň se to všude tvrdí), programátoři se je nenaučili používat.I nové projekty, např. Chromium nebo V8 nepoužívají výjimky. Hodit všechno do jednoho pytle nejde. Jsou situace, kdy jsou výjimky zbytečné, a platit za ně daň v podobě většího a pomalejšího kódu nemá smysl. Druhá věc je ta, že pokud vytvořím knihovnu, která používá výjimky, tak ji už nikdo nemůže použít v kódu, který ty výjimky nepoužívá.
Samozřejmě bych volil vyjímku. Jestliže nastane vyjímka, což znamená chybu, neb chyba by vždy měla být vyjímečně, ideálně vůbec, čili jasně vyjímka, není nad čím mudrovat. Něco jiného je otázka, zda soubor kam budu zapisovat nejdříve otestovat, zda je zapisovatelný, nebo to "risknout" a nechat to "spadnout" až na operaci samotné. Záleží jak moc analyzujete stav jako vyjímečný, záleží na kontextu. Každopádně by ale knihovní funkce/metoda pro zápis neměla vracet úspěšnost v podobě kódu.Pro mě osobně ta situace není nijak výjimečná. I kdybych si otestoval, zda soubor X.Y můžu otevřít, tak během doby, než zavolám open(), ten soubor už může být třeba smazaný. Takže ve výsledku se ta výjimka stejně musí odchytit a zpracovat (jen v podobě větší režie).