Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
40
20Wprowadzeniedoprogramowania
oprogramowania
Projektowanie
Edytorkodu
(emacs,IDE)
ikodowanie
WDROŻENIEOPROGRAMOWANIA
Generator
(CMake)
projektu
Preprocesor
Kompilacja
(Gcc,clang,MSVC)
OPROGRAMOWANIA
Kompilator
BUDOWA
Konsolidacja
Konsolidator
Repozytorium
Profiler
(GitHub)
Debugger
(Gdb,MV)
Debugowanie
oprogramowania,
Debugowanie,
Testowanie
Utrzymanie
OPROGRAMOWANIA
WDROŻENIE
Komputertypumainframe
Rysunek2.3.Ekosystemtworzeniaoprogramowania.AbywykonaćprogramnapisanywC++,musion
zostaćprzetłumaczonyprzezkompilatornareprezentacjęmaszynową.Jakożeprogrammożeposiadać
częściikorzystaćzuprzedniostworzonychbibliotek,wszystkieonemuszązostaćpołączonewjedną
postaćwykonywalną.Odpowiadazatokonsolidator.toetapybudowyoprogramowania.Dalej,po-
staćwykonywalnamusizostaćodpowiednioprzetestowanaizdebugowanawceluusunięciausterek.
Działanieaktualnejwersjinastępniemożezostaćzoptymalizowanedziękiuruchomieniuprofilera.Jego
roląjestpomiarwydajnościkomponentówoprogramowaniawceluwykrycia„gorącychmiejsc”
,czyli
tychfragmentówkodu,którepochłaniająnajwięcejczasuwykonania.Całyprocestworzeniaoprogra-
mowaniamożebyćkontynuowanywceluzbudowanianastępnej,lepszejwersji.Wtrakcietegoprocesu
niemożemyzapominaćoochronieikontroliwersjinaszegooprogramowania.Możnatołatwoosiągnąć,
korzystajączkontroliźródełorazplatformyumożliwiającejwersjonowanie.Gdyoprogramowaniejest
jużgotowe,możezostaćwdrożonenakonkretnejplatformiesprzętowej
dopisaćoprogramowanie,którekontrolujeto,corobiąinneprogramy.Możetonp.polegać
nanapisaniutestówjednostkowych,którerównieżomówimy.Gdyproblemyzprogramem
zostanądostrzeżone,możemywykonaćgokrokpokrokuzapomocądebuggera.Jesttotrzeci
programwnaszymzestawienarzędziprogramistycznych.Pozatym,żepozwalanamnawy-
konaniekoduwierszpowierszu,umożliwiateżdodawaniepunktówwstrzymania(ang.bre-
akpoint),sprawdzaniewartościzmiennych,zaglądaniewokreślonyobszarpamięciistruktu-
stosu,ajeślizajdzietakapotrzeba-nawetprzeglądanierejestrówprocesora.Debugowanie
jestnajlepszymsposobemnanauczeniesiętego,corobikod.Takwięcszerokokorzystaj-
myzdebuggerów,pracującnadprzykładamikoduprzedstawionymiwniniejszejksiążce.
Oprogramowaniemożebyćróżnieskonfigurowaneimiećróżnewersje.Choćwgrę
wchodziwielekonfiguracji,zwyklewyróżniasiędwatryby:
.Trybdebugowania(ang.debug)-wersjaoprogramowania,którazwykleniejestzopty-
malizowaniaijestwykorzystywanadowewnętrznychtestówiuruchamiania.