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í
×
    26.12. 18:44 | Komunita

    Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.

    Ladislav Hagara | Komentářů: 0
    26.12. 13:22 | Zajímavý software

    Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.

    🇨🇽 | Komentářů: 7
    26.12. 13:11 | Nová verze

    XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).

    🇨🇽 | Komentářů: 0
    26.12. 03:33 | Nová verze

    Wayback byl vydán ve verzi 0.3. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.

    Ladislav Hagara | Komentářů: 0
    25.12. 14:44 | Nová verze

    Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.

    Ladislav Hagara | Komentářů: 0
    24.12. 02:11 | Komunita

    Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.

    Ladislav Hagara | Komentářů: 30
    24.12. 02:00 | Nová verze

    Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    23.12. 18:33 | Nová verze

    Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.

    Ladislav Hagara | Komentářů: 0
    23.12. 13:55 | Nová verze

    Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 0
    23.12. 12:44 | Nová verze

    Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.

    Ladislav Hagara | Komentářů: 1
    Kdo vám letos nadělí dárek?
     (34%)
     (1%)
     (20%)
     (1%)
     (1%)
     (1%)
     (13%)
     (13%)
     (16%)
    Celkem 152 hlasů
     Komentářů: 18, poslední 24.12. 15:29
    Rozcestník

    Čištění kódu - nikdy nekončící práce

    23.12.2008 16:03 | Přečteno: 1538×

    Následující zápis obsahuje pouze nezajímavé stesky programátora amatéra, jež snad nikdy nebude schopen napsat srozumitelný a úhledný kód.

    Před časem jsem se zde zmiňoval o svém skriptu na hledání dopravních spojení přes IDOS v prostředí CLI. Zmínil jsem také svůj záměr kód pročistit a zpřehlednit. Motivací bylo, že srozumitelnější kód třeba příláká nějaké pomocníky (testery), že mi někdo zkušenější poradí a já se něco naučím, že třeba bude mít někdo zájem použít můj skript ve své aplikaci - tak proč mu házet klacky pod nohy příšerně psaným kódem, atd.

    Měsíce plynuly, já skriptu nevěnoval až tolik pozornosti, nicméně přesto jsem v něm provedl menší řádku úprav. Chvíli jsem si i myslel, že se dílo daří, ale poté přišlo vystřízlivění. Kamarád mi půjčil knihu od R. Pecinovského Návrhové vzory a já se do ní začetl. Ještě nejsem u konce, nicmnéně již nyní na mě má kniha dva znatelné dopady. Zaprvé se má averze vůči Javě snížila a zadruhé mi kniha otevřela oči a já zřel svůj prasečí kód v celé jeho nahotě. Poslední dva dny jsou ve znamení rapidních změn. Některé části skriptu se mi již vytratily z paměti a nyní mi jejich opětovné čtení vyvolává vrásky na čele. Kolik toho ještě budu muset přepsat, abych byl s kódem (konečně) aspoň trochu spokojen? Napadá mě množství změn, jež je záhodno provést, ale zárovněň mě ta představa děsí. A když je nákrasně udělám, přepíšu to ještě jednou, pak ještě dvakrát,... zastaví se to někdy?

    No, zbývá mi jen naděje, že se to opravdu časem zlepší. Bohužel programování není mým denním chlebem, takže ty krůčky budou zřejmě velmi, velmi malé a pomalé. Doporučíte mi nějakou zajímavou literaturu, která mi pomůže v růstu? Louskám teď toho Pecinovského, taky jsem před časem přečetl celkem zajímavé Dive into Python.

    Mimochodem, pokud někdo používá i související Java aplikaci do mobilu, tak se ozvěte v diskuzi. Za tu dobu se také pohla krapet kupředu a obsahuje pár (a to doslova) užitečných vylepšení, škoda setrvávat na starší verzi. V případě zájmu ji někam nahraji.

           

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    mkoubik avatar 23.12.2008 16:09 mkoubik | skóre: 5 | blog: lorem_ipsum | Praha 8 - Bohnice
    Rozbalit Rozbalit vše Re: Čištění kódu - nikdy nekončící práce
    Dobrá kniha o objektovém návrhu je "Effective java", ale pozor - českej překlad nebrat - stojí za starou belu. Zdaleka to není jenom o jave a spousta věcí platí obecně pro jakýkoliv objektový, silně typový jazyk s garbage collectorem (takže java a C# ;-)
    23.12.2008 16:38 kotz | skóre: 2
    Rozbalit Rozbalit vše Re: Čištění kódu - nikdy nekončící práce
    A nechtěl bys napsat nějaký serialový výcuc?
    Čas, který ušetříš tím, že si na to napíšeš program, strávíš tak, že se kocháš, jak dobře to funguje.
    23.12.2008 23:20 kkaarreell
    Rozbalit Rozbalit vše Re: Čištění kódu - nikdy nekončící práce

    Sice ti asi uplne nerozumim, nicmene nemyslim, ze by to bylo co k cemu. Ohledne toho skriptu jsem napsal v minulosti par zapisu do blogu a ackoliv se za tu dobu krapet zmenil, ty informace (jeste lepe se spojenim s info na domovske strance projektu) jsou vice mene stale aktualni, takze bych se jen opakoval.

     

    hikikomori82 avatar 23.12.2008 16:40 hikikomori82 | skóre: 18 | blog: foobar | Košice
    Rozbalit Rozbalit vše Re: Čištění kódu - nikdy nekončící práce
    Pamatam si ten tvoj skript, gazilion riadkov pythonieho kodu. V tedy som si povedal ze na toto sa ti kazdy vyserie a napisal som si proof of concept oneliner v bashi, uz som ho asi zmazal ale fakt toto nie je vec na 1500 riadkov. Maximalne 5 az 10 riadkov kodu, inak ocivdne pouzivas nespravny nastroj na nespravnu vec.
    23.12.2008 18:22 kkaarreell
    Rozbalit Rozbalit vše Re: Čištění kódu - nikdy nekončící práce

    Muzes to nejak rozvest? Ja si o tom skriptu nedelam iluze, ale zajimalo by me, jak totez napises na 5 az 10 radku (jiste, nadsazka, ale podle me je to rozhodne na stovky radku, ne desitky). Co by tedy bylo tim spravnym nastrojem? Mimochodem, kdysi pred lety jsem si taky napsal prvni verzi v bashi, ale u proof of concept to i zustalo.

    hikikomori82 avatar 23.12.2008 21:27 hikikomori82 | skóre: 18 | blog: foobar | Košice
    Rozbalit Rozbalit vše Re: Čištění kódu - nikdy nekončící práce
    Ach jo, dokopal si ma k tomu tak co uz. Stalo ma to 24 minut mojho drahoceneho casu:
    ./spojenie2.sh bechyne tabor
    24.12.
    5:59
    24.12.
    6:10
    
    Zdrojak ma 8 riadkov (GPL version 3 or later):
    #!/bin/bash
    >index2.html
    START=$1
    CIEL=$2
    DATUM=`date +%d.%m.%Y`
    CAS=`date +%H%%3a%M`
    wget -q --user-agent="Mozilla Firefox" -O index2.html "http://jizdnirady.idnes.cz/vlakyautobusy/spojeni/?f=$START&t=$CIEL&date=$DATUM+%c3%9at&time=$CAS&direct=False&byarr=False&submit=True&af=False"
    cat index2.html | grep 'date red' | sed 's/</\n/g' | grep -e 'date red' -e right | sed 's/>/>\n/' | grep -v '>$'
    
    hikikomori82 avatar 23.12.2008 21:33 hikikomori82 | skóre: 18 | blog: foobar | Košice
    Rozbalit Rozbalit vše Re: Čištění kódu - nikdy nekončící práce
    oneliner:

    wget -q -O - --user-agent="Mozilla Firefox" "http://jizdnirady.idnes.cz/vlakyautobusy/spojeni/?f=$1&t=$2&date=`date +%d.%m.%Y`+%c3%9at&time=`date +%H%%3a%M`&direct=False&byarr=False&submit=True&af=False" | grep 'date red' | sed 's/</\n/g' | grep -e 'date red' -e right | sed 's/>/>\n/' | grep -v '>$'
    23.12.2008 23:12 kkaarreell
    Rozbalit Rozbalit vše Re: Čištění kódu - nikdy nekončící práce

    Aha. No, to je sice krasny, ale tohle jsem schopnej napsat taky (ostatne uz jsem to i kdysi udelal), nicmene co si tyce funkci, tak ten tvuj a ten muj skript jsou uplne nekde jinde. Na tech stovkach radku si trvam. Myslel jsem, ze uvedes nejaky ten "vhodny" nastroj, ale uz vidim, jak bastlis neco ekvivalentniho v bashi. Ale stejne diky, nerad jsem plytval tvym drahocenym casem.

    23.12.2008 17:08 Kvakor
    Rozbalit Rozbalit vše Srozumitenlost kodu
    Oni jsou totiz dve urovne srozumitenlosti - uroven "co tenhle kousek dela" a druha "proc to tenhle kousek dela". Jinymy slovy, na urovni celkoveho algoritmickeho reseni a na urovni jeho implementace v dannem jazyce.

    Je kod, do ktereho kouknete a i kdyz nevite presne, co se na jednotlivych radkach deje (napr. je to vam neznamy jazyk, knihona ci trida), mate alespon predstavu, proc tam ty radky jsou. Naopak znam pripady, kdy presne vim, co kazda radka dela, ale absolutne nechapu, proc se to tam dela. I kdyby byl takovy kod napsany ciste (vetsinou neni), tak na nej budete koukat jak na sanky v lete.

    Dost casto az pak zjistim, ze a) onen podivny kod obchazi najakou chybu (napr. zdanlive "bezucelne" objekty a kontejnery typu Matroska v HTML), b) resi veci, ktere uz nejsou treba, ale nebyly odstraneny, c) implementuji nejaky jednoduchy algoritmus zcela bizarnim zpusobem (napr. implementovani bitove operace pomoci operaci v plovouci radove carce jako pow() a pod.) a nakonec d) programator onoho useku byl nejspis v danne chvili pod vlivem :-)
    23.12.2008 18:46 YYY | skóre: 29 | blog: martinek
    Rozbalit Rozbalit vše Re: Srozumitenlost kodu
    d... takove situace mam moc rad ;-)
    frEon avatar 23.12.2008 19:20 frEon | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Čištění kódu - nikdy nekončící práce
    Jen tak dal. Ze vidis nedostatky sveho stareho kodu, je znamka toho, ze se zlepsujes. A to je jedine dobre.
    Talking about music is like dancing to architecture.
    24.12.2008 17:42 RapMan | skóre: 14 | blog: RapMan
    Rozbalit Rozbalit vše Re: Čištění kódu - nikdy nekončící práce

    Knizka "Dokonaly kod" (Code complete) se pekne cte.

    25.12.2008 05:20 Miloslav Ponkrác | blog: miloslavponkrac
    Rozbalit Rozbalit vše Re: Čištění kódu - nikdy nekončící práce

    A pak po čase přijde další stádium, a to když budeš programování, algoritmizaci, analýzu a další dokonale ovládat a mít jí stokrát vyzkoušenou - pak přijde stádium, kdy se naučíš pravidla porušovat, a to tak, že z toho vznikne kód, který je efektivnější, čitelnější, srozumitelnější a spolehlivější - a přesto odporuje zavedeným pravidlům. To je nejvyšší stádium v každém oboru, který lze dosáhnout.

    P.S.: Proto nemám rád jazyky, které mě nutí k pravidlům, a tím k neefektivní práci - tedy nemám rád Javu.

    Založit nové vláknoNahoru

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