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í
×
    dnes 21:22 | Nová verze

    Byla vydána nová verze 8.5 (8.5.0) skriptovacího jazyka PHP používaného zejména k vývoji dynamických webových stránek. Přináší řadu novinek a vylepšení (URI Extension, Pipe Operator, Clone With, …). Vydána byla také příručka pro přechod z předchozích verzí.

    Ladislav Hagara | Komentářů: 0
    dnes 12:44 | IT novinky

    Evropská komise zahájila tři vyšetřování týkající se cloudových platforem Amazon Web Services (AWS) a Microsoft Azure. Evropská exekutiva, která plní také funkci unijního antimonopolního orgánu, chce mimo jiné určit, zda jsou americké společnosti Microsoft a Amazon v cloudových službách takzvanými gatekeepery, tedy hráči, kteří významně ovlivňují provoz internetu a musí dle nařízení o digitálních trzích (DMA) na společném trhu

    … více »
    Ladislav Hagara | Komentářů: 4
    dnes 12:33 | IT novinky

    Společnost Meta Platforms vyhrála ostře sledovaný spor o akvizici sítě pro sdílení fotografií Instagram a komunikační aplikace WhatsApp. Podle amerického soudu firma jejich převzetím neporušila antimonopolní zákon, protože si tak nemonopolizovala trh sociálních sítí. Žalobu na Metu podala před pěti lety americká Federální obchodní komise (FTC). FTC argumentovala, že Meta, tehdy známá jako Facebook, koupila tyto dvě společnosti v letech 2012 a 2014 proto, aby s nimi nemusela soutěžit.

    Ladislav Hagara | Komentářů: 0
    dnes 05:11 | IT novinky

    Home Assistant včera představil svůj nejnovější oficiální hardware: Home Assistant Connect ZBT-2 pro připojení zařízení na sítích Zigbee nebo Thread.

    Ladislav Hagara | Komentářů: 5
    včera 19:44 | Nová verze

    Byla vydána verze 9.1 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.

    Ladislav Hagara | Komentářů: 1
    včera 17:44 | IT novinky

    Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem zůstává El Capitan od HPE (Cray) s výkonem 1,809 exaFLOPS. Druhý Frontier má výkon 1,353 exaFLOPS. Třetí Aurora má výkon 1,012 exaFLOPS. Nejvýkonnější superpočítač v Evropě JUPITER Booster s výkonem 1,000 exaFLOPS je na čtvrtém místě. Nejvýkonnější český superpočítač C24 klesl na 192. místo. Karolina, GPU partition klesla na 224. místo a Karolina, CPU partition na 450. místo. Další přehledy a statistiky na stránkách projektu.

    Ladislav Hagara | Komentářů: 15
    včera 17:22 | IT novinky

    Microsoft představil Azure Cobalt 200, tj. svůj vlastní SoC (System-on-Chip) postavený na ARM a optimalizovaný pro cloud.

    Ladislav Hagara | Komentářů: 0
    včera 12:00 | IT novinky

    Co způsobilo včerejší nejhorší výpadek Cloudflare od roku 2019? Nebyl to kybernetický útok. Vše začalo změnou oprávnění v jednom z databázových systémů a pokračovalo vygenerováním problém způsobujícího konfiguračního souboru a jeho distribucí na všechny počítače Cloudflare. Podrobně v příspěvku na blogu Cloudflare.

    Ladislav Hagara | Komentářů: 3
    18.11. 23:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) první RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

    Ladislav Hagara | Komentářů: 0
    18.11. 23:22 | Komunita

    Eugen Rochko, zakladatel Mastodonu, tj. sociální sítě, která není na prodej, oznámil, že po téměř 10 letech odstupuje z pozice CEO a převádí vlastnictví ochranné známky a dalších aktiv na neziskovou organizaci Mastodon.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (46%)
     (19%)
     (18%)
     (23%)
     (15%)
     (23%)
     (15%)
     (17%)
    Celkem 373 hlasů
     Komentářů: 17, poslední včera 21:57
    Rozcestník

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

    22.1.2007 00:39 | Přečteno: 1505× | 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.