Milyen az áttekinthető forráskód?
Ha programozunk, akkor célszerű a forráskódot jól áttekinthetőre csinálni. A következőkben mutatok néhány jó ötletet, amivel áttekinthetővé lehet tenni egy forráskódot. Lehet, hogy néhány magától értetődő:
Bekezdés:
A nyitó és záró kapcsos zárójelek között lévő részeket érdemes egy tabbal bentebb kezdeni:
void main()
{
clrscr();
for (i=0;i<10;i++)
{
printf("%d:",i);
scanf("%d",&(Elemek[i]));
}
QuickSorter(0,9,Elemek);
for (i=0;i<10;i++)
{
printf("%d,",Elemek[i]);
}
getch();
}
Pascalban ez vonatkozik a BEGIN-re és az END-re:
function
RecTangleArea(x1,y1,x2,y2,x3,y3,x4,y4:longint):boolean;
begin
if x2<x1 then
Csere(x2,x1);
if x4<x3 then
Csere(x3,x4);
if x3<x1 then
Csere(x3,x1);
if x4<x2 then
Csere(x4,x2);
if y2<y1 then
Csere(y2,y1);
if y4<y3 then
Csere(y3,y4);
if y3<y1 then
Csere(y3,y1);
if y4<y2 then
Csere(y4,y2);
RectangleArea:=((x2-x1)+(x4-x3)>(x4-x1)) and ((y2-y1)+(y4-y3)>(y4-y1))
end;
Ugyanez van akkor, ha egyutasításos ciklusmagja van egy ciklusnak, vagy IF-nek.
Pascalban használjunk bekezdést a VAR, TYPE és LABEL soroknál is.
Egy sor - egy utasítás:
Próbáljuk egy sorba csak egy utasítást írni.
Háromsoros komment:
Az alprogramokat válasszuk el egymástól háromsoros kommenttel, amiben rövid leírás van az adott alprogramról. Nagyban növeli a forráskód áttekinthetőségét. Ha a színe szürkére van állítva, akkor jól látható elválasztóként is szolgál.
Pascal:
{----------------------------------------------------------------------------}
{ Lefelé kerekítő függvény
}
{----------------------------------------------------------------------------}
function Uround(x:real):longint;
var
s:longint;
begin
s:=Trunc(x);
if (x<0) and not (x=Trunc(x)) then Dec(s);
Uround:=s;
end;
C/C++:
//-----------------//
// Rajzoló eljárás //
//-----------------//
void Rajzolas() // MainPaint
{
HDC hdc;
hdc=GetDC(FoAblak);
glLoadIdentity();
glMatrixMode(GL_PROJECTION);
glOrtho(0,ResX,ResY,0,0,10000);
glClear(GL_COLOR_BUFFER_BIT);
U.Megjelenit();
glColor4f(1.0,1.0,1.0,Alfa.Alfa());
KepernyoRajzolas();
SwapBuffers(hdc);
ReleaseDC(FoAblak,hdc);
}
Konstansok deklarálása:
Érdemes minden állandó értékre létrehozni egy konstanst. Pl.: csillagok száma, max hossz, stb. Így ha módosítani akarjuk a számot valami oknál fogva, akkor elég lesz csak a konstanst átírni:
Pascal:
const
ProfilCount=8;
C/C++:
Használjunk define-t a const helyett.
#define FPS 60
Egyenlőre ennyi jutott eszembe. Remélhetőleg folyamatosan bővülni fog a lista.