Alle av oss programmerere, uansett hvilket språk, uansett hva slags prosjekt vi jobber med, har lidd av et resultat av dårlig planlegging eller mangel på det. Dette skjer spesielt på hobbyprosjekter hvor vi ikke blir tvunget til å planlegge som om vi var på jobb (Selv planlegger det ofte suger). Da jeg var beggining programmerer jeg aldri ferdig med et prosjekt forbi en tutorial eller liten test funksjonalitet. Grunnen er fordi jeg var for lat til å selv forsøke å planlegge prosjektet mitt. Jeg trodde jeg kunne gjøre alt i hodet mitt. Gjett hva? Det virker ikke.
Det er mer til suksess da bare skrive en plan om, kan dårlig planlegging komme deg gjennom, men det kommer til å bli alvorlig smerte i ræva senere. Nøkkelordet her er detalj. Folk i spillbransjen sikkert vet hva jeg snakker om. Å måtte jobbe med en vag oversikt over hvordan noe fungerer helt sucks.To forklare hva du trenger å gjøre, jeg kommer til å bruke min operativsystem prosjektet som et eksempel. Skrive et operativsystem er et veldig stort og komplekst prosjekt, og derfor et godt eksempel for planlegging.
Da jeg begynte å jobbe med dette prosjektet var det første jeg gjorde var å sette opp en googlecode konto. Jeg sier ikke at du må bruke googlecode og være åpen kildekode, men lærdommen her er wiki. Wikier er Guds gave til programmerere for planlegging. Jeg kan oppdatere, redigere og omskrive deler av min design med letthet og på en organisert måte. Når du er ferdig med å sette opp et sted å skrive din design, trenger du å layout formålet med prosjektet. Her er noen ledelinjer. 1. Hva slags prosjekt skal du jobbe med? 2. Hvilke funksjoner vil prosjektet ha? 3.
På hvilken plattform vil den kjøre? (Windows, Linux, ect.) 4. Hvem skal bruke den? Etter fastsettelse av den grunnleggende fundament for prosjektets design, må du skrive en oversikt over hvordan det vil fungere (The Nitty gritty ting kommer sistnevnte). En god måte å starte dette på er å tenke på prosjektet som en samling av blokker eller deler all montering og fungerer sammen. Dette hjelper deg å visualisere hva du må gjøre når du skriver koden. Her er et eksempel på en monolittisk kjerne overview.Lastly, du trenger for å lage en detaljert beskrivelse av prosjektene dine interne arbeidet.
Skriv ut de viktigste funksjonene du trenger for å få det til å fungere. Hva jeg mener med hoved er funksjoner som, for det meste, ikke er avhengige av hverandre. Deres underfunksjoner ikke er nødvendig å skrive ut, fordi dersom en av de viktigst