Polski Serwis Naukowy - OnLine od 1999 roku RSS RSS
  auto?
Piątek, 10 lutego 2012
Gabriel, Scholastyka, Jacek, Tomisława
 W 1920 roku gen. Józef Haller dokonał symbolicznych zaślubin Polski z Morzem Bałtyckim
 1925 - Polska podpisała konkordat z Watykanem
 1990 - na Kremlu spotkali się Michaił Gorbaczow i Helmut Kohl - przywódca ZSRR wyraził zgodę na zjednoczenie Niemiec
Dodaj do: 
Dodaj link do serwisu Facebook   Dodaj link do opisu GG  Dodaj link do serwisu Wykop   Dodaj link do serwisu Google   Dodaj link do serwisu Twitter  Dodaj link do serwisu Wyczaj.to   Dodaj link do serwisu Gwar  

Dodaj link do serwisu Delicious  Dodaj link do serwisu Digg   Dodaj link do serwisu Furl   Dodaj link do serwisu Reddit   Dodaj link do serwisu Slashdot  Dodaj link do serwisu Technorati   Dodaj link do serwisu YahooMyWeb
Nowe publikacje
Artykuły
Wydarzenia
Kompendium
[C++] Pisanie czytelnego kodu

Opublikowane przez: Damian Panas

Dodano: |28 Maj 2010|, 2010 16:08
cytuj
" "

Programista C++, chyba jak żaden inny, ma ogromną swobodę w pisaniu kodu. Jest to niewątpliwie duża zaleta C++, jednak niemądry programista może ową dużą zaletę szybko przekształcić w jeszcze większą wadę. Oto przykładowy program:

#include <iostream>
#include <string>


using namespace std;

int main()
{
int n; // liczba wysiwetlen
string imie; // imie usera
cout << ''Podaj imie: '';
cin >> imie;
cout << ''Podaj liczbe wyswietlen: '';
cin >> n;
for (int i=1; i<=n; i++) // Pętla wyświetla n-razy podane imie
cout << ''Witaj '' << imie << endl;
return 0;
}

Jak widać kod jest czytelny, zaopatrzony w komentarze ułatwiające zrozumienie. Spójrzmy teraz, jak można ten sam program napisać w sposób niewłaściwy:

#include <iostream> #include <string>
using
namespace

std; int main()
{ int n;
string imie; cout << ''Podaj imie: '';
cin >> imie;
cout << ''Podaj liczbe wyswietlen: ''; cin >> n;
for
(int i=1; i<=n; i++) cout
<<
''Witaj '' <<
imie << endl; return 0;}

Próba odczytania takiego kodu może być prawdziwą gehenną, nawet dla samego autora. Należy więc się wystrzegać pisania takiego, jak na drugim przykładzie. Umiejętność pisania czytelnego kodu jest w świecie programowania prawdziwą cnotą (notabene wymaganą przez każdego pracodawcę z branży informatyki). Należy więc robić wszystko, aby kod był jak najbardziej zrozumiały. Oto kilka prostych rad:
  • Komentarze. Oczywiście nie trzeba komentować każdej linijki kodu. Jednak komentowanie funkcji czy pętli po przez opisanie jej działania, jest rzeczą jak najbardziej wskazaną.
  • Nazwy. Odpowiednie nazwy stałych, zmiennych, tablic, funkcji, działają podobnie jak komentarze. Nie ważne z jakiej liczby funkcji nasz program się składa. Odpowiednie nazwy ułatwiają czytanie kodu oraz chronią nas przed ewentualnymi błędami. Dlatego też, np. zamiast deklarować zmienną o nazwie izt, lepiej zadeklarować ile_zjadl_tata. Poszczególne wyrazy rozdzielamy łącznikiem (białe znaki, podobnie jak polskie, są niedopuszczalne), używamy tylko małych liter. Jest to jedna z najbardziej powszechnych i czytelnych form zapisu.
  • Wcięcia. Wcięcia zwiększają czytelność kodu szczególnie w przypadku zagnieżdżeń, np. pętli lub instrukcji warunkowych. Większość kompilatorów automatycznie wykonuje wcięcia w następnej linijce po znaku { . Jeśli jednak Twój kompilator tego nie robi, wykonuj je samodzielnie.
  • Funkcje. Odpowiednie dzielenie programu na funkcje ma mnóstwo zalet. Jedną z nich jest zwiększenie czytelności kodu. Jeśli więc masz taką możliwość, staraj się funkcji main nie zaśmiecać. Traktuj ją bardziej jako miejsce wywoływania poszczególnych funkcji.
  • Deklaracje. Staraj się deklarować zmienne, stałe, itp. na początku funkcji. Dzięki temu programista, niebędący autorem kodu, może przewidzieć dalszą treść kodu i tym samym łatwiej ją zrozumieć.

Początkujący programista szybko przekonuje się, że stosowanie powyższych rad jest niezwykle korzystne. Warto więc się z nimi na stałe zapoznać, ponieważ każdy dobry programista ma moralny obowiązek się do nich stosować.


Bibliografia:
Stephen Prata, Szkoła Programowania. Język C++, wyd. Helion, ISBN 83-7361-958-5

komentuj publikację



^
 
Komentarze: brak
Skocz do:  

Dodaj temat do Ulubionych



Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group