Mis on pasta programmeerimise teooria?

Programmeerimise pastateooria on seotud erinevate programmeerimisstruktuuride keerukusega. Nii nagu pastat on erineva suuruse ja kujuga, kehtib sama ka programmeerimiskoodiga. Pastateooria puhul kasutatakse teatud tüüpi pastasid värvilise illustratsioonina, et tuvastada teatud programmeerimisprotokollide komplektiga seotud aspekte.

Üks suurepärane näide programmeerimise pastateooriast on spagettide kood. Keedetud spagette serveeritakse sageli kiudude kogumina, mis ristuvad ja põimuvad üksteisega. Ühte spagettide kiudu on praktiliselt võimatu eraldada, ilma et see teisi kiude mingil määral häiriks.

Seda tüüpi pastateooria puhul mõistetakse, et programmeerimine on mõnevõrra juhuslik ja kaootiline. Programmeerimiskoodi tegelik struktuur on vähe või puudub üldse. Lõpptulemus on see, et jada ühe osaga seotud koodi muutmise katse tekitab sageli ettenägematuid probleeme koodi teise osaga. Selle tulemusena on spagetikoodi loogilise edenemise seisukohalt äärmiselt raske mõista ja sama raske muuta ilma uusi probleeme tekitamata.

Seevastu programmeerimise pastateooria võib viidata ka kõrgelt struktureeritud programmeerimisele. Üks seda tüüpi teooria näide on tuntud kui lasanjekood. Lasanje on kihiline pastaroog, mille koostisained on teadlikult ja järjepidevalt lasanjenuudlite kihtide vahel asetatud. Lõpptulemuseks on pastaroog, mis on läbivalt ühtlane ja kergesti identifitseeritavateks komponentideks lagunev.

Kui pastateooria või programmeerimine kasutab programmeerimistööle viitamiseks terminit lasanje kood, on see loogika ja korra esiletõstmine, mis näib reguleerivat kogu koodi struktuuri. Koodi sektsioone on võimalik muuta, ilma et tekiks kuskil hiljem kooditöötluse käigus ootamatu reaktsioon. Loogiline edenemine ja järjestamine on lasanjekoodi iseloomulikud tunnused, muutes selle kaootilisema spagetikoodi vastandiks.

Programmeerimise pastateooria kontseptsioon omistatakse tavaliselt Raymond Rubeyle. 1992. aastal ajakirjale kirjutatud kirjas kasutas Rubey programmeerimisstrateegiatele ja -olukordadele viitamiseks ravioolide ja spagettidega seotud terminoloogiat. Programmeerimise pastateooria üldidee sai kinni ja peagi hakkasid paljud erinevat tüüpi pastasid kasutavad programmeerijad märgistama erinevaid programmeerimismeetodeid. Mõnel juhul viitas pastanimede valik antud programmeerimiskoodi lähenemisviisi kasulikele atribuutidele, samas kui teised viitasid programmeerimismeetoditele, mida peeti vähem tõhusaks ja struktureeritud.