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 01:00 | Komunita

    Debian dnes slaví 32 let. Ian Murdock oznámil vydání "Debian Linux Release" 16. srpna 1993.

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

    Policisté zadrželi odsouzeného drogového dealera Tomáše Jiřikovského, který daroval ministerstvu spravedlnosti za tehdejšího ministra Pavla Blažka (ODS) bitcoiny v miliardové hodnotě, a zajistili i darovanou kryproměnu. Zadržení Jiřikovského může být podle ministerstva důležité k rozuzlení kauzy, která vypukla koncem května a vedla ke konci Blažka. Zajištění daru podle úřadu potvrzuje závěry dříve publikovaných právních

    … více »
    Ladislav Hagara | Komentářů: 5
    včera 13:44 | IT novinky

    Administrativa amerického prezidenta Donalda Trumpa jedná o možném převzetí podílu ve výrobci čipů Intel. Agentuře Bloomberg to řekly zdroje obeznámené se situací. Akcie Intelu v reakci na tuto zprávu výrazně posílily. Trump minulý týden označil Tana za konfliktní osobu, a to kvůli jeho vazbám na čínské společnosti, čímž vyvolal nejistotu ohledně dlouholetého úsilí Intelu o obrat v hospodaření. Po pondělní schůzce však prezident o šéfovi Intelu hovořil příznivě.

    Ladislav Hagara | Komentářů: 3
    včera 05:44 | IT novinky

    Společnost Purism stojící za linuxovými telefony a počítači Librem má nově v nabídce postkvantový šifrátor Librem PQC Encryptor.

    Ladislav Hagara | Komentářů: 10
    14.8. 18:00 | Nová verze

    VirtualBox, tj. multiplatformní virtualizační software, byl vydán v nové verzi 7.2. Přehled novinek v Changelogu. Vypíchnou lze vylepšené GUI.

    Ladislav Hagara | Komentářů: 0
    14.8. 14:11 | IT novinky

    Eric Migicovsky, zakladatel společnosti Pebble, v lednu oznámil, že má v plánu spustit výrobu nových hodinek Pebble s již open source PebbleOS. V březnu spustil předprodej hodinek Pebble Time 2 (tenkrát ještě pod názvem Core Time 2) za 225 dolarů s dodáním v prosinci. Včera představil jejich konečný vzhled (YouTube).

    Ladislav Hagara | Komentářů: 15
    14.8. 12:44 | Zajímavý software

    Byla oznámena nativní podpora protokolu ACME (Automated Certificate Management Environment) ve webovém serveru a reverzní proxy NGINX. Modul nginx-acme je zatím v preview verzi.

    Ladislav Hagara | Komentářů: 1
    14.8. 12:22 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 25.08. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    13.8. 11:55 | IT novinky

    Společnost Perplexity AI působící v oblasti umělé inteligence (AI) podala nevyžádanou nabídku na převzetí webového prohlížeče Chrome internetové firmy Google za 34,5 miliardy dolarů (zhruba 723 miliard Kč). Informovala o tom včera agentura Reuters. Upozornila, že výše nabídky výrazně převyšuje hodnotu firmy Perplexity. Společnost Google se podle ní k nabídce zatím nevyjádřila.

    Ladislav Hagara | Komentářů: 5
    13.8. 04:33 | Bezpečnostní upozornění

    Intel vydal 34 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20250812 mikrokódů pro své procesory řešící 6 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (52%)
     (19%)
     (4%)
     (5%)
     (3%)
     (1%)
     (1%)
     (17%)
    Celkem 397 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    Styl odsazování

    23.11.2005 15:34 | Přečteno: 1762× | Linux | poslední úprava: 24.11.2005 09:10

    Kdysi dávno jsem zde pokládal návrh na anketu Jaký používáte styl programování?. Bohužel buďto zapadla, anebo obsahovala odkaz na příslušnou stránku wikipedie (odkazy v anketě tuším ničily layout stránky). Buď jak buď, anketa se nekonala.

    Z již zmíněného dokumentu plyne, že se rozlišuje 5 hlavních stylů, přičemž poslední tři mi přijdou hodně obskurní :-). Jak jsem tak měl možnost vidět zdrojové kódy, tak převládá K&R a BSD styl odsazování, případně třetí varianta - náhodné odsazování.

    Já osobně nejraději používám právě prvně jmenovaný, protože mi BSD styl přijde moc rozvláčný. Zde je příklad za všechny (musel jsem trochu přeformátovat, ztratil se mi prázdný řádek).

    /*  create a new empty operand  */
    rpcData* newData(void) {
    
      rpcData* aux = (rpcData*) malloc(sizeof(rpcData));
      memset(aux, 0, sizeof(rpcData));
      aux->references = 1;
      return aux;
    }
    

           

    Hodnocení: 100 %

            špatnédobré        

    Anketa

    Jaký styl odsazování preferujete?
     (65 %)
     (21 %)
     (3 %)
     (7 %)
     (0 %)
     (1 %)
     (3 %)
    Celkem 116 hlasů

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

    Komentáře

    Vložit další komentář

    23.11.2005 15:43 VícNežNic | skóre: 42 | blog: Spáleniště | Ne dost daleko
    Rozbalit Rozbalit vše Re: Styl odsazování
    Tak jak je popsáno ve wikipedii K&R, s tím, že u funkcí je první složená závorka ještě na témže řádku.
    Copak toho není dost?
    23.11.2005 16:14 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
    Rozbalit Rozbalit vše Re: Styl odsazování
    Přesně tak :-).
    Josef Kufner avatar 23.11.2005 19:30 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Styl odsazování
    Ale pokud je podmínka nebo parametry moc dlouhé, tak otvírající složená závorka je na novém řádku.
    Hello world ! Segmentation fault (core dumped)
    23.11.2005 15:49 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Styl odsazování
    Můj styl má nejblíž ke K&R, jen u funkcí dávám otevírací složenou závorku na nový řádek (jako u BSD) a na rozdíl od většiny obvyklých stylů odsazuji case. Tj. asi takto:
      int foo(char* p)
      {
         int n = 0;
    
         while (*p) {
           switch(*p) {
             case '(':
               n++;
               break;
             case ')':
               n--;
               break;
           }
           p++;
         }
    
         return n;
      }
    
    23.11.2005 15:54 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Styl odsazování
    Tak case odsazuji taky, přijde mi zvláštní, že to nikdo nedělá.
    When your hammer is C++, everything begins to look like a thumb.
    Josef Kufner avatar 23.11.2005 19:31 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Styl odsazování
    Ale dělá :)
    Hello world ! Segmentation fault (core dumped)
    24.11.2005 20:46 Tomáš Bláha
    Rozbalit Rozbalit vše Re: Styl odsazování
    No já tedy casy neodsazuji, resp. nechavám je předsazené vůči bloku kódu, ve kterém jsou. V podstatě podobně, jako jsem vždy formátoval návěští v assembleru.
    .. avatar 23.11.2005 18:13 .. | skóre: 4 | blog:
    Rozbalit Rozbalit vše Re: Styl odsazování
    Taky hlasuju pro tenhle styl.
    23.11.2005 22:25 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Styl odsazování
    Rovnako, iba odzasujem tabelatorom. V mcedit ho mam nastaveny na 4 znaky, v Kate na 6. Ked niekomu poslem zdrojaky moze si to nastavit ak ochce (a podla sirky monitoru) a nenutim ho pouzivat svoju sirku tabelatoru.

    Jedinu schizu ma pri odsadzovani else. Male veci odsadujem usporne:
    if ( ) {
        ...
    } else {
        ...
    }
    
    Pri velkych povazujem za vhodne patricne zdoraznit skoro prazdnym riadkom, kde ten if konci:
    if ( ) {
        ...
        ...
        ...
        ...
    }
    else {
        ...
        ...
        ...
        ...
    }
    
    If you hold a Unix shell up to your ear, you can you hear the C.
    Luboš Doležel (Doli) avatar 23.11.2005 15:49 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Styl odsazování
    Zásadně BSD; v kódu se pák lépe orientuju, když mám složené závorky vždy svisle pod sebou.
    23.11.2005 15:52 VícNežNic | skóre: 42 | blog: Spáleniště | Ne dost daleko
    Rozbalit Rozbalit vše Re: Styl odsazování
    Já se zase v tom závorkovém rejdišti okamžitě ztratím.
    Copak toho není dost?
    23.11.2005 15:55 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Styl odsazování
    A to je ta chvíle, kdy přichází na řadu % ;-)
    When your hammer is C++, everything begins to look like a thumb.
    24.11.2005 10:20 barney
    Rozbalit Rozbalit vše Re: Styl odsazování
    to je ta chvila, ked prichadza na rad highlighting zatvoriek v xemacse :-))
    stativ avatar 23.11.2005 16:12 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Styl odsazování
    jak se mi zrovna chce, jinak pouzivam zasadne BSD nebo GNU style (hlasoval jsem pro GNU aby melo taky nejaky procenta)
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    23.11.2005 17:02 Non_E | skóre: 24 | blog: hic_sunt_leones | Pardubice
    Rozbalit Rozbalit vše Čím odsazujete
    Viz Subj., odsazujete tabelátorem nebo mezerami?
    Only Sith deals in absolutes.
    23.11.2005 17:34 jm
    Rozbalit Rozbalit vše Re: Čím odsazujete
    No, doufam ze se k tem mezeram v zajmu vlastniho zdravi nikdo neprihlasi... :-)
    23.11.2005 17:41 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Čím odsazujete
    Na to bych nespoléhal. Ne každý chce být po pár úrovních osazení na půlce stránky…
    Josef Kufner avatar 23.11.2005 19:34 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Čím odsazujete
    Pokud se po pár odsazeních tam dostanu, tak je ten program špatně navrený, nebo mám zbytečně velký tab.
    Hello world ! Segmentation fault (core dumped)
    23.11.2005 19:40 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Čím odsazujete
    Tabulátor je osm znaků. Používat cokoli jiného znamená koledovat si o problémy v okamžiku, kdy budete okolnostmi donucen použít jiný editor než ten, na který jste zvyklý (nebo třeba i jen stejný editor s jiným nastavením).
    24.11.2005 10:24 barney
    Rozbalit Rozbalit vše Re: Čím odsazujete
    :-)) nevraviac o pythone
    Josef Kufner avatar 24.11.2005 17:30 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Čím odsazujete
    /* vim:set ts=4 sw=4: */
    Hello world ! Segmentation fault (core dumped)
    24.11.2005 17:41 VícNežNic | skóre: 42 | blog: Spáleniště | Ne dost daleko
    Rozbalit Rozbalit vše Re: Čím odsazujete
    Hm, no a psát zdrojáky na počítači znamená koledovat si o problémy, když budete okolnostmi donuceni pracovat tam, kde žádný není, třeba :-) Nebo něco srovnatelné blbého.
    Copak toho není dost?
    24.11.2005 10:18 Bubak | skóre: 16 | blog: Čtvrtá cenová
    Rozbalit Rozbalit vše Re: Čím odsazujete
    Pouzivam tabulator a normalne ho mam nastaveny na tri znaky - vetsina editoru to umoznuje celkem jednoduse nastavit, takze nevidim problem. Stejne tak neni problem kdykoliv je nahradit za prislusny pocet mezer, je-li to potreba.
    ... máš jen mrtvou kočku a poškrábanýho jezevčíka ...
    23.11.2005 17:48 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
    Rozbalit Rozbalit vše Re: Čím odsazujete
    Já se k nim hlásím :-)
    24.11.2005 11:20 Pepin
    Rozbalit Rozbalit vše Re: Čím odsazujete
    Já taky
    24.11.2005 10:22 barney
    Rozbalit Rozbalit vše Re: Čím odsazujete
    moj nazor: odsadzovat treba medzerami.

    za odsadzovanie tabelatormi pri sucasnom nastaveni tabelatora na 2, to je zvrhlost.

    24.11.2005 11:20 Pepin
    Rozbalit Rozbalit vše Re: Čím odsazujete
    Tak tak.
    23.11.2005 20:51 elerhc
    Rozbalit Rozbalit vše Re: Čím odsazujete
    samozrejme ze mezerami (ktere generuji stiskem tabulatoru) pouzivat znaky tabulatoru je zlo
    24.11.2005 10:07 podlesh | skóre: 38 | Freiburg im Breisgau
    Rozbalit Rozbalit vše Re: Čím odsazujete
    Samozřejmě mezery.

    set expandtab
    slackman avatar 23.11.2005 17:43 slackman | skóre: 13 | Praha
    Rozbalit Rozbalit vše Re: Styl odsazování

    Sice jsem sotva pára z programátorského ....., ale když už něco náhodou uplácám, pak jedině K&R. Jinak odsazuji, odsazuji, a znovu odsazuji všechno co se jenom odsadit dá a to vždy o dvě mezery. Kdo používá tabulátory je Barbar. S komentářema je to ale u mne bída. :~)

    mood = (machine != slackware) ? depressed : euphoria;
    23.11.2005 18:00 Robert Krátký | skóre: 94 | blog: Robertův bloček
    Rozbalit Rozbalit vše Re: Styl odsazování
    ohužel buďto zapadla, anebo obsahovala odkaz na příslušnou stránku wikipedie (odkazy v anketě tuším ničily layout stránky).

    Asi zapadla, protože odkazy v textu ankety nikdy nepředstavovaly problém pro samotnou anketu. Jediná potíž byla s výpisem archivu anket - tak jsem to změnil tak, aby odkazovalo datum, ne text ankety...
    Rezza avatar 23.11.2005 18:05 Rezza | skóre: 25 | blog: rezza | Brno
    Rozbalit Rozbalit vše Re: Styl odsazování
    Tak driv jsem psal K&R, ale posledni dobou cimdal casteji prochazim kod a rozentrovavam i stare veci na BSD...
    23.11.2005 18:47 machr
    Rozbalit Rozbalit vše Re: Styl odsazování
    - v podstate k&r, ale davat oteviraci slozenou zavorku u funkce na novej radek se me zda jako nesmysl a zbytecna nekonzistence....
    int main(int argc, char** argv) {
        if(argc != 2) {
            // neco
        } else {
            while(1) {
    
            }
            ....
            switch(c) {
            case 1:
                ....
                break;
            default:
                ....
            }
            do {
    
            } while(1);
            for(int i = 1; i < 16; i++) {
    
            }
        }
    }
    
    23.11.2005 22:06 Lynn | skóre: 16 | blog: hell | Němčice
    Rozbalit Rozbalit vše Re: Styl odsazování
    pouzivam (v sebeobrane, programovani me neba) AT&T, coz je tahle ukazka :-)
    (ptala jsem se trocha googlu)
    To je síla televize...
    23.11.2005 20:27 Zdeněk Štěpánek | skóre: 57 | blog: uz_mam_taky_blog | varnsdorf
    Rozbalit Rozbalit vše Re: Styl odsazování
    Zdravim

    Ja pouzivam GNU styl a odsazuju o jednu mezeru. Dve jsou zbytecne a kdo odsazuje tabulatorem je u me blazen.

    Obcas taky odsazuju vicero mezerama, aby to sedelo s nadrazenym slovem, ale to spis jen vyjimecne u malych kousku kodu.

    Zdenek
    www.pirati.cz - s piráty do parlamentu i jinam www.gavanet.org - czfree varnsdorf
    Luk avatar 23.11.2005 20:33 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Styl odsazování
    V Javě se doporučuje odsazova čtyřmi mezerami (používám to a nijak mi to nevadí). Ale těch 8 je opravdu moc :-D
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    Luk avatar 23.11.2005 20:32 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Styl odsazování
    Já používám různé styly podle jazyka. V Javě se snažím držet javovských konvencí, v jiných jazycích (C, C++, PHP,...) používám K&R s malými odchylkami. Ono to není příliš odlišné.

    Mimochodem někteří mí kolegové mají zajímavé způsoby. Jeden např. všechno mastí dohromady bez mezer, jiný naopak cpe mezery úplně všude (a nejlépe více za sebou). Tedy ani jedno z toho mi nesedí...
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    23.11.2005 20:54 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Za mě odsazuje eclipse
    Používám mírně upravený defaultní formátovač z eclipse (pro Javu, v jiných jazycích toho nepíšu tolik, aby bylo co odsazovat :-) ) – je to v podstatě K&R. Takže když napíšu kus kódu, dám Ctrl+S (uložit), Ctrl+Shift+S (seřadit), Ctrl+Shift+F (zformátovat) a Ctrl+F9 (spustit). Nevím, proč bych měl odsazovat já, když to za mě může udělat počítač :-)

    Problém je, když začnu psát do nějaké cizí OSS knihovny. Použiju své oblíbené klávesová zkratky, a pak si uvědomím, že autoři asi nebudou chtít patch, který ve funkčnosti přidává jen 2 řádky kódu, ale "bokem" změní pořadí metod a formátování celého dokumentu, takže se z diffu vůbec nepozná, co jsem vlastně změnil :-)
    23.11.2005 20:59 Matin
    Rozbalit Rozbalit vše Jedině GNU
    A kdo odsazuje jinak, je podle mě lama. Má přítelkyně dostala za špatné odsazování košem. Tedy nejen za to, taky používala vi :/
    24.11.2005 08:29 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Jedině GNU
    Moudrá to žena!
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    24.11.2005 09:24 ND
    Rozbalit Rozbalit vše Re: Styl odsazování
    Styl Pavel Herout. :-)
    vogo avatar 24.11.2005 13:38 vogo | skóre: 34 | blog: "Skládat papír"
    Rozbalit Rozbalit vše Re: Styl odsazování
    mam svuj vlastni nejvic se podoba Whitesmiths
    int ukazka()
    {
     if podminka then
        {
         udelej_tohle();
         udelej_tamto();
        }
        else
            {
             udelej_tudleto();
             udelej_tamdleto();
            }
     return(0);
    }
    
    Nejsem paranoidní, ale to ještě neznamená, že po mě nejdou.
    vogo avatar 24.11.2005 13:39 vogo | skóre: 34 | blog: "Skládat papír"
    Rozbalit Rozbalit vše Re: Styl odsazování
    aaaaaaaaaaaaaaaaaaaaaaaaaa pardon za ty zvorky u return, rvu si vlasy, a lamu ruce
    Nejsem paranoidní, ale to ještě neznamená, že po mě nejdou.
    24.11.2005 20:37 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Styl odsazování
    Proč? Výraz '(0)' je stejně korektní návratová hodnota funkce jako '0'. Nebo tam klidně můžete napsat '(((0)))' a bude to pořád totéž…
    25.11.2005 00:18 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: Styl odsazování
    Nebo
    return (3, 2, 1, 0);
    
    ;-)
    25.11.2005 01:42 Honza Král | skóre: 3 | Praha
    Rozbalit Rozbalit vše Re: Styl odsazování
    hmm, zavorky vetsinou nepouzivam (dost casu delam v shellu ;) ), a kdyz uz tak K&R s tim, ze i fce jsou odsazovany normalne, jen jeste u volani fce oddeluju parametry mezerou, na odsazovani pouzivam TAB znaky nastav enena delku 4, case odsazuju uplne divne ;)
    void fce( int cislo, char ** tt ) {
        if ( cislo >= 6 ) {
          do_neco( cislo, get_neco( tt ) );
        } else {
            switch( cislo ) {
                case 'x':
                        zajimave_cislo();
                    break;
                case 'a':
                        zajimave_cislo( c );
                    break;
            }
        }
    }
    

    Založit nové vláknoNahoru

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