abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 16:11 | Nová verze

    Bylo oznámeno (cs) vydání Fedora Linuxu 40. Přehled novinek ve Fedora Workstation 40 a Fedora KDE 40 na stránkách Fedora Magazinu. Současně byl oznámen notebook Slimbook Fedora 2.

    Ladislav Hagara | Komentářů: 3
    dnes 13:44 | Upozornění

    ČTK (Česká tisková kancelář) upozorňuje (X), že na jejím zpravodajském webu České noviny byly dnes dopoledne neznámým útočníkem umístěny dva smyšlené texty, které nepocházejí z její produkce. Jde o text s titulkem „BIS zabránila pokusu o atentát na nově zvoleného slovenského prezidenta Petra Pelligriniho“ a o údajné mimořádné prohlášení ministra Lipavského k témuž. Tyto dezinformace byly útočníky zveřejněny i s příslušnými notifikacemi v mobilní aplikaci Českých novin. ČTK ve svém zpravodajském servisu žádnou informaci v tomto znění nevydala.

    Ladislav Hagara | Komentářů: 12
    dnes 13:33 | Komunita

    Byla založena nadace Open Home Foundation zastřešující více než 240 projektů, standardů, ovladačů a knihoven (Home Assistant, ESPHome, Zigpy, Piper, Improv Wi-Fi, Wyoming, …) pro otevřenou chytrou domácnost s důrazem na soukromí, možnost výběru a udržitelnost.

    Ladislav Hagara | Komentářů: 0
    dnes 13:00 | Nová verze

    Společnost Meta otevírá svůj operační systém Meta Horizon OS pro headsety pro virtuální a rozšířenou realitu. Vedle Meta Quest se bude používat i v připravovaných headsetech od Asusu a Lenova.

    Ladislav Hagara | Komentářů: 0
    dnes 04:33 | IT novinky

    Společnost Espressif (ESP8266, ESP32, …) získala většinový podíl ve společnosti M5Stack, čímž posiluje ekosystém AIoT.

    Ladislav Hagara | Komentářů: 0
    včera 23:44 | Nová verze

    Byla vydána nová stabilní verze 3.5 svobodného multiplatformního softwaru pro editování a nahrávání zvukových souborů Audacity (Wikipedie). Přehled novinek také na YouTube. Nově lze využívat cloud (audio.com). Ke stažení je oficiální AppImage. Zatím starší verze Audacity lze instalovat také z Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    včera 16:44 | Zajímavý článek

    50 let operačního systému CP/M, článek na webu Computer History Museum věnovaný operačnímu systému CP/M. Gary Kildall z Digital Research jej vytvořil v roce 1974.

    Ladislav Hagara | Komentářů: 2
    včera 16:22 | Pozvánky

    Byl zveřejněn program a spuštěna registrace na letošní konferenci Prague PostgreSQL Developer Day, která se koná 4. a 5. června. Na programu jsou 4 workshopy a 8 přednášek na různá témata o PostgreSQL, od konfigurace a zálohování po využití pro AI a vector search. Stejně jako v předchozích letech se konference koná v prostorách FIT ČVUT v Praze.

    TomasVondra | Komentářů: 0
    včera 03:00 | IT novinky

    Po 48 letech Zilog končí s výrobou 8bitového mikroprocesoru Zilog Z80 (Z84C00 Z80). Mikroprocesor byl uveden na trh v červenci 1976. Poslední objednávky jsou přijímány do 14. června [pdf].

    Ladislav Hagara | Komentářů: 6
    včera 02:00 | IT novinky

    Ještě letos vyjde Kingdom Come: Deliverance II (YouTube), pokračování počítačové hry Kingdom Come: Deliverance (Wikipedie, ProtonDB Gold).

    Ladislav Hagara | Komentářů: 13
    KDE Plasma 6
     (71%)
     (10%)
     (2%)
     (17%)
    Celkem 693 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník
    Štítky: není přiřazen žádný štítek


    Vložit další komentář
    31.10.2012 12:19 chrono
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Napr. v HTML používam vždy len tabulátory; v C zvyčajne tiež tabulátory, v Python takmer vždy 4 medzery... :)
    31.10.2012 12:56 Franta
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    O tomhle byl nedávno flame na Rootu, takže jen stručně:
    1. Tabulátor nese sémantickou hodnotu (počet úrovní odsazení bloku), shluk mezer neříká nic – potřebujeme ještě někde bokem sdělit informaci „kolik mezer = jedno odsazení“.
    2. Tabulátory také umožňují, aby si to každý zobrazil, jak mu to vyhovuje – někdo potřebuje větší odsazení, někdo menší, tak si podle toho nastaví editor, ale v souboru je to uložené vždy stejně (jeden tabulátor). Já mám např. šířku tabulátoru 4.
    3. Míchání mezer a tabulátorů při odsazování je samozřejmě špatně, je potřeba dodržovat konvence daného týmu.
    4. Jiná věc je zarovnávání – když už* zarovnáváme, tak mezerami, protože účelem zarovnání není posunout text na X-tou úroveň, ale zarovnat se znaky nad/pod ním.
    Příklad:
    <objekt>
        <vlastnost-1    hodnota="hodnota 1"/>
        <vlastnost-123  hodnota="hodnota 123"/>
        <vlastnost-9999 hodnota="hodnota 9999"/>
    </objekt>
    Před <vlastnost… bude tabulátor a před hodnota="… budou mezery.

    *) osobně jsem spíš proti zarovnávání, protože při přidání nové (delší) položky je potřeba změnit všechny ostatní řádky a mj. to dělá bordel ve verzovacím systému.
    mirec avatar 31.10.2012 15:57 mirec | skóre: 32 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    +10, presne o tomto som asi pred 2 rokmi písal blog, ale nedopísal som ;) Veľmi dobre napísané. Škoda, že pythonisti sa dosť fanaticky držia medzier (pep 8).
    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    FrostyX avatar 31.10.2012 12:59 FrostyX | skóre: 27 | blog: Frostyho_blog | Olomouc
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Já se držím odsazování na začátku řádků pomocí tabů a použití mezer při zarovnávání. K zamyšlení doporučím TABs vs Spaces. The end of the debate
    FrostyX.cz | 1984 was not supposed to be an instruction manual.
    31.10.2012 13:28 Let_Me_Be | skóre: 20 | blog: cat /proc/idea/current | Brno
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    To ze mezery vypadaji vsude stejne je hlavni nevyhoda.
    Linked in profil - Můj web - Nemůžete vyhrát hádku s blbcem. Nejdřív vás stáhne na svoji úroveň a pak ubije zkušenostmi.
    Bystroushaak avatar 31.10.2012 14:09 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Jak kde. Když se dívám na své kódy třeba na githubu, tak bych tam mezery uvítal, protože osmimístné taby to nehorázně roztahují do strany.
    31.10.2012 15:08 Franta
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    To je jeden řádek v CSS, ne? Lepší než přepisovat všechny zdrojáky :-)
    Bystroushaak avatar 31.10.2012 15:23 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    To sice jo, ale vysvětlovat to githubákům se mi nechce :D
    Člověk z Horní Dolní avatar 31.10.2012 15:29 Člověk z Horní Dolní | blog: blbeczhornidolni
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    To je podobný argumnent jako "můj editor neumí nastavit šířku tabů, proto jsou taby špatný" :)
    Bystroushaak avatar 31.10.2012 16:24 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Já taby používám.
    1.11.2012 19:35 Ivorne | blog: Ivorne
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    To možná, ale argument "každý editor má nastavené jinak taby, leckde to nejde nastavovat a pořád je v tom bordel" už se mi zdá dostatečný.

    To bys musel mít všechny systémy, se kterými pracuješ plně pod kontrolou (a musely by podporovat šířku tabelátoru), což normální člověk většinou nemá.

    Práce v editoru a v shellu. V editoru mám kvůli programování tab na šířce 4, v shellu je všude 8 a přenastavit to moc nejde, takže když pracuji v obou najednou, tak jsem v pytli.
    Josef Kufner avatar 1.11.2012 21:11 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Ono někdo, kdo to s programováním myslí vážně, používá neschopný textový editor?
    Hello world ! Segmentation fault (core dumped)
    xkucf03 avatar 1.11.2012 21:21 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Ale kód (správně) odsazený tabulátory nemá žádný problém s tím, že si každý nastaví jinou šířku – naopak k tomu přímo vybízí a je to jedna z jeho výhod.

    Někde to bude třeba:
    if (a == 1) {
        System.out.println("a == 1");
        System.exit(0);
    } else if (a == 0) {
        System.out.println("a == 0");
        System.exit(1);
    }
    a jinde:
    if (a == 1) {
            System.out.println("a == 1");
            System.exit(0);
    } else if (a == 0) {
            System.out.println("a == 0");
            System.exit(1);
    }
    a formátování se nerozbije, jen se přizpůsobí nastavení daného uživatele.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    2.11.2012 11:48 Ondrej 'SanTiago' Zajicek
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Rozbije, pokud se tabulatory pouzivaji krome odsazovani bloku i na dalsi odsazeni dodatecneho textu na radce (napr. komentare k radku). A IMHO to je misto, kde je tabulator daleko dulezitejsi nez na odsazeni bloku - spravne odsazeni bloku je mozne bez potizi udrzovat automaticky editorem bez ohledu na to, zda se pouzivaji mezery ci tabulatory, zatimco spravne odsazeni dodatecneho textu na radce asi rozumne udrzovat nejde jinak nez s pouzitim tabulatoru.
    pavlix avatar 2.11.2012 14:38 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    spravne odsazeni dodatecneho textu na radce asi rozumne udrzovat nejde jinak nez s pouzitim tabulatoru.
    Vzhledem k tomu, že to nejde ani s použitím tabu, tak je to dost irelevantní.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    2.11.2012 16:04 Ondrej 'SanTiago' Zajicek
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    S pouzitim tabu je udrzovani takoveho odsazeni podstatne mene narocna.
    pavlix avatar 2.11.2012 21:42 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Nevím, zda „podstatně méně náročné“ je to správné vyjádření pro „pořád to nestojí za nic“.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    31.10.2012 13:45 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Dvě mezery v C a C++, čtyři v shellu, tabulátor jen tam, kde to vyžaduje coding style - takže poslední dobou většinou tabulátor. :-(
    31.10.2012 13:57 Franta
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Proč :-(? K čemu jsou dobré mezery?
    31.10.2012 14:13 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Už jsem se zúčastnil příliš mnoha diskusí na toto téma, abych si myslel, že další flame něčemu prospěje. Argumenty obou stran už byly prezentovány tolikrát, že nemá smysl plýtvat časem i prostorem na další přehrávání stále stejné diskuse.
    Bystroushaak avatar 31.10.2012 14:08 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Dlouhou dobu jsem používal mezery, ale pak jsem se během jedné diskuze na IRC nechal přesvědčit k tabulátorům. Přijde mi to čistější.
    bambas avatar 31.10.2012 14:17 bambas | skóre: 20 | blog: bambasovo
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    odsazeni TAB, zarovnani 2-4 mezery :)
    31.10.2012 16:15 Sten
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    +0,75. Odsazení TAB, zarovnání TAB podle odsazení + tolik mezer, na kolik to vyjde :-)
    class MyClass
    ⇥: public MyOtherClass
    {
    public:
    ⇥MyClass()
    ⇥⇥: field(0)
    ⇥{}
    
    ⇥~MyClass();
    
    ⇥MyClass& setField(int value,
    ⇥⍽⍽⍽⍽⍽⍽⍽⍽⍽⍽⍽⍽⍽⍽⍽⍽⍽⍽bool checkIfZero)
    ⇥{
    ⇥⇥if (checkIfZero && value == 0) {
    ⇥⇥⇥throw std::exception("FIeld is not zero");
    ⇥⇥}
    ⇥⇥this->field = value;
    ⇥}
    
    
    protected:
    ⇥int field;
    };
    
    31.10.2012 18:25 disorder | blog: weblog
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    toto je jedine spravne pouzivanie tabov. keby to dokazali vsetky editory...
    Člověk z Horní Dolní avatar 31.10.2012 15:20 Člověk z Horní Dolní | blog: blbeczhornidolni
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Samozřejmě taby, s výjimkou Clojure (protože to je Lisp a Lispy se musí zarovnávat mezerama, aby kód nevypadal hnusně).

    Taby, narozdíl od mezer nespojují "co to je" a "jak to vypadá". Podobně jako HTML a CSS. Zakódovat obarvení syntaxe přímo do zdrojáku taky není dobrý nápad.
    Člověk z Horní Dolní avatar 31.10.2012 15:21 Člověk z Horní Dolní | blog: blbeczhornidolni
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Btw, v Javě je doporučuji používat auto-formátování, ušetří to spoustu práce.
    31.10.2012 15:50 JS
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Musim rict, ze ackoli mam Common Lisp celkem rad, Lispovy zpusob zarovnavani mi dost vadi. Prijde mi, ze to odsazeni pak silene rychle narusta, a je to velmi neprehledne.
    Člověk z Horní Dolní avatar 31.10.2012 17:03 Člověk z Horní Dolní | blog: blbeczhornidolni
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Naprosto souhlasim, jenom pro ulozeni neceho do promenne se musi zanorit kod... a taky prefixova aritmetika neni uplne prehledna.

    Pod nejakym blogem jsi jednou napsal celkem dlouhy komentar, napad na programovaci jazyk (myslim ze neco s transformacemi dat). Nepamatujes si kde to bylo? Posledni dobou me tohle docela zajima :)
    31.10.2012 18:32 JS
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Zkousel jsem to najit, ale marne. Obavam se, ze to bylo v nejakem nelinuxovem blogu..
    Bystroushaak avatar 31.10.2012 18:42 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Já se teď potloukám kolem Rebolu, což je místy podivný lisp-like jazyk s rozumnější syntaxí.
    Člověk z Horní Dolní avatar 1.11.2012 11:47 Člověk z Horní Dolní | blog: blbeczhornidolni
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Pro co to používáš (hraní / práce)?
    Bystroushaak avatar 1.11.2012 12:30 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Zatím pro nic, teď se v tom snažím napsat script na zálohu přečtených článků. Je to docela zajímavá hračka, například parser konfiguráků (něco jako .ini) jsem napsal v backus-naurově formě, namísto abych to rozdělil na jednotlivé řádky a ty pak dále zpracovával:
    context[
    	conf-file-rule: [any[
    			newline     |
    			_comment    |
    			date-header |
    			purl
    		]
    		to end
    	]
    
    	white: [#"	" | #" "]
    	_comment: [#"#" to newline]
    	date-header: [
    		#"[" copy parsed-date to #"]" newline (parsed-date: to-date parsed-date)
    	]
    	purl: [
    		[ thru #"	" | thru #" "] copy parsed-url to newline
    		(
    			parsed-url: to-url trim to-string parsed-url
    			print rejoin [parsed-date " : " parsed-url]
    		)
    	]
    
    	parse/all d conf-file-rule
    ]
    
    To by mě dřív ani nenapadlo.

    Pořád jsem ale nepřišel na to, jestli má smysl se rebol učit, nebo ne :)
    Člověk z Horní Dolní avatar 1.11.2012 14:50 Člověk z Horní Dolní | blog: blbeczhornidolni
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Pokud to má přímo vestavěnou podporu pro BNF, tak to je zajímavá vlastnost, to se může občas hodit.

    Parsery se taky dobře píšou v jazycích založených na ML, kód vypadá podobně jako BNF, např. parser markdownu v OCaml.

    O Rebolu jsem jednou už tuším slyšel, měl jsem toho pocit, že to je jeden z jazyků, které mají několik originálních nápadů, ale v praxi má smysl je používat jenom na relativně malou skupinu problémů :)
    Bystroushaak avatar 1.11.2012 15:11 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Pokud to má přímo vestavěnou podporu pro BNF, tak to je zajímavá vlastnost, to se může občas hodit.
    Jo, parse.
    O Rebolu jsem jednou už tuším slyšel, měl jsem toho pocit, že to je jeden z jazyků, které mají několik originálních nápadů, ale v praxi má smysl je používat jenom na relativně malou skupinu problémů :)
    No, já už o něm přečetl pár desítek článků a pár knih a pořád nevím, jestli jo, nebo ne :)
    31.10.2012 18:23 disorder | blog: weblog
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    bezne sa pouziva dvojznakove odsadenie: 5 urovni = 10 znakov. lisp ta aspon nauci rozdelit si veci do roznych funkcii, ked uz to nedokazali ine jazyky.
    31.10.2012 19:30 JS
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Tak to delam taky. :-) Coz o to, delit veci do funkci bych se potreboval naucit (ja mam v podstate tendenci tvorit novou funkci jen v pripade, ze ji volam z vice mist, coz neni idealni).

    Ale i tak je to problem, a nejhorsi je to prave na tech operatorech, jak zminuje BzHD vyse. Aritmeticky vyraz pak vypada jako rozsypany caj. Ale ono staci napsat let, if, progn a jste hned v pulce stranky.
    31.10.2012 18:20 disorder | blog: weblog
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    ale musis mat pre cely projekt striktne nefinovane ako ma tab vyzerat, lebo pride blbec z horni dolni a zacne mi to pretekat za okraj...
    31.10.2012 18:21 disorder | blog: weblog
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    s/nefinovane/definovane/

    ja uz dnes nic nenapisem bez preklepu...
    31.10.2012 16:29 Jan
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Tabulátor mám stále rád, hlavně v asembleru, protože tam si to píšu všechno sám od začátku, takže je to aspoň konzistentní :)
    31.10.2012 18:17 disorder | blog: weblog
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    presiel som na ciste medzery a zacinam mat rad python kvoli whitespacu. nie pretoze to je dobre riesenie, ale pretoze exituju ostatni ludia s prijebanymi editormi.
    31.10.2012 18:17 disorder | blog: weblog
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    s/exituju/existuju/
    mirec avatar 31.10.2012 18:42 mirec | skóre: 32 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    V súčasnosti je až neuveriteľné ako niektoré editory dokážu robiť bordel v kóde. U x-ročných vykopávok ako emacs / vim nie je problém nakonfigurovať zobrazovanie tabov, zvýraznenie zlého mixovania tabov a medzier ... Ale komerčné produkty, v ktorých robia kolegovia ... to je jedna veľká katastrofa.
    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    31.10.2012 20:27 ::: | skóre: 14 | blog: e_lama
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Kdyz uz se tady diskutuje odsazeni tak bych mel dotaz na pribuzny tema: Jakym zpusobem formatujete switch v c/c++ pokud se v nem deklaruje promenna a je potreba cely case dat do {}?

    Nejak se me nedari prijit na zpusob jak to nejak inteligentne naformatovat aby to vypadalo dobre i pri zmene velikosti tabu.

    Jinak switch formatuju takhle:
    >-------switch(x) {
    >-------case 1:
    >------->-------q();
    >------->-------...
    >-------case 2:
    >------->-------x
    >------->-------y
    >------->-------...
    >-------}
    
    V podstate me napadaji 2 reseni, ktere ale obe zbytecne pridavaji uroven zanoreni:

    1:
    >-------switch(x) {
    >------->-------case 1: {
    >------->------->-------int a;
    >------->------->-------qwe
    >------->-------}
    >------->-------case 2:
    >------->------->-------x
    >------->------->-------y
    >------->------->-------...
    >-------}
    
    >-------switch(x) {
    >-------case 1:
    >------->-------{
    >------->------->-------int a;
    >------->------->-------qwe
    >------->-------}
    >-------case 2:
    >------->-------x
    >------->-------y
    >------->-------...
    >-------}
    
    31.10.2012 20:50 alobalista
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Varianta cislo 1.
    pavlix avatar 31.10.2012 23:18 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Určitě druhá možnost, protože je konzistentní s tvým stylem. Chovej se k tomu, jako kdybys vytvářel blok uvnitř bloku a žádné case tam nebyly.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    Bedňa avatar 1.11.2012 00:35 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    +1
    KERNEL ULTRAS video channel >>>
    1.11.2012 00:24 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Ani jedna možnost.
    xkucf03 avatar 1.11.2012 00:33 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Líbí se mi první. U druhého nechápu, proč dáváš { } na nové řádky, když to jinak neděláš – IMHO zbytečnost. A naopak neodsazení case 1: a case 2: mi tam chybí. A odsazovat o 8 mi přijde moc – zkus nastavit šířku tabulátoru na 4 a nebude to tak „hluboké“.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    1.11.2012 01:25 ::: | skóre: 14 | blog: e_lama
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    jsem zvykly na 8. Hlavne pri delsi praci se me to lip cte.

    A obecne obvykle neodsazuju labely. Myslim ze tim ze se neodsadi dosahnu toho ze vycnivaji aniz bych pridal dalsi level zanoreni.

    Zrovna tak jako u switche je neodsazuju ani u trid:
    class xyz {
    public:
    >-------...
    };
    
    nebo goto:
    int process() {
    >-------...
    error:
    >-------...
    }
    
    Pokud jde o { na vlastnim radku, tak premyslel jsem i nad timhle:
    >-------switch(x) {
    >-------case 1: {
    >------->------->-------int a;
    >------->------->-------qwe
    >------->-------}
    
    to je pokud jde o { konzistentejsi, ale zase radek s } neni odsazeny stejne jako radek s { takze je to taky mirne nekonzistentni.

    Taky jsem premyslel nad timhle, ale to by nemuselo vypadat dobre pri hodne kratkym tabulatoru:
    >-------switch(x) {
    >-------case 1: {
    >--------------int a;
    >--------------qwe
    >-------  }
    
    Zatim nejvic inklinuju k puvodni moznosti c 2. Musim se uz konecne rozhodnout a delat tohle konzistentne. Momentalne to mam pokazdy jinak jak se furt nemuzu rozhodnout :-) Ale ne ze by tech switchu psal nejak moc...
    pavlix avatar 1.11.2012 10:50 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Líbí se mi první. U druhého nechápu, proč dáváš { } na nové řádky, když to jinak neděláš – IMHO zbytečnost.
    Podle mě } na nový řádek dává za všech okolností a { spojuje pouze s řídící konstrukcí, na kterou se vážou (i z hlediska jazyka).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    1.11.2012 10:53 Franta
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Tohle:
    >-------switch(x) {
    a tohle:
    >-------case 1:
    >------->-------{
    mi nepřijde konsistentní.
    1.11.2012 11:25 ::: | skóre: 14 | blog: e_lama
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    to je pravda, ale kdybych chtel byt maximalne konzistentni tak bych to musel psat takhle:
    >-------switch(x) {
    >-------case 1: {
    >------->-------x...
    >-------}
    >-------}
    
    tzn. prvni } by bylo odsazene stejne jako case. Proto me prijde lepsi byt trochu nekonzistentni a { dat na vlastni radek.
    pavlix avatar 1.11.2012 11:32 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    To není vůbec konzistentní, natož maximálně.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    pavlix avatar 1.11.2012 11:36 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Chybně očekáváš, že se labely a řídící příkazy budou zapisovat stejně. Děláš to tak i mimo switch? Ta složená závorka je na samostatném řádku, protože je samostatná a z hlediska jazyka se neváže na žádný řídící příkaz a už vůbec ne na ten case.

    Jasně, můžeš předstírat, že ano, po vzoru „pascalista píše v každém jazyce pascal“, ale pak jdeš zcela proti významu těch céčkovských konstrukcí.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    1.11.2012 12:00 Franta
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Chybně očekáváš, že se labely a řídící příkazy budou zapisovat stejně.
    Nemyslím, že je to chybný předpoklad, spíš logický.

    Ano, v kódu si můžu udělat blok { } jen tak, třeba abych omezil rozsah proměnných nebo si nějak „označil“ nějaké místo* a pak tu { nepřidávám na konec předešlého řádku, protože tam žádný takový není a i kdyby byl, nedávalo by to smysl. Ale když je to uvnitř switche, smysl to dává – logický význam a to, co tím kódem chce člověk říct, je podobné jako u IFu, proto by se to mělo i stejně odsazovat.

    Příklad:
    if (a == 1) {
    	…
    }
    obdobně:
    switch(a) {
    case 1: {
    	…
    }
    *) moc se to nepoužívá a lepší bude ten blok vyčlenit do samostatné metody/funkce/procedury
    pavlix avatar 1.11.2012 13:39 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Nemyslím, že je to chybný předpoklad, spíš logický.
    Typicky se labely zapisují takto:
    ... hlavička funkce ...
    {
        ...
        goto konec;
        ...
    konec:
        ...
    }
    
    A bloky vložené do jiných bloků tuším typicky takto:
    {
        ...
        {
            ...
        }
        ...
    }
    
    Ale samozřejmě máš možnost to psát zcela libovolně narozdíl od Python apod.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    1.11.2012 14:50 Franta
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Neřešíme, co je typické (např. pro mne je to { na stejném řádku jako if, else atd.), ale co je konsistentní se zbytkem toho stylu.
    pavlix avatar 1.11.2012 23:57 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Ty řešíš, co je konzistentní vůči tvému (špatnému) vnímání konstrukce v jazyce C. Já řeším, co je konzistentní vůči skutečným prvkům jazyka C. Tvé vnímání konstrukce označuju za špatné z toho důvodu, že nefunguje tak, jak naznačuješ, tedy case nefunguje jako if, ale zcela odlišně.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    2.11.2012 11:58 Ondrej 'SanTiago' Zajicek
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Presne tak. V syntaktickem strome je if 'nad' prikazem/blokem, zatimco case je 'vedle' prikazu/bloku.

    Dobre to je videt treba v pripade, kdy mezi case a blokem bude jeste nekolik prikazu:
    switch(a) {
    case 1:
        x++;
        y++;
        {
            int i;
            ...
        }
        z++;
        ...
    }
    
    Kdyz z takoveho kodu ty prvni dva prikazy eliminuju, je konzistentni zachovat stejne odsazeni bloku:
    switch(a) {
    case 1:
        {
            int i;
            ...
        }
        z++;
        ...
    }
    
    2.11.2012 13:40 Franta
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Viz #70: „logický význam a to, co tím kódem chce člověk říct, je podobné jako u IFu“.

    (tím nepopírám, že teoreticky můžu nad ten blok {} dát další příkazy)
    pavlix avatar 2.11.2012 14:41 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Což jen potvrzuje, to, co jsem říkal. Ty vtiskáváš do odsazení své nepřesné vnímání fukce prvků jazyka. Já ti to nijak nevyčítám, to samé jsem dělal, když jsem byl nucen psát v Pascalu. Nicméně jako céčkař se snažím v céčku spíše držet skutečného významu jazykových prvků a ne nějaké zjednodušující interpretace.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    2.11.2012 17:33 Franta
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Zatím jsem to nikdy nepotřeboval, ale napsal bych to takhle:
    int a = 0;
    
    switch (a) {
    	case 0: {
    		System.out.println("0");
    	}
    	break;
    	case 1: {
    		System.out.println("1");
    	}
    	break;
    	default: {
    		System.err.println("chyba");
    	}
    }
    Dokonce jsem i zjistil, že tohle je výchozí (automatické) formátování v Netbeans :-)

    Případně bych dal ještě:
    } break;
    Asi nemá cenu zbytečně sklouzávat k osobním útokům…
    Ty vtiskáváš do odsazení své nepřesné vnímání fukce prvků jazyka.
    Proč by to tak mělo být? Konvence pro psaní kódu jsou z významné části věcí estetiky a osobního vkusu (proto se o nich také vedou nekonečné flamewary). Kdybych chtěl být ošklivý, tak řeknu, že ty zase podléháš iluzi, že odsazování by mělo být odvozeno čistě z technické specifikace jazyka bez ohledu na lidi, kteří ten kód píší a čtou.
    pavlix avatar 2.11.2012 21:53 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Zatím jsem to nikdy nepotřeboval, ale napsal bych to takhle:
    Já ne, už jen proto, že nemám ve zvyku přidávat hromadu složených závorek jen tak pro okrasu.
    Asi nemá cenu zbytečně sklouzávat k osobním útokům…
    Nevím, jak jsi na to přišel, ale doufám, že se toho budeš držet :).
    Proč by to tak mělo být?
    Těkžo se mi vysvětluje věc, která mi připadá tak jednoduchá a samozřejmá. Měl jsem za to, že se shodujem v tom, že ti nevyhovuje sémantika céčkovského switche a omezuješ ji na určitou podmnožinu (zjednodušuješ) a takto zjednodušeně ji vnímáš. A toto vnímání vtiskáváš i do formátování.

    Když mi pomůžeš specifikovat, co je na tom nejasné, tak zkusím nějak reagovat.
    Kdybych chtěl být ošklivý, tak řeknu, že ty zase podléháš iluzi
    Ano, to už zní ošklivě. Máš důvod být ošklivý?
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    31.10.2012 20:59 alobalista
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    BTW nevi nekdo proc jsou zdrojaky standardni knihovny Javy tak silene indentovane? Skoro vsude se mixujou TABy s mezerama. A skoro mi prislo, jakoby to byla vlastnost nejakeho jejich editoru v kterem to psali, nez vysledek prace vice lidi s jinym stylem.
    Dreit avatar 31.10.2012 21:48 Dreit | skóre: 15 | blog: Dreit a jeho dračí postřehy | Královehradecký kraj
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch

    Netbeans? Bouchnu tabulátor, udělá se tabulátor. Dám backspace a maže to po jednom znaku místo celýho tabulátoru :-(

    Nope
    xkucf03 avatar 31.10.2012 22:00 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Nemáš tam nastavenou emulaci tabulátorů pomocí mezer? To by totiž odpovídalo.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    Dreit avatar 1.11.2012 15:43 Dreit | skóre: 15 | blog: Dreit a jeho dračí postřehy | Královehradecký kraj
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch

    Pokusim se to najít, myslel jsem že je to hardcoded feature :-D

    Rozhodně někdo smazal konfiguraci, takže to má celej ČVUT zase v defaultu :-(

    Nope
    xkucf03 avatar 1.11.2012 21:31 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Příloha:
    Viz příloha: Expand Tabs to Spaces. Mám za to, že ve výchozím nastavení je to odškrtnuté.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    1.11.2012 00:31 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Protože to byl běžný styl před 20 lety.

    Možná to nevíte, ale na mnoha počítačích byly hard disky, které měly velikost několika megabajtů.

    Ušetřit poměrně značnou velikost tím, že nahradíte sérii mezer tabulátory tam, kde vizuálně bude stejný výsledek je velká úspora. Řada editorů to dělala automaticky nebo to umožňovala navolit.

    Já jsem to dělal v minulosti taky tak.

    Při ukládání na 360 KB disketu bylo každé šetření místem žádoucí.

    Moje první programy v C jsem psal (pokud vynechám sálové stroje a různé bezdiskové minimašiny předtím) na PP06, který neměl hardisk, ale pouze dvě 360 KB disketové šachty. První disketa = editor + kompilátor C + knihovny + linker. Druhá disketa = zbývající knihovny co se nevěšly na první + moje zdrojáky + místo na ukládání meziproduktů kompilace + místo na výslednou binárku.

    Věřte mi, že komprese pomocí tabelátorů + mezer byla docela vítaná.

    1.11.2012 10:22 alobalista
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Nechapu, prece kdyz budu chtit usetrit, tak budu pouzivat jen a pouze TABy. Kombinovanim s mezerama pocet bajtu bude vetsi ne?
    pavlix avatar 1.11.2012 10:56 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Tam jde o to, že to navrhoval někdo naprosto bez představivosti nebo hodně unavený v době, kdy to vymýšlel. Vychází to jako logický důsledek tří axiomů.

    1) Odsazování se dělá o čtyři mezery

    2) Taby na začátku řádku mají vždy 8 mezer

    3) Potřebujeme co nejméně znaků

    Z toho ti totiž vyjde, že odsazení je půl tabu a tudíž je nutné ho tvořit mezerami (1,2), zatímco dvě odsazení už jsou celý tab a je potřeba je realizovat tabem (3). Pochopitelně tři odsazení vyžadují jeden tab a čtyři mezery.

    To je tak, když tyhle věci vymýšlí lidé, kteří měří na palce a stopy, a pak to má používat někdo, kdo je zvyklí na konzistentnější systémy.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    1.11.2012 14:06 alobalista
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    No to teda koukam. Diky za vysvetleni :-).
    pavlix avatar 1.11.2012 14:10 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    :D
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    1.11.2012 14:35 paranoik
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Tohle mě taky štve. Mě to připadá jakoby generátor tříd používal 4 mezery a většina vývojářů tabulátor. Když si nastavíš tabulátor na velikost 8 mezer tak je většina věcí formátovaná správně i když nelogicky (např. odsazení kódu metody je 1 tabulátor, její deklarace 4 mezery).
    31.10.2012 22:56 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Vždy jsem používal pouze mezery a dodnes nevidím jedinou výhodu tabelátorů.

    Řídím se heslem, že tabelátory nemají ve zdrojových kódech co dělat. Pokud se objeví v cizím kódu, zkonvertuji je na mezery.

    Tabelátory dokonce ani nenesou sémantickou hodnotu, protože v běžných programovacích jazycích jsou pravidla odsazování tak jednoduchá, že přeformátovat zdroják tak jak mi to vyhovuje zvládne velmi jednoduchý prográmek automaticky i bez toho, aby se programátor s nějakými tabelátory patlal.

    Lidi stejně tabelátory sázejí chybně už jen z titulu, že je nevidí.

    Jinak řečeno, tabelátory v běžných zdrojácích považuji za ptákovinu, protože nemají kromě žádnou funkci. To co se uvádí jako jejich výhoda se snadno zajistí i bez nich, jako je přeformátování na jiné odsazení, apod.

    Když se dívám do cizích zdrojáků, velikost odsazení je poslední co mi vadí. Daleko více mi vadí různé formátování složených závorek, nebo jiný počítků/konců bloku. Způsob formátování cyklů, hlaviček funkcí, atd. – a v tom tabelátory nepomůžou.

    Tam, kde tabelátory mají informaci pak je nebezpečné odsazovat vždy tabelátory, např. v makefile, v datových souborech s políčky oddělenými tabelátory, apod. Zde mají tabelátory skutečnou sémantickou hodnotu, protože na rozdíl od zdrojových kódů přidávají informaci, kterou nelze vydedukovat.

    Jinak řečeno, vidím u odsazování tabelátory pouze nevýhody. Přeformátovat odsazení cizího zdrojáku jde i při odsazování mezerami. Navíc dochází k interferenci v textových souborech, kde tabelátory mají nějakou užitečnou funkci – zejména datové souory jsou v posledních letech dodávány výhradně s tabelátorem jako oddělovačem údajů.
    xkucf03 avatar 1.11.2012 00:48 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Přeformátovat odsazení cizího zdrojáku jde i při odsazování mezerami.
    Jenže to znamená zásah do souboru, změnu prakticky všech řádků…˙Šířka tabulátorů je oproti tomu čistě věc zobrazení a nemusím do souboru nijak zasahovat. Někdo odsazuje o 2, normální lidi o 4, extrémista i o 8… každému vyhovuje něco jiného (liší se i podle jazyka). S tabulátory si to každý nastaví podle svého a přitom můžou všichni editovat ten samý soubor.

    Když na to špatně uvidím, zvýším si šířku tabulátoru, udělám potřebné změny a odešlu je (měním jen některé řádky). Ale když dostanu po někom zdroják s odsazením o 2 mezery a bude se mi to špatně číst (záleží na jazyku, někde je to OK), tak to budu muset nějak přetrpět nebo to přeformátovat, ale pak budou v nové verzi změněné všechny řádky, což dělá jednak bordel ve verzovacím systému a jednak tím budu otravovat ty, kterým odsazení o 2 mezery vyhovovalo. Totéž platí pro 8 nebo 3 (i takoví exoti se najdou).
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    1.11.2012 01:05 ::: | skóre: 14 | blog: e_lama
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    presne to me napadlo. To musi mit kolegove radost kdyz porovnavaji verze a nekdo si jen tak pro radost preformatoval cely soubor :-)
    1.11.2012 04:45 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Při práci v týmu dodržuji projektem zvolený coe stylu bez ohledu na to, co si o něm myslím.

    Kromě toho porovnávací nástroje, které nejsou s to se vyrovnat s náhradou tabelátorů za mezery neznám, okamžitě jdou do /dev/null, kromě spláchnutí do WC se na nic jiného nehodí.

    1.11.2012 10:32 Sten
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    A proto je vhodnější, když při sepisování toho coding style někdo myslel, než že jen vzal to, co se líbí jemu.

    Můžete nám prozradit, který používáte verzovací systém, jenž ignoruje změny tabulátorů na mezery?
    2.11.2012 14:11 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Aha, takže zase takové ty polopravdy a poloinformace.

    Pokud se objeví v cizím kódu, zkonvertuji je na mezery... ale jen pokud tomu nebrání coding style.

    Přeformátovat zdroják tak jak mi to vyhovuje zvládne velmi jednoduchý prográmek automaticky... ale lze to jen když to neodporuje coding style týmu, jinak mám smůlu a musím denně trpět u 8 mezerových odsazení. Ale přesto trvám na tom, že tabelátory nemají žádnou výhodu, i když by mě toho utrpení mohly ušetřit, ale ne, já si to nepřiznám a nepřiznám...
    1.11.2012 04:19 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Mám pocit, že zastánci tabulátorů dělají, že nerozumí co píši.

    Odsazení, podle toho, jestli mi vyhovuje odsazení o 2,4, 8, či jiný počet udělám bez ohledu na to, zda je odsazováno mezerami nebo tabulátory. Programovací jazyky jsou obvykle tak syntakticky jednoduché, že to udělá automat za programátora. Pokud není jiný důvod, proč odsazovat tabulátory, pak nemá používání tabulátorů pražádný význam a je k ničemu. Kromě toho, že se s tím programátor patlá a musí řešit něco, co řešit nemusí – tedy rozlišování tabelátorů a mezer. Tedy programátor odsazující tabelátory pracuje stylem „nevadí, že se víc nadřu bez jakéhokoli smyslu“.

    Jak si pak nastavíte to, že někdo používá odlišný code style? Někdo dává počíteční složenou závorku na stejný řádek jako příkaz podmínky a cyklu, jiný pod něho.

    Nebo ještě daleko více na čitelnost zdrojáků má vliv způsob vytváření názvů identifikátorů – jmen proměnných, podprogramů, modulů, atd.

    Při luštění cizích zdrojáků jste nuceni překousnout tolika věcí, že odsazování je to nejmenší.
    mirec avatar 1.11.2012 09:27 mirec | skóre: 32 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Příloha:
    Odsazení, podle toho, jestli mi vyhovuje odsazení o 2,4, 8, či jiný počet udělám bez ohledu na to, zda je odsazováno mezerami nebo tabulátory.

    To bude mať autor pôvodného kódu radosť, že mu niekto rozrýpal odsadzovanie aké jemu vyhovuje. Nehovoriac o následnom merge cez VCS, ktoré kvôli odsadeniu nebude fungovať, takže bude musieť mergovať ručne.

    Tedy programátor odsazující tabelátory pracuje stylem „nevadí, že se víc nadřu bez jakéhokoli smyslu“.

    Alebo nevadí mi, že pri zmenšení odsadenia musím 4x (alebo 2x, 3x, 8x, 6x ...) ťuknúť do backspace namiesto 1, že. Inak o zobrazovanie tabulátorov a medzier a ich správne mixovanie (taby na indent, medzery na zarovannie) by sa mal starať editor pokiaľ sa nemýlim (príloha).

    Při luštění cizích zdrojáků jste nuceni překousnout tolika věcí, že odsazování je to nejmenší

    Škoda, že neviem práve vyhrabať štúdiu, ktorá hovorí presný opak.

    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    Bystroushaak avatar 1.11.2012 10:21 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Alebo nevadí mi, že pri zmenšení odsadenia musím 4x (alebo 2x, 3x, 8x, 6x ...) ťuknúť do backspace namiesto 1, že.
    Většina editorů co jsem kdy v životě používal tohle implementuje pomocí shift+tab.
    pavlix avatar 1.11.2012 11:01 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Editor, který používám, zvládá i ten backpace.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    mirec avatar 1.11.2012 16:01 mirec | skóre: 32 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Ako kde, väčšinou sa u medzier stretávam s takým bordelom, že niekde je 1 medzera, 2, medzery, 3 medzery, 4 medzery ... takže nájdenie správneho odsadenia editor nedokáže ak nie je nastavený na pevný počet (ani to ešte nemusí byť správne).
    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    Bystroushaak avatar 1.11.2012 16:14 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Neříkal jsem nic o autodetekci, musíš nastavit ručně v menu šířku odsazení. Výhoda je, že pak nemusíš mačkat několikrát backspace, navíc se to používá i na posouvání celých bloků (pythonisti určitě znají).
    pavlix avatar 2.11.2012 00:09 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Nejvtipnější jsou gnomácké zvyklosti psaní kódu, které kombinaci tabů a mezer vyžadují a jsem přesvědčen, že jestli existuje nějaký editor, který ten jejich styl umí správně, tak je pouze jeden na světě. Ale spíš si myslím, že to žádný editor nedává a programátor si musí hrát s mezerníkem na datla.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    6.11.2012 07:42 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Já mám dojem, že je to výchozí nastavení Emacsu.
    pavlix avatar 6.11.2012 10:08 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Jo :).

    jestli existuje nějaký editor, který ten jejich styl umí správně, tak je pouze jeden na světě.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    pavlix avatar 1.11.2012 11:00 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Škoda, že neviem práve vyhrabať štúdiu, ktorá hovorí presný opak.
    Tak si jí vycucej z prstu stejně jako kdokoli, kdo mohl takovou studii vyplodit (nejspíš, pokud to myslel vážně, tak se v ní píše úplně něco jiného, než n mezer odsazení je čitelných, zatímco m ne).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    mirec avatar 1.11.2012 09:09 mirec | skóre: 32 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Díky za označenie exot. Ja považujem 2 medzery za málo čitateľné a 4 zase pri šírke zdrojáku okolo 580px príliš veľa. Preto preferujem taby, kde mám pekne nastavenú šírku na 3 znaky a nikoho neotravujem pomerne neštandardnými 3 medzerami.
    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    xkucf03 avatar 1.11.2012 21:41 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    :-) nemyslel jsem to nijak zle. Dvě jsou relativně málo, ale někdy se to celkem dá a i jsem si na to zvykl (Pascal). Liché číslo mi přijde takové divné a 4 jako akorát.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    1.11.2012 11:45 Let_Me_Be | skóre: 20 | blog: cat /proc/idea/current | Brno
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Jeste jsem nenasel program, ktery by umel korektne preformatovat C a C++ kod. Vsechny code-beautifiers na netrivialnim kodu selhavaji.
    Linked in profil - Můj web - Nemůžete vyhrát hádku s blbcem. Nejdřív vás stáhne na svoji úroveň a pak ubije zkušenostmi.
    pavlix avatar 31.10.2012 23:16 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Výhoda tabulátora je práve v tom, že na odsadzovanie textu bol navrhnutý a vie zarovnať stĺpce.
    Vážně umí zarovnat sloupce? V některém z běžně používaných editorů? A vážně byl navržen na odsazování kódu? Tomu moc nevěřím.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    Bedňa avatar 1.11.2012 00:43 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Tak som bol naučený, že je to sématickou značkou pre odsadenie textu a zarovnanie do stĺpcov, niečo podobné tvrdí aj Wikipédia. Teda aj editory s ktorými pracujem sa stavajú k vyjadreniu tabulátora rovnako, akurát z rozličným odsadením.
    KERNEL ULTRAS video channel >>>
    Bedňa avatar 1.11.2012 00:48 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Som neodpovedal na editor, tak napr. Netbeans a Eclipse. Je pravda že som si nastavenia robil sám, tak možno by default to tak nebolo, kto si to už pamätať :-)
    KERNEL ULTRAS video channel >>>
    Bedňa avatar 1.11.2012 00:52 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Aha som si tvoj koment prečítal ešte raz, nie na odsadenie kódu, ale textu.
    KERNEL ULTRAS video channel >>>
    1.11.2012 00:19 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Já bych to vylepšil. Já bych od levého okraje ve zdrojáku zarovnával tabulátorem (znakem U+9), mezi jednotlivými funkcemi či metodami bych vertikálně odděloval vertikálním tabulátorem (U+B). Čím by si každý mohl v editoru levé odsazení i odsazení mezi metodami navrhnout dle svého.

    Kromě toho bych nemazal ve zdrojáku při opravách opravdově, ale následoval bych znaky Backspace (U+8), takže bych ve skutečnosti nikdy nic nemazal. Pouze editor by to posuny kurzory přepsal, ale v souboru by to zůstalo. Mohl bych si tak v rámci editoru nahradit i VCS (správce verzí).

    Konec srandy.

    Zkrátka pořád nevidím jediný benefit používání tabulátorů. Kromě iracionálního zvyku bez rozumného argumentu.
    xkucf03 avatar 1.11.2012 00:40 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    A co mazání resp. snižování úrovně odsazení? Používáš na to backspace nebo nějakou zvláštní klávesovou zkratku a funkci prohlížeče? Já používám tabulátory tzn. tabulátorem zvyšuji odsazení a backspacem snižuji – nemusím ho mačkat 2×/4×/8×. (případně používám Alt+šipky pro zvýšení/snížení odsazení, což funguje i na více řádků a člověk nemusí být na jeho začátku).
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    1.11.2012 04:21 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Normálně, já taky nemusím mačkat backspace 2×/4×/8×, a to používám mezery. Možná bych Ti měl sdělit, že když tu klávesu držíš, ona opakuje automaticky.

    Kromě toho rozumný editor má autoindent, který leccos zařídí sám jak při vytváření osazení, tak při jeho rušení.
    2.11.2012 14:17 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Medzery vs tabulátory po siedmich rokoch
    Benefit je právě v tom, že si to horizontální odsazení může každý nastavit. Alternativa v podobě "VCS pro odsazení" neexistuje, je to jediná možnost jak to dělat.

    Vertikální odsazení je zajímavá myšlenka, ale asi to nikdo nepotřebuje.

    Nemazání za účelem verzování? Na to už byl přece vynalezen ten VCS, tak proč funkci duplikovat či integrovat v editoru, když již existuje? Opakuji že pro odsazení žádné "VCS" neexistuje, takže se to řeší tabelátory. Benefit je zřejmý - možnost si to nastavit.

    Založit nové vláknoNahoru

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

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