IuRe (Iuridicum Remedium) vyhlásila Ceny Velkého bratra za rok 2025. Slídily roku jsou automobilka Volkswagen, Meta a česká Ministerstva vnitra a průmyslu a obchodu. Autorem Výroku Velkého bratra je dánský ministr spravedlnosti zpochybňující právo na šifrovanou komunikaci. Naopak Pozitivní cenu získali studenti Masarykovy univerzity za odpor proti nucení do používaní aplikace ISIC.
Po osmi měsících vývoje byla vydána nová verze 0.16.0 programovacího jazyka Zig (Codeberg, Wikipedie). Přispělo 244 vývojářů. Přehled novinek v poznámkách k vydání.
Nejnovější X.Org X server 21.1.22 a Xwayland 24.1.10 řeší 5 bezpečnostních chyb: CVE-2026-33999, CVE-2026-34000, CVE-2026-34001, CVE-2026-34002 a CVE-2026-34003.
Po roce vývoje od vydání verze 1.28.0 byla vydána nová stabilní verze 1.30.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.30.
Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2026-04-13. Přehled novinek poznámkách k vydání. Nově ve výchozím nastavení příkaz sudo vyžaduje heslo.
Společnost Blackmagic Design oznámila vydání verze 21 svého proprietárního softwaru pro editování videí a korekci barev DaVinci Resolve běžícího také na Linuxu. Z novinek je nutno vypíchnout možnost editování fotografií. Základní verze DaVinci Resolve je k dispozici zdarma. Plnou verzi DaVinci Resolve Studio lze koupit za 295 dolarů.
Multipatformní renderovací jádro webového prohlížeče Servo je na crates.io. S vydáním verze 0.1.0 (LTS).
Nadace FreeBSD Foundation před týdnem oznámila projekt Laptop Integration Testing. Vyzvala dobrovolníky, aby pomocí nástroje otestovali podporu FreeBSD na svých zařízeních a výsledky odeslali vývojářům. Vznikla stránka Nejlepší notebooky pro FreeBSD.
Na začátku srpna vstoupí v účinnost nová evropská pravidla transparentnosti pro umělou inteligenci (AI). Zavádějí povinnost jakýkoli AI obsah označit, informovat o takzvaných deepfakes a upozornit uživatele, že komunikuje s umělou inteligencí. Cílem opatření je omezit šíření manipulativního či klamavého obsahu, zvýšit důvěru v digitální prostředí a chránit uživatele.
Connor Byrne z USA používal pro přihlašování na svůj iPhone 13 s iOS 18 heslo obsahující háček. Po aktualizaci na iOS 26.4 se už ale do telefonu nepřihlásí. Při přihlašování nelze tento háček zadat. Apple jej prostě odstranil [The Register].
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).