Documente Academic
Documente Profesional
Documente Cultură
Stiluldeprogramaresedefinestecaunsetdereguliutlizatinscriereacoduluisursapentru
programedecalculator,avanddreptscopfacilitareacitiriisiintelegeriirapideaacestuiadecatretoti
dezvoltatorii.Acestarticolseadreseazainprincipalcelorcarenusiaudefinitpanainacestmomentun
stilbundeprogramare,dartotodatasiceiexperimentatiarputeagasicatevalucruriinteresantesi
folositoare.
InurmatoarelecatevarandurivorfiprezentateprincipaleleelementedestilpropusedeLinus
Torvalds,creatorulkerneluluilinux,sitotodatacelcareconduceinprezentechipadedezvoltarea
acestuia.
1. INDENTARESISPATIERE
indentareaseutilizeazapentruadefiniinmodclarundeincepeunblocdecontrolsiunde
seincheie
pentru a realiza indentarea codului se recomanda folosirea taburilor si nu a spatiilor
(marimearecomandatapentrutabeste4)
puneticateunspatiudupafiecarevariabila,operator,paranteza.Codultrebuiesafiecatse
poatedeAERISIT.
Urmariticuatentieexemplul:
intpower(inta,intb)
{
intc=1;
while(b>0){
c=c*a;
b=b1;
}
returnc;
}
2.AMPLASAREAACOLADELOR
stilulrecomandatinaceastaprivintaesteamplasareaacoladeideschiseultima,peliniecu
instructiuneacatrecarefacereferinta,iaracoladainchisavafiplasatapelinieseparatadupa
cumseobservainexempluldemaijos.
if ( x is true ) {
we do y
}
Existasioexceptiedelaregulademaisusincazuldefiniriifunctiilor.Acoladadeschisava
fiplasatalainceputullinieiurmatoareconformexempluluidemaijos.
int count( int x )
{
body of function
}
Atentie!Acoladainchisavafisingurapeliniecuexceptiacazurilorcandesteurmatade
continuareaaceleiasideclaratii.Urmaritiexempluldemaijos!
do {
body of do-loop
} while (condition);
SAU
if (x == y) {
..
} else if (x > y) {
...
} else {
....
}
3. STABILIREANUMELOR
4.FUNCTII
functiiletrebuiesafiescurtesisafacaunsingurlucru.Marimeauneifunctiinutrebuiesa
depaseascaunulsaudouaecrane(ISO/ANSImarimeecran80x24).
lungimea unei functii trebuie sa fie invers proportionala cu nivelul de indentare si
complexitateaacesteia.AstfeldacaavemofunctiealcatuitadintrunCASEfoartemarein
interiorulcaruiasefacoperatiisimpleatunciesteinregulasaavemofunctiemailunga.
Unaltaspectcaretrebuieavutinvedereincazulfunctiilorestenumaruldevariabilelocale.
Daca acesta este mai mare de 510 atunci functia in discutie trebuie reorganizata si
impartitiainbucatimaimici.
5.COMENTARII
Comentariile sunt un lucru bun, dar exista riscul unei supracomentari. Niciodata nu
incercatisaexplicaticumfunctioneazacodul;dacacodulestescrisclaratunciacestlucurva
fievident.
In generalcomentariile descriu cefaceuncod,sinucum face acel lucru. Incercati de
asemeneasaevitatiamplasareacomentariilorininteriorulfunctiilor.Dacafunctiaesteatat
decomplexaincattrebuiesacomentatipartialeei,atuncimaicititidecatevaoripunctul4.
In interiorul functiilor se pot face mici comentarii pentru a clarifica anumite lucruri
speciale,dartotusinutrebuieexageratinaceastaprivinta.Puneticomentariilainceputul
functiiloroferinddetaliicuprivirelacefacesidacaestecazuldecefaceacelelucruri.
Documentatiecompleta:
http://lxr.linux.no/linux/Documentation/CodingStyle
VladBerteanu2008
ProgramareaCalculatoarelorseriaCC