Litterat programmering
Litterat programmeringbetyder att man skriver ett programdokument som innehåller alla nödvändiga kodfragment.Tanken är motsatsen till att skriva programkod som innehåller dokumentation som utspridda och osammanhängande kommentarer.Man skriver dokumentation och datorprogram (uttryckt i något programspråk) för ett system i enoch samma fil.Man använder sedan vanligtvis ett verktyg som bryter isär de två delarna och kompilerar programmet till något som går att köra, och dokumentationen till något som går att läsa, om man inte använder en WYSIWYG-redigerare där filen redan är det läsbara dokumentet.
En stor fördel är att man inte behöver skriva programmet utifrån en programspråks- eller kompilatorteknisk disposition, utan kan beskriva programmets delar (chunks) såsom det känns naturligt att läsa dem, uppdelade i kapitel och stycken som en vanlig bok. Verktyget ser sedan till att källkoden kommer i den ordning som krävs för kompileringen.
Litterata programmeringsverktyg:
- Konceptet uppfanns av Donald E. Knuth och finns implementerat i "programspråken" WEB och CWEB. Här läggs dokumentationen in i TeX-formatet och språken är Pascal (WEB) och C (CWEB).
- Norman Ramseys Noweb påminner om WEB/CWEB, men är enklare och oberoende av implementationsspråk och back-end för typsättningen (LaTeX är standard, men det finns färdiga back-ends för TeX, HTML och troff).
- I Sun Microsystems programspråk Java finns en standard för att fälla in dokumentation i programkoden i form av makron och HTML-snuttar. Detta kallas Javadoc, men det är ytterst tveksamt om Java/Javadoc egentligen kan kallas för ett system för litterat programmering.
- I Microsofts nya programspråk C# finns möjlighet till litterat programmering med inspräng XML-formaterad dokumentation. Detta påminner starkt om Javadoc, och det finns alltså även här anledning att ifrågasätta dess plats i den här artikeln.
- I Haskell finns möjlighet för litterat programmering. Då skrivs raderna med Haskell-kod med ett >-tecken först och övriga rader är vanlig text. Filen sparas med filändelse .lhs i stället för .hs.
Länkar:
- http://www.literateprogramming.com/
- Noweb ( http://www.eecs.harvard.edu/~nr/noweb/)
Artikeln skriven 2009-01-17 av Learning4sharing
Inga kategorier för denna artikel än...Intresserad av fler artiklar?
WebproxyMalena Ernman
Skillnaden mellan Plopp samt Center
Kapsyl
Gynnare
PTSD
Axel Nilsson Banér
James Widegren
Klick