Programování ve velkém

Pojem programování ve velkém (Programming in the Large) se používá v souvislosti s vývojem software. Během vývoje metodologií programování a souvisejících věcí se chápání tohoto pojmu mohlo v detailech lišit. Obecně se dá říci, že se týká rozsáhlejších projektů, které kvůli rozsahu musí být řešeny více lidmi a projekt je vyvíjen a udržován relativně dlouhou dobu. Během vývoje tak vzniká kód, který nemůže být zvládnut jednou osobou jako celek. Musí se uplatnit přístup jeho rozdělení, pochopení, vývoje a údržby po částech.

Rozdělení projektu na části vyžaduje definici rozhraní mezi částmi a systematický popis chování jednotlivých částí. To jinými slovy znamená, že musí být zpracovávána pečlivá dokumentace a vývoj projektu musí být pečlivě plánován.

Při programování ve velkém se obtížně provádějí změny. Nejobtížněji se provádějí změny, které souvisejí s více částmi a případně se změnou rozhraní mezi nimi. Jedním z cílů je proto (při programování ve velkém) dosažení stavu, kdy jsou části projektu na sobě relativně nezávislé. Technikami, které dosažení takového cíle napomáhají, jsou například důsledné používání programátorských abstrakcí, používání jednotkových testů a refaktorizace. Snažíme se jimi snížit pravděpodobnost vzniku programátorských chyb, dosáhnout automatické testovatelnosti správnosti implementace, usnadnit hledání a opravu chyb a usnadnit další vývoj.

Nástroje a techniky používané při programování ve velkém přímo ovlivňují styl programování. Ten má část lidskou (co se chce dělat programátorovi a co požaduje uživatel), věcnou (dosažení požadované funkčnosti) a ekonomickou. Ze všech uvedených pohledů se zdánlivá zbytečnost některých kroků (tvorba dokumentace, psaní testů, atd.) ukazuje opravdu jen jako zdánlivá.

Koncepci programování ve velkém uvedli Frank DeRemer a Hans Kron v článku „Programming-in-the-Large Versus Programming-in-the-Small“, IEEE Trans. on Soft. Eng. 2(2) v roce 1976.

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.