Vlákno názorů k článku Gdb pro normální lidi (2) od Pivo - Mile deti. Nechci Vam kazit radost, ale gdb...

  • Článek je starý, nové názory již nelze přidávat.
  • 23. 10. 2003 17:18

    Pivo (neregistrovaný)

    Mile deti. Nechci Vam kazit radost, ale gdb _neni_ pro normalni lidi. Je jen pro zaslepene Linuxaky jako jste vy. Nic si z toho nedelejte, jednou z toho vyrostete - i ja se kdysi rozplyval nad dokonalosti Vimu, prikazove radky apod. a kdyz me nekdo zacal upozornovat na nedostatky meho milacka tucnaka, zacal jsem mu nadavat (stejne jako vy budete ted nejspis nadavat me a rikat ze jsem klikos).

    Ale ted k veci: Kdyz ladim napr. aplikaci v C++, tvorenou nekolika sty zdrojovych souboru, co je efektivnejsi?
    a) mit prehledne zobrazeny strom zdrojaku / trid, kod ktery prave ladim, okenko "watch", okenko "variables", stiskem jedne klavesy krokovat, stiskem jine klavesy nastavit breakpoint, ukazanim mysi na promennou se ihned dozvedet jeji hodnotu atd. atd..
    b) cucet na text. obrazovku 80x25, kvuli kazdemu prdu tukat nejaky prikaz, lustit textove vypisy, ktere to "vyplivne", videt vzdy jen x radku kontextu kolem kodu ktery ladim atd..

    Muze mi nekdo RACIONALNE, BEZ EMOCI vysvetlit PROC povazuje gdb za "vykonny" ladici nastroj? V cem je tahle hruza efektivni? V cem je vykonna? V diskuzi u minuleho dilu psal nekdo o DDD a vypadalo to, ze se skoro stydi za to ze ho pouziva - ostatni mu take hned vysvetlili ze busit v konzoli primo prikazy gdb je produktivnejsi. Pripadne mi, ze vy Linuxaci byste nejradsi ovladali i GIMP z prikazove radky, jako by vizualni zobrazeni a prehledne UI bylo neco fuj, neco pro BFU, klikose a podobny povl, mezi ktery Vy, Linuxaci, prece nepatrite...

    Budu rad, kdyz me presvedcite ze se mylim a kdyz mi - opakuji - RACIONALNE, vysvetlite proc je gdb lepsi.

  • 23. 10. 2003 19:24

    Johanka (neregistrovaný)

    Nereknu Ti, proc je gdb lepsi, protoze jak jsem uvedla, programator jsem spise svatecni. Navic v mem claneku nebylo snad ani slovo o tom, jak je gdb super, powerful, nejlepsi apod., clanek je pro ty, kteri z nejakeho duvodu chteji nebo museji poznat gdb, tem chtel usnadnit zacatky.
    Ze mam radsi gdb nez klikose neni zadna moje bezduvodna filosofie - proste textove rozhrani mam rada, protoze je prehledne, protoze vsechno muzu delat na dalku z naprosto libovolneho pocitace, aniz by se pro me neco zmenilo (ale zkus si na dalku po crapovy siti czfree pustit obrazkovej debugger nebo godzillu nebo open ofis), prikazovy konvertidlo obrazku taky ocenim spis nez gimp, protoze mi zkonverti hafo obrazku jednim prikazem (misto otvirani, resize, zavirani...) a kdyz ma clovek nascanovany desitky negativu, ne vzdy ma cas se tim probirat, vsechno jde skriptovat, automatizovat a to je proste bajecny. Kdyz mas na masine klikos konfiguracni tooly, je to bezva, ze se v tom vyznas.
    Na *jedny* masine. Ale kdyz se staras jako ja + muj nadadmin o 50 linuxovejch masin, tak je dost drsnej rozdil a) nalogovat se na 50 masin a neco naklikat b) jednim prikazem rozdistribuovat zmenenej konfigurak po cely siti.
    Proste to, v cem u me textovy rozhrani a vsechno v nem na cely care vyhrava, je uspora casu, protoze rychlost a automatizace, moznost sedet naprosto kdekoli u libovolne pomaly linky, kdyz moje main masina drepi na Maly strane.
    Abych se vratila k tomu debuggeru, kdyz jsem ladila Cursed Gtk, taky jsem to o vikendech a po vecerech delala na dalku
    (nemuzu v ty praci drepet *furt*, obcas si chci taky neco uvarit k jidlu), protoze masina na Maly strane to zkompiluje za 2 minuty, domaci za hodinu, no a prufuk domaciho pripojeni je i pri ssh konexi nic moc, vzdalene pustena xkova aplikace ho skoro polozi.
    Tak proto gdb.
    Nikomu to necpu, uvadim jen sve osobni duvody.

  • 24. 10. 2003 0:02

    Pivo (neregistrovaný)

    Johanko, asi se pridam k davu tvych obdivovatelu :o) Takhle rozumnou odpoved jsem tu od nikoho necekal. Aby bylo jasno, ja rozhodne nejsem zadny odpurce Linuxu, spis naopak - pod Linuxem programuju a uz 3 roky se tim zivim. Taky umim ocenit, kdyz se daji veci zautomatizovat, kdyz se muzu na server co spravuju pripojit z druheho konce sveta pres ssh a vse co je potreba udelat na dalku.. je spousta veci ktere na Linuxu miluju, myslim si ze umim ocenit silu prikazove radky :) ale vzdycky kdyz prijdu na tenhle server, citim takove.. rozcarovani. Tentokrat jsem to uz nevydrzel a sve srdicko si vylil prave pod timto clankem :) Takze si to neber osobne, klidne to mohl schytat nekdo jiny (treba ten typek co tu kdysi psal o vypalovani a taky vsechno delal pres prikazovou radku a graficke rozhrani ostre odsoudil :) To proste nepochopim... ma zasada je: shell ano, ale ocad pocad :))) Ale to uz jsem off-topic. Mej se!

  • 24. 10. 2003 16:12

    jr (neregistrovaný)

    Víte, ono se poněkud neslučuje se zaměřením tohoto serveru, aby přišel někdo, a řekl, že právě popsaný nástroj je pouze pro šílence, a navrhl místo toho nástroj POUZE pro wokna a POUZE za slušné peníze... Kdybyste raději chtěl zmínit třeba práci s vývojovými nástroji pod KDE, resp. s RHIDE, nebo s (X)WPE, asi by to dalo lidem poněkud lepší pocit než frustraci a znechucení, kterou takto můžete u těch, co preferují Linux do té míry, že hledají nebo vyrábějí ekvivalenty woknových aplikací, jenom aby nemuseli podporovat hegemonii jediné firmy, vyvolat.
    Pokud jde o výhody IDE nad (pro vás surovým) GDB z hlediska komfortu práce, musím souhlasit. Pokud však jde o to, že např. potřebuji odladit svou aplikaci na 10ti dalších počítačích, které se liší jak distribucemi tak OS (všechny mají ale společný základ s UNIXem), pak prostě člověk nemá na výběr.
    Ale právě v tom, že toto rozhraní je všude prakticky stále STEJNÉ a DOSTUPNÉ (pokud ne přímo jako součást systému, tak alespoň zdarma ve formě tarballu zdrojáku), bez ohledu, zdali stroj je nějaký děda HPsUX (packardi a příznivci UXu prominou), nebo poslední verze chameleóna z Nurnbergu...
    Takže, někdo může ty výhody vidět z poněkud jiného úhlu než Vy (tj. komfort není vrchol všeho)... :)

  • 25. 10. 2003 15:56

    Pivo (neregistrovaný)

    Ja v zadnem pripade netvrdim, ze MS Visual Studio je jedina alternativa. Jen me to napadlo jako ukazka hodne komfortniho debuggeru (a priznavam ze taky jako dobra provokace :)

    Kdyz delam pod UNIXem, bohate mi k programovani staci Vim a DDD. Kdysi jsem zkousel ruzna IDE pod Linux, ale vzdy po odpoledni stravenem stahovanim a kompilaci x knihoven na kterych dany program zavisel, kompilaci a testovanim onoho prostredi jsem se vratil zpet k tomu Vimu. Ale na to "Vase" WPE a RHIDE se jdu podivat, diky za tip ;)

  • 25. 10. 2003 9:17

    gmmns (neregistrovaný)

    Jo, timhle prispevkem si u me Johanka taky brutalne splhla. Chtel jsem reagovat sam, ale predbehla me a lip bych to rozhodne nenapsal.

    Tahle Tvoje reakce je taky koser, ale puvodni prispevek mi pripadal vcelku zbytecne konfliktni. Casto se az v delsi diskusi zjisti, ze maji lidi podobny nazor a ze pohled toho druheho neni az tak jednostranny a fanaticky.

  • 24. 10. 2003 16:47

    binary_runner (neregistrovaný)

    Textove rozhrani byva obvykle vyrazne flexibilnejsi. Napr. neni problem ho pres roury propojit s cim zrovna clovek potrebuje. Jiste, nevyhodou muze (ale z principu nemusi) byt nizsi komfort a zpravidla to cloveka nuti si pamatovat dost prikazu nebo parametru. Proto se taky delaji expertni nadstavby -- expertni mysleno ve smyslu expertniho systemu, tedy software, ktery obsahuje a poskytuje jakousi znalost, jako v tomto pripade ddd "zna" gdb.

    Nastinena otazka mi pripomina dilema, jestli jezdit Rolcem nebo Jeepem :), osobne bych v lese Rolcem nejezdil :)). A mimochodem i GIMP se da pouzivat z prikazove radky, a to pomijim fakt, ze kdyz nemuzete pouzit gimp, tak jste jeste kolikrat vdecni za format xpm a vim :).

  • 27. 10. 2003 11:22

    Stepan Kasal (neregistrovaný)

    Napisu taky neco o prikazove radce a takovych vecech, i kdyz ne tak pekne jako Johanka.
    Samozrejme nemam 80x25, ale 130x35, nebo tak nejak, virtualni konzole, ... Nekdo jiny by treba mel nekolik xtermuv nekolika oknech, to neni dulezite. Take se hodi pomoci mysi prenaset kousky textu mezi programy, ktere o tom ani nevedi -- ja pouzivam gpm, ale X by to take poskytly.
    Ale to neni dulezite.
    Mam rad vi, bash a podobne veci, protoze mam pocit, ze vstup ke slozitejsim vecem, kdybych je potreboval, je snazsi. Takove "70i-<Esc>" pro vyplneni radky znakem "-" ma svou krasu. Obcas pouziju prikazovou radku k nahrazovani: "'a,'bs/^/%% /g". V bashi pouzivam na prikazove radce casto for-cyklus nebo while cyklus.
    V grafickem rozhrani ma clovek jednodussi najit jednotlivost, zmenit ji, ale kdyz by se hodilo usnadnit si zivot takovymto miniaturnim "programkem," clovek se neodhodla, protoze by musel prekrocit barieru.
    Take se mi libi, ze kdyz mam pred ocima jen tu informaci, o kterou si explicitne reknu, tak moji pozornost nerozptyluje spousta balastu. (To je ale take argument, proc cist knizky misto koukani na televizi.)
    Vsechno ma svuj rub a lic. Libi se mi logicke ovladani vimu pomoci pismenek, nemusim hledat Shift-F11 apod., ale na druhou stranu se velmi casto v mych textech vyskytne nejake to "i" navic.
    Podobne je skvele, ze po dvou kratkych clancich Johanky si umim treba vypsat, jak se za behu programu menila promenna x, pricemz me
    ale zajimaji jen situace, kdy flagZ byl false. Tohle, nebo nejakou jinou neobvyklou kombinaci, bych ve vizualnim debuggeru delal tezko. Ale dan za tohle je, ze na zacatku se hur startuje: ac jsem kdysi pouzival borlandi Turbo nastroje, na Linuxu jsem se radeji omezil na printf, nez bych studoval dokumentaci, jak krokovat program v gdb.
    Proto se ja celkove klonim k mene vizualnimu stylu, pokud se programovani tyce; mozna kdyby mel Pruzkumnik zabudovane KoPeNogramy ;-)
    Jsou veci, kde je obrazek nutny, nejen editace obrazku, ale treba i graf jak budou moduly propojeny. Ale tam zase je casto tuzka a
    papir mnohem flexibilnejsi nez jakekoli digitalni kreslitko--v digitalnim kreslitku se da udelat finalni verze, je-li nutno ji uchovavat.

    Stepan Kasal

  • 28. 10. 2003 18:41

    walker (neregistrovaný)

    Jak jiz bylo zmineno existuji nadstavby (ddd, xgdb/xxgdb z te okynkove casti).
    To co bylo uvedeno ve dvou clancich zde zdaleka napostihuje plnou silu nastroje jako je gdb, ale to jiste tusite. Pro kohokoliv kdo s timto nastrojem pracuje je todle prijemne osvezeni, pro ostatni prijemny uvod.
    Veci jako je automaticky vypis, watchpoints, save historie promennych jsou to co zapinate po uricte dobe temer automaticky. No nic, diky za zajimavy clanek a diskusi.