Tiszta kód - 1. rész: nevek
2016-12-08T09:33:16+01:00
2016-12-17T15:27:01+01:00
2022-06-29T11:26:45+02:00
  • Nem ilyenre gondolok. Semmi bajom pl. az IRQ-val kapcsolatban, ha a kontextusban az megfelelő.
    Mondjuk nem hiszem, hogy sokkal rosszabb lenne a helyzet, ha a clk helyett clock lenne, vagy a tclk, dclk, vclk nevekből is kicsit több kiderülne. tClk is jobb lenne (vagy t_clk), mint a tclk, mert legalább nem gondolhatsz a time counter lock-ra. Az rR-ről meg aztán nem is beszélve.

    Ilyenekkel van inkább bajom:
    1. A változók hol kisbetűsek, hol nagybetűsek, hol camelCase, hol underscore_case.
    2. A függvények főnevek, ahelyett, hogy igék lennének (mit csinál)
    3. A kommentek nem hordoznak semmi plusz információt
    4. hwSpecificTbl1, hwSpecificTbl2, hwSpecificTbl3. Gondolom találóbban is el lehetne nevezni, hogy egyértelmű legyen melyik mire való.
    5. Egészek boolean-nek kezelése sem feltétlen jó ötlet, mert nem látszik, hogy szándékosan van úgy, vagy lemaradt valami.
    6. Egy sorba több utasítás se igazán praktikus.

    Jobb úgy elnevezni a kódot, ahogy ki is ejtenéd. A változókat, objektumokat főnévnek elnevezni, a függvényeket igéknek, a tulajdonságokat melléknévnek.
    Ha figyelsz a tisztakód elveire, akkor olvasható kódot kapsz, mint egy regényt, nem pedig egy rejtvényt, amit meg kell fejteni.
    Mutasd a teljes hozzászólást!
  • Ami roviditeseket az altalad idezett kodban latsz, azok egy szakteruletnek az elterjedt roviditesei. Ha igy sem dereng a jelentesuk, akkor kiírva sem fog mindaddig, amig az adott szakteruletnek az alapjait meg nem tanulod. Onnantol viszont nyilvánvalóvá válik, hogy hely- és idôpazarlás állandóan kiirni pl. azt, hogy ProgramCounterRegister, mivel a PC-rôl ebben a kontextusban senki sem fog pl. a Political Correctness-re gondolni. :D
    Mutasd a teljes hozzászólást!
  • https://prog.hu/tarsalgo/?fid=195476&no=29#e29

    A fenti kód is bizonyítja, hogy van értelme ezen cikkeknek és kicsit komolyabban is kellene venni az olvashatóságot!
    Mutasd a teljes hozzászólást!
  • Szerintem jó a kezdeményezésed és a cikk is rendben van. Azt viszont zavarónak találom, hogy nem tudom könnyen gyorsan áttekinteni, milyen bejegyzések vannak az oldaladon. Kezdetben, amíg nincs túl cikk, tehetnél pl. egy listát jobboldalra, később meg rovatokba szervezhetnéd őket, lehetne kereső stb.

    Ez se SEO szempontból nem jó (bár ez nem tudom, mennyire fontos neked), se az olvasóknak. Cserébe viszont nagyon egyszerűen orvosolható. :)

    Köszönöm, teljesen jogos az észrevétel, és dolgozunk is rajta :)
    Mutasd a teljes hozzászólást!
  • Egy szoval sem mondtam, hogy nem kell tiszta kod, es a formazas felesleges. Mindossze a teljesen legbol kapott szorzoszamot kerdojeleztem meg. Es azt, hogy ez a mentalitas jellemzonek tunik a blogra.

    Rajtad kívül meg senki más sem olvasta, olvassa vagy fogja olvasni azt a kódot?

    Az eredeti posztbol nem volt egyertelmu, hogy nem egy programozora levetitett olvasas / iras aranyrol beszelsz. Ha minden koddal interaktalo fejlesztorol beszelsz, meg olyanrol is, aki csak beteved a repositorydba, es megnezi a kodot, mert erdekli, akkor jah, persze. A 10, vagy afeletti szorzoszam realis.

    Az semmiképpen sem, hogy szerinted kb. annyiszor olvassák a kódot, mint írják (ha erre gondoltál).

    Ezt egy szoval sem mondtam. Csak, hogy a 10x arany nem realis akarmilyen meretu projecten eltoltott hosszabb ido utan. 3-4, az mar jobban elkepzelheto. Olyan fejleszto, aki hosszabb ideig dolgozik az adott projecten.
    Mutasd a teljes hozzászólást!
  • Az elejen nyilvan tobb az olvasas, mint az iras, de idovel a 10:1 aranytol nagyon messze lettem mindig.

    Rajtad kívül meg senki más sem olvasta, olvassa vagy fogja olvasni azt a kódot?

    mert a meglevo koddal problemak vannak.

    Vajon miért nem lepődök meg?

    Ha neked ez gondot okoz, ne vetitsd ki mindenkire.

    Nem pontosan értem, hogy mi okozna nekem gondot. Az semmiképpen sem, hogy szerinted kb. annyiszor olvassák a kódot, mint írják (ha erre gondoltál). Akik úgy gondolkodnak, hogy hülyeség a cikk és felesleges az elnevezésekkel törődni, valamint a tiszta kóddal, na azok okoznak gondot, nap, mint nap, mert az Ő kódjukat is meg kell értenem.

    Emelle volt par projectem is, amit nullarol kezdtem, es onnan vittem el mukodo eszkozig.

    Gratulálok (nem ironikusan)! Ha egyedül fejlesztesz, akkor lehet esetleg kisebb a szorzó. Mondjuk én nem is nagyon emlékszem, hogy hobbi projekten kívül csináltam volna valamit egymagam.

    Remélem azért a lényeg nem sikkad el! Nem az a lényeg, hogy 5, 10 vagy 20-szor annyiszor  olvassák, hanem az, hogy többször, illetve olyanok is olvassák, akik nem is írták.
    Lehet, hogy 5 perc alatt megírtad a kódot, mások meg órákig silabizálják. Azért, hogy ez ne így legyen, kellenek a tiszta, rendezett kódok.
    Mutasd a teljes hozzászólást!
  • Nem az következik, hogy 10-szer többször, hanem az, hogy többször. Szerinted az lehetséges, hogy módosítanak valamit úgy, hogy nem olvassák el és nem tudják mi mit csinál benne?

    A committok szamabol egy adott kodnal csak az kovetkezik, hogy a committok szamaval megegyezo alkalommal lett modositva, es legalabb ugyanannyi alkalommal lett olvasva. Ennyi, semmi tobb. A sorok szamara maximum csak utalas van, de semmi kovetkeztetes. Teljesen realis eset az, hogy tobb sort irsz, mint amennyit at kell olvasni.

    Úgy látom nincs ilyen jellegű tapasztalatod, hadd írom le a mostani projektemet.

    Van. Par 300k+ es jopar 100k+ soros projectben is reszt vettem mar. Az elejen nyilvan tobb az olvasas, mint az iras, de idovel a 10:1 aranytol nagyon messze lettem mindig. Jocskan alatta. Ha neked ez gondot okoz, ne vetitsd ki mindenkire.

    Bar az en munkamra jellemzo, hogy teljes refaktorokat csinalok, mert a meglevo koddal problemak vannak. Emelle volt par projectem is, amit nullarol kezdtem, es onnan vittem el mukodo eszkozig.
    Mutasd a teljes hozzászólást!
  • Azért, mert nem olvastad?

    Miert ne olvastam volna? De eleg ritka hogy egy kodot tobbszor kell elolvasni mint ahanyszor modositom.
    Mutasd a teljes hozzászólást!
  • Miert ne lenne foglalmam rola?

    Azért, mert nem olvastad?
    Én ahányszor módosítok egy kódot legalább annyiszor olvasom is. Nálam ez egy ilyen furcsa alapszabály, hogy nem módosítok bele egy kódba, amit előtte nem olvastam és nem értettem meg.
    Ezen kívül még olyan kódokat is elolvasok, amikbe nem módosítok bele, de kell a módosított kód megértéséhez.
    Sőt még hibakereséskor is elolvasom a kódot, amikben keresem a hibát.
    Mutasd a teljes hozzászólást!
  • A te érvelési hibád: Tekintélyre hivatkozás

    Abban ez is benne van:

    ez az érvelés nem fordítható a visszájára, azaz például egy szaktekintély állítása egy laikuséval szemben nem vonható kétségbe pusztán azon az alapon, hogy a szaktekintély is tévedhet.

    Én nem azt mondtam, hogy ez bizonyíték, csak sokkal többet nyom (számomra) a latban, hogy elismert emberek mondták, mint a Te véleményed. Illetve az is, hogy egyetlen elismert embertől sem hallottam, sőt még a Hup-on se igen találkoztam eddig ellenvéleménnyel. A harmadik meg a saját tapasztalatom. Ezek nekem elég alapot adnak arra, hogy miért gondoljam úgy, hogy ez nagyjából igaz.

    Ebbol egyaltalan nem kovetkezik, hogy 10szer tobbszor olvasom el a kodot, mint irom le.

    Nem az következik, hogy 10-szer többször, hanem az, hogy többször. Szerinted az lehetséges, hogy módosítanak valamit úgy, hogy nem olvassák el és nem tudják mi mit csinál benne? Vagy valahogy olvasás nélkül is tudják, hogy mi mit csinál benne és tudják mit és hogyan kell módosítani?

    Úgy látom nincs ilyen jellegű tapasztalatod, hadd írom le a mostani projektemet.
    Kb. 10 éve futó projekt. Az első 1-2 évben írták a programot,  5-10 programozó. Utána levő években páran vitték tovább és fejlesztettek hozzá. Az azutáni évek meg kb. úgy néznek ki, hogy kb. két évente teljesen új 1-2 ember veszi át és kis igényeket fejleszt, hibákat javít.
    Mostanra több, mint 150 ezer soros csak a fő projekt része.
    Csak amikor átvettem a projektet egy csomó kódot át kellett olvasnom és megértenem, hogy tudjam, hogyan működik. Amikor bele kell nyúljak egy részbe, akkor azt a részt át kell olvasnom, sőt azokat is, amikkel kapcsolatban van.
    Egy-két hétig még emlékszem, de azután már újra át kell olvasnom, lehet, hogy akkor már gyorsabban megy, de akkor is újra meg kell értenem.
    Mutasd a teljes hozzászólást!
  • Szerintem jó a kezdeményezésed és a cikk is rendben van. Azt viszont zavarónak találom, hogy nem tudom könnyen gyorsan áttekinteni, milyen bejegyzések vannak az oldaladon. Kezdetben, amíg nincs túl cikk, tehetnél pl. egy listát jobboldalra, később meg rovatokba szervezhetnéd őket, lehetne kereső stb.

    Ez se SEO szempontból nem jó (bár ez nem tudom, mennyire fontos neked), se az olvasóknak. Cserébe viszont nagyon egyszerűen orvosolható. :)
    Mutasd a teljes hozzászólást!
  • Te egy 10 éves projektbe úgy módosítasz bele, hogy fogalmad sincs hogyan működik?

    Miert ne lenne foglalmam rola?
    Mutasd a teljes hozzászólást!
  • Bibliainak beállított könyvekből és előadásokból vettem. Többen is szerepel, rengeteg olyan embertől, akik elismertek.

    A te érvelési hibád: Tekintélyre hivatkozás

    A triviálisan egyszerű fájlokon kívül mindegyiknél 1-nél sokkal nagyobb lesz a szám, akár három vagy négy jegyű.

    Ebbol egyaltalan nem kovetkezik, hogy 10szer tobbszor olvasom el a kodot, mint irom le.

    Ellenben sehol sem találkoztam még olyannal, ahol ezt cáfolták volna, de talán majd a könyvedben ezt elolvashatom.

    Ez nem erv. :) 

    Szoval, van barmi adatod is?
    Mutasd a teljes hozzászólást!
  • Te egy 10 éves projektbe úgy módosítasz bele, hogy fogalmad sincs hogyan működik?

    OOP esetén még annyival is rosszabb a helyzet, hogy nem csak azt a kódot kell megértened amibe módosítasz, hanem az összes olyat, ami vele kapcsolatban van.
    Nem véletlen van az, hogy sokszor inkább lemásolnak egy kódrészletet és azt módosítják, nehogy elrontsanak valami működőt.
    Mutasd a teljes hozzászólást!
  • A saját tapasztalataim is egyébként ezt erősítik meg,

    Meg is szamoltad mondjuk egy 10 eves projektnel hogy hanyszor olvasol el egy kodot es hanyszor modositod?

    Vagy csak hiszel benne?
    Mutasd a teljes hozzászólást!
  • Ez is hasrautesszeru dolog, vagy valami biblianak beallitott konyvbol vetted(tek), mint a cikkek(itek) tobbi adatat is?

    Bibliainak beállított könyvekből és előadásokból vettem. Többen is szerepel, rengeteg olyan embertől, akik elismertek. Ellenben sehol sem találkoztam még olyannal, ahol ezt cáfolták volna, de talán majd a könyvedben ezt elolvashatom.

    A saját tapasztalataim is egyébként ezt erősítik meg, elhiheted, hogy nem kevés van.
    Te is könnyen meggyőződhetsz erről, ha megnézed az éles projektjeidben egy-egy forrásfájl hanyadik verziójánál tart. A triviálisan egyszerű fájlokon kívül mindegyiknél 1-nél sokkal nagyobb lesz a szám, akár három vagy négy jegyű.
    Mutasd a teljes hozzászólást!
  • Megmondosra sikerultek a cikkek, es az ajanlas helyett olyan erzese van az egesznek, mint "ha nem koveted ezeket a szabalyokat, akkor bena koder vagy."

    Amugy... A nev elsonek osszezavart, latom lambdaklub, mondom magamban, jaj de jo, egy magyar blog ami funkcionalis programozassal foglalkozik (haskellal), es okos dolgok lesznek benne. Erre latom, hogy c#. :(
    Mutasd a teljes hozzászólást!
  • Az sajnos a cikkből is kimaradt, hogy nagyságrendileg 10-szer annyiszor olvassuk a kódot, mint ahányszor írjuk. Így nagyon fontos, hogy minél könnyebben, minél gyorsabban megértsük.

    Ez is hasrautesszeru dolog, vagy valami biblianak beallitott konyvbol vetted(tek), mint a cikkek(itek) tobbi adatat is?
    Mutasd a teljes hozzászólást!
  • Egy Joel Spolsky nevű úr tudna erre válaszolni.
    Making Wrong Code Look Wrong
    Mutasd a teljes hozzászólást!
  • Te tudod, hogy mit szeretnél elérni az oldaladdal, hogy mi a valódi célja.

    Pár példát had soroljak fel neked:

    - Vannak tutorial oldalak, amiken látszik, hogy ebből szeretnének megélni, viszont nem értenek hozzá igazán, nem akarnak időt és energiát belefektetni, az ilyen oldalakon látszik, hogy nem a minőség a cél, és másolgatnak mindenhonnan mindenféle cikket

    - Vannak tutorial oldalak, amiknek az a céljuk, hogy minél jobbak legyenek a programozók, mert ők ebből hasznot húznak majd a másik oldaluk segítségével. Itt nincsenek "rákgyógyító lábáztató és rákgyógyító barackmag" hirdetések, nincsenek gagyi tucat cikkek, csak azért, hogy több legyen és egyel több kattintást szerezzenek

    Te pedig lehet csak önzetlenül segíteni szeretnél másoknak, megosztani a tudásod és fejlődni, miközben utánanézel egy-egy cikknek.

    Másik példák, mondjuk a hírportálok:

    - Itt prog.hu-n és pcforum.hu-n látszik, hogy nem akarnak időt és energiát belefektetni a cikkekbe, gondolom átmásolják egy angol oldalról, meg néha átírják a "Microsoft"-ot "Redmond"-ra, hogy vmi különlegeset is belerakjanak, amitől egy idő után inkább gagyi lesz az egész, nem pedig szakmai. Mondjuk itt kérdés ugye, hogy kit akarsz célközönségnek... A marketing stratégia pedig? Hatásvadász címet adnak, hogy kicsivel több kattintás legyen, és több pénzt tudjanak a látogatókból kiszedni azzal, hogy minden második után meg kell nézniük egy hirdetést. Ahogy látod itt minden tele van hirdetéssel.

    Ha időt és energiát szeretnél belefektetni a marketingbe is, akkor a legjobb, ha megkérsz vagy felbérelsz valakit, aki tényleg profi szinten ért is hozzá. Megtanulhatnád és utánaolvashatnál te is, de ahhoz nem csak az első pár oldalt kell elolvasni egy könyvből.

    Az elején úgyis inkább arra kellene koncentrálni szerintem, hogy minél több cikk legyen az oldalon, és folyamatosan írjátok őket. Ha most odatéved vki, 4 cikk miatt nem biztos, hogy könyvjelzőbe rakja az oldalt, akármilyen is a marketing hozzá.
    Mutasd a teljes hozzászólást!
  • Azt kell mondjam szerencsés vagy :)

    Hat valoban eddig olyan helyeken dolgoztam ahova nem volt mindegy hogy kit vesznek fel (legalabbis az elso munkahelyemet kiveve).

    stay, stoy -- ami valójába startY, stopY csak a maradék betűkkel Ő "spórolni akart"

    Ez ilyen fejlesztonek egy utastiast kell csak adni: ne adjon ketertelmu neveket. De azt gyanitom hogy aki ilyen valtozoneveket hasznal azzal ugysem tudsz mit csinalni, ki kell rugni. Odaadhatod neki a keresztapa osszes irasat akkor is talal modot arra hogy rossz elneveseket talaljon ki.
    Mutasd a teljes hozzászólást!
  • Ha Nálatok ez nem fontos kérdés, akkor saját munkátokat lassítjátok, nehezítitek.

    En nem azt mondtam hogy nem fontos az olvashato kod. Hanem azt hogy hulyeseg nem letezo problemat megoldani.

    Talalkoztam mar utolag nehezen ertheto elnevezesekkel, de nagyon ritkan es akkor sem volt valodi problema belole. Persze lehet rajta idegeskedni, de ez mar mindenkinek a sajat problemaja, nem a kodbol kovetkezik. (nem kotelezo idegeskedni rajta, ezt mindenki maga iranyitja)

    Az egesz keresztapas dologgal csak annyi a problemam hogy nem a helyen kezelik egyesek. Valojaban ezek a leirasak a "nok lapja caffe - 10+1 tanacs a hosszu hazassaghoz" programozoi megfeleloje. Egyesek pedig ugy adjak ezt el mintha ez kozponti elet-halal kerdes lenne.
    Mutasd a teljes hozzászólást!
  • Attol fugg mennyire szeretsz bolhabol elefantot csinalni. Meg soha nem talalkoztam olyannal hogy valami annyira rosszul volt elnevezve hogy ez megakadalyozta volna a megertest. (uzleti kodban)

    Ez nem igaz-hamis dolog, megértem vagy nem értem meg a kódot, a lényeg az, hogy milyen gyorsan értem meg.
    Az sajnos a cikkből is kimaradt, hogy nagyságrendileg 10-szer annyiszor olvassuk a kódot, mint ahányszor írjuk. Így nagyon fontos, hogy minél könnyebben, minél gyorsabban megértsük.

    Ha Nálatok ez nem fontos kérdés, akkor saját munkátokat lassítjátok, nehezítitek.
    Mutasd a teljes hozzászólást!
  • Amit megert aki olvassa. Nem kell tobbet belekepzelni.Meg soha nem talalkoztam olyannal hogy valami annyira rosszul volt elnevezve hogy ez megakadalyozta volna a megertest

    Azt kell mondjam szerencsés vagy :)
    szvsz sokkal jobb, hogy ha amit látok és olvasok az pontosan azt jelenti, mint amit látok és olvasok, és nem kell on the fly interpretálnom, hogy a másik mit akart odaírni, csak azért mert balf.. volt

    példa:
    stay, stoy -- ami valójába startY, stopY csak a maradék betűkkel Ő "spórolni akart"
    vagy
    s, ss
    ha ilyet írok (rövid függvényben valamiért) akkor az "s" nálam string-et jelent (bár ez a kódból rögtön ki is derülne)
    na nála meg SUM és SUMSquare

    mondanám, hogy egy idő után megszokod az idiótájának az elnevezési logikáját, de hidd el, hogy nem
    Mutasd a teljes hozzászólást!
  • Megnéztem a blogot, egész jónak tűnik, igaz még nincs olyan sok cikk.

    Köszönjük!

    Azonban ez az írásmódod itt a társalgóba... Mintha beültél volna az első marketing órádra, ahol elmondták neked, hogy "kérdéseket kell feltenni, visszajelzések kellenek" meg hasonló marketinges csodakifejezések és tanácsok és úgy tűnik nagyon erőltetetten próbálod ezt csinálni, ami legtöbb esetben inkább szánalmassá teszi az egészet (legalábbis számomra biztosan). Főleg ezekkel a visszakérdezésekkel.

    Te hogy csinálnád a helyemben?
    Mutasd a teljes hozzászólást!

  • Szerintetek milyenk a jó elnevezések?

    Amit megert aki olvassa. Nem kell tobbet belekepzelni. 

    Mennyire fontos odafigyelni rájuk?

    Attol fugg mennyire szeretsz bolhabol elefantot csinalni. Meg soha nem talalkoztam olyannal hogy valami annyira rosszul volt elnevezve hogy ez megakadalyozta volna a megertest. (uzleti kodban)

    Mit gondoltok a cikkről?

    Olyan mint amikor a sommelier a vorosbor lekerekitett keksajtos tolgyfahordo zamatarol beszel.
    Mutasd a teljes hozzászólást!
  • Lehet, most nem fordítottam le, mert tinyCore-t használom most. Épp megyek bájcsevegni a Daily Dev Meeting szobába a kolegákkal. Oszt neki kell állnom a billentyűzet koptatásnak.
    Mutasd a teljes hozzászólást!
  • Visszafuszkáltam, és ez biztos nem ír ki olyat. Nem lehet, hogy egy másikat másoltál be véletlenül?
    Mutasd a teljes hozzászólást!
  • A qcc -vel lefordul, és csakl egy Helló Világ-ot ír ki.

    --[régebben ha volt időm és kedvem akkor szórakozgattam ilyen obfuscated kódokással.
    --[ kedvem még lenne most is, csak már időm nincs rá.
    Mutasd a teljes hozzászólást!
  • Ez a qnx-es fordítót kivéve lefordul még valamivel?

    blabla.c:2:2: error: invalid preprocessing directive #o ___o write ^ 1 error generated.

    Az mire lesz jó, hogy backspace-eket írsz ki minden bevitt sor alá?
    Mit kéne csinálnia ennek a programnak?
    Mutasd a teljes hozzászólást!
abcd