2009-08-04, 11:56
#61
Citat:
Ursprungligen postat av gosh
Din egen slutledningsförmåga "suger"
Men du bestrider inte mitt påstende ändå att du inte är en av dessa få personner?

Citat:
Ursprungligen postat av gosh
Haha, du menar du ligger och läser kod som skönliteratur 

I viss mening, ja det är vad man eftersträvar. Det finns ful kod, vanlig kod och sedan vacker kod som man lär sig mest från. Revolutionerande idéer från de som är bäst på det de gör. Design-mönster som ger en "aha! smart!" känsla.
Citat:
Ursprungligen postat av gosh
Och vad är ren kod? För en tekniker eller en som knackat assembler kod och tänker som processor så är det inget konstigt alls med att ha typen före, det är ren kod.
Rent är naturligtvis subjektivt, men i detta fall syftade jag på "rent" med avseende på hur verbalt någonting är. I.e. likvärdigt med att ha "elementCount" istället för "stNumberOfElementsInTable".
Roligt att du tar upp assemblerkodare föresten. Måste tyvärr upplysa dig om att OO-programmering med C++ använder sig (bör använda sig) av helt andra stilar än C/assembler. För att citera Wikipedia som citerade Bjarne:
"No I don't recommend 'Hungarian'. I regard 'Hungarian' (embedding an abbreviated version of a type in a variable name) a technique that can be useful in untyped languages, but is completely unsuitable for a language that supports generic programming and object-oriented programming—both of which emphasize selection of operations based on the type an arguments (known to the language or to the run-time support). In this case, 'building the type of an object into names' simply complicates and minimizes abstraction."
Citat:
Ursprungligen postat av gosh
Jag vet att det inte går in i huvudet på folk som förespråkar något annat, det enda sättet och få dem och fatta är att man startar två parallella projekt och jämför. När de är klara så ber man några andra programmerare förstå koden och börja jobba i den. Skillnaden är väldigt stor.
Du har fortfarande inte kommenterat varför det kan komma sig att två gigantiska C projekt med mycket större orsaker att använda sig av ungersk-notation inte använder det. Vi snackar inte om vanliga C++ projekt utan fall där fundemental funktionalitet (läs: interaktion med hårdvara) skiljer sig beroende på om någonting är en "int" eller en "long long".
Citat:
Ursprungligen postat av gosh
Om man inte begriper så börja och testa med att jämföra kod där man har respektive inte har "m_" före medlemsvariabler
Tja... min editor färglägger medlemsvariabler i en annan färg än vanliga lokala. Med eller utan "m_" ser jag ändå skillnaden.

Intressant nog använder jag själv ändå scope-prefixer, en vana som snappades upp efter att ha kodat multitrådat. Jag betraktar det mer att tillhöra Apps formen eftersom globala/medlemsvariabler i många fall måste behandlas med större omsorg där (i.e. någon form av "Varning!! Se upp när du accessar variabeln! Överväg lås!").
Citat:
Ursprungligen postat av gosh
Du får gärna visa lite komplex kod skrivet på ditt sätt som går snabbare och sätta sig in så att man kan jobba i koden jämfört med att ha typen innan.
http://pastebin.com/f76b9f7e2
http://pastebin.com/d766ae987
Ökar ungersk-notation läsbarheten av koden? Nej, den drar bort fokus från det viktiga. Ta "pcullBlock" som ett exempel. Ja, man ser att det är en pekare till en konstant unsigned long long men har man bara ett bättre minne än en guldfisk så kommer man ändå ihåg att "tja... vi arbetar ju med 64-bitars block här".
Design-dokumentet ligger externt i form av en word-fil som förklarar varför man gör som man gör där inne. Kommentarer om hur crc32cx2_sse42 används är överflödit. Indata parametrarna har väldigt standariserad form. Man behöver inte ens gissa till sig att "man skickar en buffert och en längd och får sedan en hash".
ps. Glöm inte att kommentera varför C-projekt som Linux-kärnan och FreeBSD uppenbarligen klarar sig finfint utan ungersk-notation. Glöm inte heller att kommentera varför modernare språk och bibliotek som C# och Java inte heller använder sig av det.
__________________
Senast redigerad av Weeblie 2009-08-04 kl. 12:17.
Senast redigerad av Weeblie 2009-08-04 kl. 12:17.