Сорсфайлове

От Уикикниги

Въведение[редактиране]

Програмирането не е самоцелно занимание. Пред програмиста седи някакъв проблем, който той трябва да реши. За целта първо се прави внимателен анализ на проблема с цел да се намери цялостно и най-полезно решение. Анализът на даден проблем(или задача) включва:

  • избор на език и платформа за програмиране
  • избор на технология и техника на програмиране
  • създаване на алгоритъм за решаване на съответния проблем

Чак след това се пристъпва към реализацията на вече изработения алгоритъм. Реализацията на даден алгоритъм на някакъв език за програмиране се нарича сорскод. Обикновено сорскодът се записва в текстови файлове, които се наричат сорсфайлове.

Сорскод, сорсфайлове и С++[редактиране]

Както вече стана дума сорсфайловете са текстови файлове. Всеки език има различни изисквания към формата на сорсфайловете. В С++ е прието е прието основният сорскод да се записва във файлове с разширение ".cpp". Освен ".cpp" друго често срещано файлово разширение е ".h", което се използва за заглавните файлове. Заглавните файлове съдържат код, който може да се използва многократно - концепцията за заглавните файлове ще разгледаме по-нататък. Разбира се съществуват и други разширения за С++ сорсфайловете, ето и техен непълен списък:

  • Сорсфайлове:
    • .c
    • .cc
    • .cpp
    • .cxx
  • Заглавни файлове:
    • .h
    • .hc
    • .hpp
    • .hxx

Организация на сорскода[редактиране]

При малки програмки, с дължина на кода от десетина реда, обикновено всичко е ясно и сорскодът е записан в един единствен файл, но когато дължината на сорскода започне да нараства се налага той да бъде разделен и записан в няколко различни файла. По този начин значително се улеснява работата със съотвения код, а и освен това се намалява времето за компилиране на целия проект.

Всъщност разделянето на сорскода на отделни модули е особено полезно, когато целият проект се разработва от повече от един човек. В този случай различните екипи работят върху различни модули. Като всеки от модулите извършва точно определен набор от задачи. Друго предимство на модулното програмиране е, че различните части от един проект могат да бъдат променяни и тествани по отделно, без това да указва влияние върху целия проект. Обикновено даже и при малки проекти разделянето на един проблем на няколко по-малки части води до ускоряване на процеса на разработка, а и кодът става по-лесно разбираем и по този начин се улеснява бъдещата му повторна употреба.