Модулността като подход и средство за изграждане на програми
| Информационни технологии | 2009-12-04 | 38 сваляния |
Модулността като подход и средство за изграждане на програми
Модулното програмиране позволява многократно да се повиши производителността и надеждността на програмисткия труд по пътя на създаване на модули за многократна употреба.
Модулът е "черна кутия" за програмните части, които го използуват, но чрез правилно извикване на подпрограмите му тези части могат да получат необходимите резултати. Много често работата на модула се сравнява с тази на механизъм, чийто принцип е неизвестен, но са известни начините за неговото управление - например с помощта на бутони или ръчки. По същия начин, без да е известна вътрешната структура на модула, модулът клиент може да управлява неговата работа чрез поредица от извиквания на процедури и функции. Информация за състоянието на модула може да се получава или посредством видимите статични променливи, или чрез извикване на подходящи "информиращи" процедури и функции.
Когато се проектира модул, обикновено се създават три вида подпрограми -основни, спомагателни и информиращи:
- Основни са процедурите и функциите, които реализират главното (основното)
предназначение на модула. Когато те се извикват, модулът "работи". Без
основните си подпрограми модулът би бил излишен.
- Спомагателни са процедурите и функциите, които извършват помощни
действия - например начални или завършващи обработки, промяна на някои
управляващи параметри и др.
- Информиращите процедури и функции също подпомагат правилната работа на модула! Те извличат информация за неговото вътрешно състояние, за стойностите на определени данни, за възникнали грешки и я предоставят на модулите клиенти.
Модулът е продукт от стратегията на проектиране иа програмата. При използуването на низходящото проектиране процесът на решаваме на задачата се декомпозира в поредица от по-прости подзадачи, които трябва да бъдат решени. Когато част от подзадачите се отнасят към един тип структури или към една конкретна структура, се пристъпва към оформянето на модул. Неговата задача е да обслужва тази структура от данни. (Друг много мощен и перспективен метод е обектно ориентираният подход.)
Трудно е да се дадат съвсем точни и безпогрешни критерии и правила за обединяването на определен брой процедури и функции в модул. Тук са посочени по-важните качества, които характеризират модулите и които трябва да се имат предвид, когато се създават модули.
Независимост
Независимостта е комплексна характеристика. Когато се отнася за данните, тя се изразява в правилото, че всяка структура от данни трябва да се обслужва само от един модул. Останалите програмни части могат да актуализират тази структура единствено чрез подпрограмите, описани в интерфейсната част на модула. Стойностите на видимите статични данни могат да бъдат използувани, но не е допустимо прякото им актуализиране от други модули.
Модулът е независим от останалите програмни части. Промените, извършвани в тялото на модула, не трябва да засягат модулите, които го използуват. Така например, ако се коригират подпрограмите или принадлежащите на модула данни, това не трябва да се отразява на извикващите го програмни части. Програмистът,
който използува модула,.не е длъжен да познава структурата и особеностите на алгоритъма, нито да познава модулите, които се използуват от този модул.
Профилираност
Тагове от реферата: модулност, гране, програми, средство, подход











