abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 23:55 | Nová verze

    Grafický editor dokumentů LyX, založený na TeXu, byl vydán ve verzi 2.5.0. Oznámení připomíná 30. výročí vzniku projektu. Novinky zahrnují mj. vylepšení referencí nebo použití barev napříč aplikací, od rozhraní editoru po výstupní dokument.

    |🇵🇸 | Komentářů: 0
    včera 15:00 | Komunita

    F-Droid bannerem na svých stránkách a také v aplikacích F-Droid a F-Droid Basic upozorňuje na iniciativu Keep Android Open. Od září 2026 bude Android vyžadovat, aby všechny aplikace byly registrovány ověřenými vývojáři, aby mohly být nainstalovány na certifikovaných zařízeních Android. To ohrožuje alternativní obchody s aplikacemi jako F-Droid a možnost instalace aplikací mimo oficiální obchod (sideloading).

    Ladislav Hagara | Komentářů: 13
    20.2. 16:33 | Nová verze

    Svobodná historická realtimová strategie 0 A.D. (Wikipedie) byla vydána ve verzi 28 (0.28.0). Její kódový název je Boiorix. Představení novinek v poznámkách k vydání. Ke stažení také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    20.2. 04:44 | Nová verze

    Multimediální server a user space API PipeWire (Wikipedie) poskytující PulseAudio, JACK, ALSA a GStreamer rozhraní byl vydán ve verzi 1.6.0 (Bluesky). Přehled novinek na GitLabu.

    Ladislav Hagara | Komentářů: 1
    20.2. 01:11 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-1.2 a 20.04 OTA-12.

    Ladislav Hagara | Komentářů: 0
    19.2. 18:00 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová stabilní verze 2.0 otevřeného operačního systému pro chytré hodinky AsteroidOS (Wikipedie). Přehled novinek v oznámení o vydání a na YouTube.

    Ladislav Hagara | Komentářů: 1
    19.2. 16:00 | Zajímavý software

    WoWee je open-source klient pro MMORPG hru World of Warcraft, kompatibilní se základní verzí a rozšířeními The Burning Crusade a Wrath of the Lich King. Klient je napsaný v C++ a využívá vlastní OpenGL renderer, pro provoz vyžaduje modely, grafiku, hudbu, zvuky a další assety z originální kopie hry od Blizzardu. Zdrojový kód je na GitHubu, dostupný pod licencí MIT.

    NUKE GAZA! 🎆 | Komentářů: 6
    19.2. 13:33 | IT novinky

    Byl představen ICT Supply Chain Security Toolbox, společný nezávazný rámec EU pro posuzování a snižování kybernetických bezpečnostních rizik v ICT dodavatelských řetězcích. Toolbox identifikuje možné rizikové scénáře ovlivňující ICT dodavatelské řetězce a na jejich podkladě nabízí koordinovaná doporučení k hodnocení a mitigaci rizik. Doporučení se dotýkají mj. podpory multi-vendor strategií a snižování závislostí na vysoce

    … více »
    Ladislav Hagara | Komentářů: 4
    19.2. 12:22 | Humor

    Nizozemský ministr obrany Gijs Tuinman prohlásil, že je možné stíhací letouny F-35 'jailbreaknout stejně jako iPhony', tedy upravit jejich software bez souhlasu USA nebo spolupráce s výrobcem Lockheed Martin. Tento výrok zazněl v rozhovoru na BNR Nieuwsradio, kde Tuinman naznačil, že evropské země by mohly potřebovat větší nezávislost na americké technologii. Jak by bylo jailbreak možné technicky provést pan ministr nijak nespecifikoval, nicméně je známé, že izraelské letectvo ve svých modifikovaných stíhačkách F-35 používá vlastní software.

    NUKE GAZA! 🎆 | Komentářů: 45
    19.2. 06:00 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 162 (pdf).

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (18%)
     (6%)
     (0%)
     (11%)
     (27%)
     (2%)
     (5%)
     (2%)
     (12%)
     (26%)
    Celkem 925 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    stokrat nic zabilo vola....a i jednou nic mne nici

    22.1.2007 00:39 | Přečteno: 1530× | programovani | poslední úprava: 22.1.2007 00:40

    Tenhle zapisek je o nejhorsi veci na programovani, trivialni chyby s fatalnimi dusledky.

    Prepisy ve jmenech promennych pri vhodne zvoleny pojmenovaci konvenci jsou v pohode (tzn ze nejsou u sebe moc blizko a taky se jejich jmena nedaji snadno splest). Proste kompilator rekne pomerne srozumitelnou hlasku, ale jsou horsi veci, kdy se objevi v zdnalive bezproblemovym kodu podivna hlaska.

    Podobna se mi stala nedavno:

    for(i=0;i<10;i++);
    {
        pthread_join(thread[i],NULL);
        pthread_join(thread[i+10],NULL);
    }

    Takovy jednoduchy kod, ktery ceka az vsechny thready(20) zpracuji svoji ulohu. No a program obcas zatuhne, obcas hodi SIGSEG a ted kde ladit, kdyz to pise ze ta chyba je v pthread_join. No je to na infarkt najit chybu, ktera je fakt trivialni a vznikla obycejnou nepozornosti, pri vimovskym vkladani.Kdyz sme u toho nevite o nejakym unixovym programu pro refactoring C/C++ kodu??? Presne pro tohle by se to hodilo, protoze by to znovu zformatovalo text a prikaz by pekne sel na samostatnou radku.

    A zrovna dneska dalsi takova trivialitka co dokaze poradne otravit. K programu sem si chtel v ramci uspory mista udelat jednoduchy zipovani dat se kterymi se pracuje. Jen jednoduchej fork + exec. a potreboval sem to umistit jako pruchodovy. Kod na par radek a staci prohodit parametry v dup2 a hned zacne bzip2 hazet podivny hlasky o i/o error, z kterych se toho moc nepozna. Nastesti jeste ze existuje funkce fstat, ale stejne cloveka takovyhle veci otravi, kdyz musi v gdb overovat i to co vidi ze je dobre.

    Pouzivate neco(program, programovaci technika) proti takovymhle otravnym chybam, ktery zbytecne zabiraj cas pri debugovani?
    no zaverem jen poprat vsem co nejmin podobnych chyb.

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    wake avatar 22.1.2007 01:00 wake | skóre: 30 | blog: wake | Praha
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    jo, perl a { za ) ... ;-)
    Tento příspěvek má hlavičku i patičku!
    22.1.2007 01:10 qk | skóre: 15 | blog: qk_develop
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    jj, taky to obcas pouzivam, ale ne vzdy mam moznost delat na vlastnim programu s vlastni konvenci formatovani, proto by se hodil nejakej nastroj na refactoring, abych mohl psat ve svem stylu a posilat a prijimat v definovanem nekym jinym. Tohle je treba naprosto vyborny u Eclipse(bohuzel CDT neumi tohle pro C/C++).
    lankvil avatar 22.1.2007 03:12 lankvil | skóre: 8 | Praha
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    Na formatovani kodu v c se da pouzit napriklad indent. Po prohledani debianich balicku na me vypadlo i bcpp coz by melo fungovat i na c++ ale nezkousel sem to.

    Jinak takovy zakerny chyby nastvou to je fakt :) zvlast kdyz mas tech vic vlaken a spadne to jenom obcas
    Já mám taky blog
    22.1.2007 08:08 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    Multithreadové aplikace zásadně padají jen občas. Nejvíc to naštve, když ta mrcha padá jen na produkčním stroji a na testovacím ne a ne spadnout, přestože člověk nasimuluje několikanásobnou zátěž oproti tomu produkčnímu…
    22.1.2007 12:16 qk | skóre: 15 | blog: qk_develop
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    diky, ten indent vypada zajimave, urcite zkusim.
    22.1.2007 08:06 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    vim: :set autoindent

    btw, odporúčam začať používať (x)emacs :-) kto nevyskúša, nepochopí :-D

    22.1.2007 15:25 disorder | blog: weblog
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    btw ++ :)
    22.1.2007 08:55 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    Prepisy ve jmenech promennych pri vhodne zvoleny pojmenovaci konvenci jsou v pohode (tzn ze nejsou u sebe moc blizko a taky se jejich jmena nedaji snadno splest). Proste kompilator rekne pomerne srozumitelnou hlasku,…
    To je ten šťastnější případ. Vzhledem k masivnímu skriptování webových stránek na straně klienta se nyní ukazuje JavaScript jako dynamický jazyk bez nutnosti deklarace proměnných jako ne příliš šťastná volba pro klientské skriptování. Resp. pro několika řádkové skripty by stačil, ale to co se píše dnes… O nějaké srozumitelné hlášce se může programátorovi jenom zdát, a chybu v tom, že proměnnou elements jednou jedinkrát napíšete jako element můžete hledat klidně několik hodin (protože co je to platné vyvíjet primárně ve Firefoxu, když ta chyba je zrovna v kódu, který obchází nějaký nedodělek MSIE)… Doufám, že se dožiju renesance Java Appletů v prohlížečích, byť by i byly skryté a pouze manipulovali s DOMem prohlížeče, jako to dnes dělá JavaScript.
    22.1.2007 09:10 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    asi blbá otázka: vy kód negenerujete? :-D

    imho za väčšinou chýb stojí nevhodne zvolený postup vývoja :-)
    A vami spomínaný príklad s obchádzaním chýb? To je také ťažké vytvoriť si jednu medzivrstvu s rovnakým interface, implementovanú pre každý browser zvlášť? Pravda, medzivrstvovať či nemedzivrstvovať, to otázka. :-)

    22.1.2007 09:19 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    Generujeme, i když vstup je vlastně šablona JavaScriptu, kde se nahrazuje pár věcí – takže žádný GWT (to by byl kanón na vrabce).

    Mezivrstva tam samozřejmě je, bohužel překlep byl právě v té implementaci pro MSIE6. Při trochu složitějších skriptech bohužel hlášky MSIE o typu chyby a jejím místě jsou zcela nezávislé na tom, kde chyba skutečně je :-(
    22.1.2007 09:22 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    Při trochu složitějších skriptech bohužel hlášky MSIE o typu chyby a jejím místě jsou zcela nezávislé na tom, kde chyba skutečně je

    Podle mne je za vším ta zpropadená zpětná kompatibilita. Tahle tradice pochází už z dob CP/M, která měla pro všechny chyby celkem tři různé hlášky… :-)

    22.1.2007 09:38 Lu-Tze | skóre: 15 | blog: Lu-Tzeho blog
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    No v Javě by se ti to nestalo, protože bys napsal for (int i = ...
    22.1.2007 10:31 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    Což ovšem lze i v C++ a možná i v C99…
    DjAARA avatar 22.1.2007 12:32 DjAARA | skóre: 32 | Praha|Náklo|Olomouc
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    ano for (int i=…) v C99 lze
    22.1.2007 12:40 Scarabeus IV | skóre: 20 | blog: blogisek_o_gentoo | Praha
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    C99 by mel nadavat..., ale v cpp to jde urcite
    22.1.2007 12:43 Scarabeus IV | skóre: 20 | blog: blogisek_o_gentoo | Praha
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    for(int i=0;i<lines;i++)
    matice.c:32: error: ‘for’ loop initial declaration used outside C99 mode
    22.1.2007 13:00 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    Což ovšem naopak v praxi znamená, že v C99 je to korektní, ale zapomněl jste parser přepnout na C99 syntaxi.
    22.1.2007 15:48 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    Přesně tak, sám občas použiju :), ale pak to zase při čištení kódu vybírám, protože mi to přijde jako nekompatibilní prasárna :)... (kdyby byl jediný překládač gcc...)
    Baník pyčo!
    22.1.2007 16:29 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    Označovat ISO standard výrazem nekompatibilní prasárna bych označil za vpravdě revoluční počin… :-)
    23.1.2007 14:12 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    Třeba dělá v MS… ;-)
    22.1.2007 13:15 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    Podle gcc v C99 určitě, respektive, bez --std=c99 se mi podobná konstrukce nepovedla přeložit. Horší je Visual Studio, které vyžaduje příponu .cpp, jinak to nahlásí jako chybu.
    When your hammer is C++, everything begins to look like a thumb.
    22.1.2007 13:27 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    Okýnkáři a to jejich lpění na příponách… :-D Když nemohli rozlišit .c a .C, vymysleli si .cpp. :-D
    22.1.2007 14:25 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    oni by aj rozlišovali, ale .c++ zapísať nevedeli :-)
    22.1.2007 14:55 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    Nejsem si jistý, zda Visual Studio vůbec podporuje aspoň něco z C99. Typicky se třeba kvůli nim u multiplatformních projektů obcházejí standardní typy z <stdint.h>
    elviin avatar 23.1.2007 11:41 elviin | skóre: 29 | blog: elviin | Plzeň-Praha
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    afaik vs nevyzaduje priponu. Ted jsem prelozil s vs2005 soubor, ktery jsem prejmenoval z test5.cpp na test5:
    1>------ Build started: Project: test002, Configuration: Debug Win32 ------
    1>Compiling...
    1>test5
    1>Build log was saved at "file://d:\Projects\test002\test002\Debug\BuildLog.htm"
    1>test002 - 0 error(s), 0 warning(s)
    ========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
    
    22.1.2007 15:17 me
    Rozbalit Rozbalit vše Re: stokrat nic zabilo vola....a i jednou nic mne nici
    tak to se me jeste nikdy nestalo.... (a to v C++ programuju leta...)

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.