Video: Writing 2D Games in C using SDL by Thomas Lively 2025
Programmereren kan bryte et enkelt program i separate kildefiler, vanligvis kjent som moduler . Disse modulene blir samlet inn i maskinkoden av C ++-kompilatoren separat og deretter kombinert under byggeprosessen for å generere et enkelt program.
Disse modulene er også kjent av compiler geeks som C + + oversettelsesenheter. Prosessen med å kombinere separat sammensatte moduler i et enkelt program kalles linking .
Bryterprogrammer i mindre, mer håndterbare stykker har flere fordeler. For det første, å bryte et program til mindre moduler, reduserer kompileringstiden. Svært store programmer kan ta litt tid.
I tillegg omkompilerer alle kildekoden i prosjektet bare fordi en eller to linjer endres, er ekstremt sløsing. Det er mye bedre å kompilere bare modulen som inneholder endringen, og deretter relink den inn i alle de uendrede modulene for å lage en ny kjørbar med endringen. (Kompilering tar vanligvis lengre tid enn å koble sammen.)
For det andre er det enklere å forstå - derfor lettere å skrive, teste og feilsøke - et program som består av en rekke godt gjennomtenkte men kvasi-uavhengige moduler, som hver representerer en logisk gruppering av funksjoner. En stor, enkeltkildemodul full av alle funksjonene som et program kan bruke raskt blir vanskelig å holde seg rett.
Tredje er det store hevdet spekteret av gjenbruk. En modul full av gjenbrukbare funksjoner som kan kobles til fremtidige programmer, er lettere å dokumentere og vedlikeholde. En endring i modulen for å fikse noen feil er raskt innlemmet i andre kjørbare som bruker den modulen.
Endelig er det spørsmålet om å jobbe sammen som et lag. To programmerere kan ikke fungere på samme modul (i hvert fall ikke så bra). En enklere tilnærming er å tilordne et sett av funksjoner som er inneholdt i en modul til en programmerer, mens du tilordner et annet sett med funksjoner i en annen modul til en annen programmerer. Modulene kan kobles sammen når de er klare for testing.
