Det här är något av det dummaste som någonsin sagts om kommentarer. Jag hävdar att det går aldrig att skriva kod som är så bra att den i sig förklarar varför den gör som den gör. För det är just det som är poängen med kommentarer. Man skall dokumentera varför koden ser ut som den gör. Inte vad den gör. Alla som följer detta borde få plikta med att få backspace disablat.abcabc skrev:bra skriven kod är självdokumenterande
Stor nytta med historisk Unix version 6 från 1975
-
- EF Sponsor
- Inlägg: 921
- Blev medlem: 26 maj 2014, 12:54:35
- Ort: Karlskoga
Re: Stor nytta med historisk Unix version 6 från 1975
- hcb
- Moderator
- Inlägg: 5761
- Blev medlem: 23 februari 2007, 21:44:50
- Skype: hcbecker
- Ort: Lystrup / Uppsala
- Kontakt:
Re: Stor nytta med historisk Unix version 6 från 1975
Vad säger du om `Literal Programming'?
(Nej, jag dörjar inte, jag är genuint nyfiken.)
(Nej, jag dörjar inte, jag är genuint nyfiken.)
Re: Stor nytta med historisk Unix version 6 från 1975
Kan inget annat än att hålla med kodar-holger, Kod SKALL vara noggrant dokumenterad, till varje funktion SKALL det finnas en noggrann beskrivning vad den gör osv.
Världens mest buggfira kod, där tar dokumentationen och kommentarerna upp typ 10-20 ggr mer plats än koden i sig, i princip varje kodrad är motiverad , (koden till rymdskyttlarna)
Världens mest buggfira kod, där tar dokumentationen och kommentarerna upp typ 10-20 ggr mer plats än koden i sig, i princip varje kodrad är motiverad , (koden till rymdskyttlarna)
Re: Stor nytta med historisk Unix version 6 från 1975
Det här är mitt favoritexempel på "dokumenterad" kod. Det är mer
en manual/tutorial for USART som även kan köras direkt i MPASM.
Den är för en utgången PIC modell, men väldigt välgjort...
http://www.piclist.com/images/com/frees ... icuart.asm
en manual/tutorial for USART som även kan köras direkt i MPASM.
Den är för en utgången PIC modell, men väldigt välgjort...
http://www.piclist.com/images/com/frees ... icuart.asm
- lillahuset
- Gått bort
- Inlägg: 13969
- Blev medlem: 3 juli 2008, 08:13:14
- Ort: Norrköping
Re: Stor nytta med historisk Unix version 6 från 1975
Ett problem med väldokumenterad kod är att man ibland läser komentarerna som beskriver vad som bör ske men att någon har ändrat koden så något annat sker. Det är inte alltid dokumentationen beskriver verkligheten. Vilket den naturligtvis ska. Men vi är ju alla pajasar då och då.
Re: Stor nytta med historisk Unix version 6 från 1975
Då är den per natur inte väldokumenterad.
Varje förändring skall dokumenteras med orsak och verkan , mm
Varje förändring skall dokumenteras med orsak och verkan , mm
Re: Stor nytta med historisk Unix version 6 från 1975
Jag jobbar med kod som är över 30 år gammal och som har haft löpande
småändringar under alla år. Där får man verkligen kolla koden ordentligt
för att se *vad* som händer. *Varför* den gör det den gör kan man oftast
glömma, de som visste det är sedan lång tid på andra jobb eller i pension.
Koden från de senate 8 åren (den tid jag har varit med) är ganska OK
att förstå...
småändringar under alla år. Där får man verkligen kolla koden ordentligt
för att se *vad* som händer. *Varför* den gör det den gör kan man oftast
glömma, de som visste det är sedan lång tid på andra jobb eller i pension.
Koden från de senate 8 åren (den tid jag har varit med) är ganska OK
att förstå...
- lillahuset
- Gått bort
- Inlägg: 13969
- Blev medlem: 3 juli 2008, 08:13:14
- Ort: Norrköping
Re: Stor nytta med historisk Unix version 6 från 1975
Jodu TomasL, vilken planet kommer du ifrån? Eller är det så att du är en fjunig fjortis?
Re: Stor nytta med historisk Unix version 6 från 1975
Man måste ha en policy som tillåter folk att bara helt enkelt göra tillägg som säger att kommentarerna har fel, utan att förklara exakt vad. Annars kommer folk bara ändra koden så att kommentarerna är fel utan att nämna det...lillahuset skrev:Ett problem med väldokumenterad kod är att man ibland läser komentarerna som beskriver vad som bör ske men att någon har ändrat koden så något annat sker. Det är inte alltid dokumentationen beskriver verkligheten. Vilket den naturligtvis ska. Men vi är ju alla pajasar då och då.
- lillahuset
- Gått bort
- Inlägg: 13969
- Blev medlem: 3 juli 2008, 08:13:14
- Ort: Norrköping
Re: Stor nytta med historisk Unix version 6 från 1975
I den värld jag har verkat har det aldrig fungerat.
Re: Stor nytta med historisk Unix version 6 från 1975
Snyggt exempel !sodjan skrev:Det här är mitt favoritexempel på "dokumenterad" kod. Det är mer
en manual/tutorial for USART som även kan köras direkt i MPASM.
Den är för en utgången PIC modell, men väldigt välgjort...
http://www.piclist.com/images/com/frees ... icuart.asm
Ex, att få veta det som kommentaren nedan berättar kan ju spara en del tid.
Kod: Markera allt
;GOTCHA! If you are using a MAX232 or similar device that uses
;charge pumping, you might want to place a delay routine
;right HERE to ensure that the charge pump voltage has risen
;to its proper operating level before any actual RS232
;level i/o is attempted!
Re: Stor nytta med historisk Unix version 6 från 1975
Den kommersiella världen, där vi försöker tjäna maximalt med pengar på våra produkter.lillahuset skrev:Jodu TomasL, vilken planet kommer du ifrån? Eller är det så att du är en fjunig fjortis?
Sodjans länk visar hur man skall göra, att sedan formatera det hela för DoxyGen, eller liknande är naturligtvis ett krav också.
Re: Stor nytta med historisk Unix version 6 från 1975
Ja, jo, även om det är ett lite extremt exempel. Det är lika
myckt en kurs i hur PIC USART fungerar som ren kod. Om man
förutsätter vissa grundkunskaper så hade det nog inte blivit
riktigt lika fylligt med text i exemplet...
myckt en kurs i hur PIC USART fungerar som ren kod. Om man
förutsätter vissa grundkunskaper så hade det nog inte blivit
riktigt lika fylligt med text i exemplet...
Re: Stor nytta med historisk Unix version 6 från 1975
Förvisso, men om man kommenterar på det sättet blir det extremt enkelt för nästkommande utvecklare att sätta sig in i koden, samt eventuellt buggrättande underlättas radikalt.
Just det här med att inkorporera HW-errata och liknande är naturligtvis ett måste.
Just det här med att inkorporera HW-errata och liknande är naturligtvis ett måste.
Re: Stor nytta med historisk Unix version 6 från 1975
Jag tror att många faller i den fällan att man tänker "Äsch, jag slänger ihop det här, det här systemet ska inte leva så länge".TomasL skrev: Den kommersiella världen, där vi försöker tjäna maximalt med pengar på våra produkter.
Sodjans länk visar hur man skall göra, att sedan formatera det hela för DoxyGen, eller liknande är naturligtvis ett krav också.
Och, i och med det tankesättet så tar man inte heller betalt för att sitta och dokumentera (eller testa för den delen).
Sen visar det sig att systemet trots allt fortsätter att leva år efter år och till slut när ingen längre kommer ihåg något
om programmet och de personer som ursprungligen var involverade inte längre är kvar, då blir det ett problem.
Jag gillar Sodjans exempel, det finns en hel hög med "Gotchas" i koden som förklarar knepigheter
där processor och omgivande elektronik inte kanske beter sig som en programmerare skulle tro.
Mycket handlar ju om förkunskaperna hos dem man sätter koden i händerna hos.
Däremot så pekar ju Sodjan också ut ett annat problemområde, nämligen "varför gör koden så här", dvs. affärsregler.
Det här är ju så mycket lurigare eftersom man till slut (efter lite personalomsättning) kan hamna i en situation där
ingen riktigt vet varför ett kodavsnitt finns där.
Ex. vem har bestämt att jämna ordernummer ska ges 3% rabatt på en viss artikelgrupp ?
Dvs. koden kan vara tekniskt helt perfekt, testad och buggfri men ändå fel sett till hur företaget vill bedriva sin verksamhet.
/Johan