Меню

Что такое модульный принцип построения программных средств

Модульный принцип программирования

Часто в разных программах приходится многократно выполнять одни и те же действия. Например, выводить окно с предупреждением о невозможности отмены какого-либо действия. Естественным в таких случаях является использование библиотек, содержащих подпрограммы (процедуры) для выполнения стандартных действий. Такие «заготовки» можно использовать в качестве строительных «кубиков» при создании программы.

Эта идея была реализована в виде возможности подключения к программе модулей – библиотек готовых подпрограмм. Программист может не только использовать стандартные библиотеки процедур, но и создавать свои собственные модули.

При использовании библиотечных модулей всегда возникает проблема их состыковки с программой. Для облегчения этой работы, были разработаны стандарты, которые позволяют записывать библиотечные подпрограммы в форме, максимально облегчающей такую состыковку.

При программировании сверху вниз алгоритмы и данные делятся на относительно независимые части, называемые модулями. Некоторые из модулей являются стандартными и поставляются в составе языков программирования, например, вычисление элементарных математических функций квадратный корень, логарифм, синус и т. д. Но главные модули все равно приходится проектировать программистам.

Таким образом, алгоритм является деревом модулей: одни модули вызывают другие модули, начиная с самого верхнего первого модуля, называемого корневым модулем, или головной программой.

Модульность — в языках программирования — принцип, согласно которому программное средство (программа, библиотека, web-приложение и др.) разделяется на отдельные именованные сущности, называемые модулями.

§ один вход и один выход – на входе программный модуль получает определенный набор исходных данных, выполняет содержательную обработку и возвращает один набор результатных данных, т.е. реализуется стандартный принцип IPO (Input — Process — Output) – вход-процесс-выход;

§ функциональная завершенность – модуль выполняет перечень регламентированных операций для реализации каждой отдельной функции в полном составе, достаточных для завершения начатой обработки;

§ логическая независимость – результат работы программного модуля зависит только от исходных данных, но не зависит от работы других модулей;

§ слабые информационные связи с другими программными модулями – обмен информацией между модулями должен быть по возможности минимизирован;

§ обозримый по размеру и сложности программный элемент.

Таким образом, модули содержат определение доступных для обработки данных, операции обработки данных, схемы взаимосвязи с другими модулями.

Каждый модуль состоит из спецификации и тела. Спецификации определяют правила использования модуля, а тело – способ реализации процесса обработки.

Модульный принцип написания программ самый старый по возрасту принцип программирования. Модульным он назван потому, что каждая задача для предстоящего программирования разбивается на какие-то цельные завершенные части. И программирование ведется исключительно по этим частям – написали часть номер 1, протестировали ее, написали часть номер 2, протестировали ее – потом все вместе собрали и получили программный продукт. То есть программу в конечном итоге можно представить в виде мозаики, которую сначала рисует, а потом и собирает вместе программист. Большим плюсом данного подхода (и, собственно, причиной, по которой он появился) является возможность работы над программой не одного программиста, а нескольких или даже нескольких групп программистов. Простые и близкие языки модульного принципа – Pascal, и C, Phyton и даже Perl.

Модульное программирование – это организация программы как совокупности небольших независимых блоков (модулей), структура и поведение которых подчиняется определенным заранее правилам.

Модульное программирование предназначено для разработки больших программ.

Разработкой больших программ занимается коллектив программистов. Каждому программисту поручается разработка некоторой самостоятельной части программы. И он в таком случае отвечает за конструирование всех необходимых процедур и данных для этих процедур. Сокрытие данных (запрет доступа к данным из-за пределов модуля) предотвращает их случайное изменение и соответственно нарушение работы программы. Для взаимодействия отдельных частей (модулей) программы коллективу программистов необходимо продумать только интерфейс (взаимодействие) сконструированных модулей в основной программе.

Принципы модульного программированияпрограммных продуктов во многом сходны с принципами нисходящего проектирования. Сначала определяются состав и подчиненность функций, а затем – набор программных модулей, реализующих эти функции.

Однотипные функции реализуются одними и теми же модулями. Функция верхнего уровня обеспечивается главным модулем; он управляет выполнением нижестоящих функций, которым соответствуют подчиненные модули.

При определении набора модулей, реализующих функции конкретного алгоритма, необходимо учитывать следующее:

§ каждый модуль вызывается на выполнение вышестоящим модулем и, закончив работу, возвращает управление вызвавшему его модулю;

§ принятие основных решений в алгоритме выносится на максимально «высокий» по иерархии уровень;

§ для использования одной и той же функции в разных местах алгоритма создается один модуль, который вызывается на выполнение по мере необходимости. В результате дальнейшей детализации алгоритма создается функционально-модульная схема алгоритма, которая является основой для программирования.

Читайте также:  Как списать амортизацию основных средств если нет реализации

Источник

Модульный принцип построения программ

Общие требования, предъявляемые к ПО САПР в соответствии с общими принципами создания САПР.

Основные принципы проектирования ПО САПР.

1. Принцип системного единства означает, что при ПО САПР связи между и/с должны обеспечивать ее целостность.

2. Принцип развития – ПО САПР должно создаваться и функционировать с учетом пополнения, совершенствования и обновления и/с

3. Принцип совместимости – языки, символы, коды, информация и связи между и/с должны обеспечивать их совместное функционирование и сохранить открытую структуру системы в целом.

4. Принцип стандартизации. При разработке ПО САПР необходимо унифицировать и стандартизировать ПО, инвариантное с проектируемым объектом.

1) Адаптируемость – приспосабливаемость ПО к функционированию в различных условиях. Это связано с изменением самих объектов проектирования.

2) Гибкость – возможность легко вводить изменения, дополнения, направления в ПО при сохранении всей системной организации.

3) Компактность – потребление минимальных ресурсов ЭВМ (памяти, времени центр. процессора ЭВМ)

4) Мобильность – способность функционирования ПО САПР на различных техн. средствах.

5) Надежность – обеспечение – получения достоверных результатов проектирования.

6) Реактивность – обеспечение быстрого решения задачи при ориентации на пользователя, не являющегося специалистом в области ВТ и программирования.

7) Эволюционируемость — пополнение САПР новыми программами, расширяющими возможности системы.

Специализированное ПО – это сложный комплекс программ, насчитывающий десятки сотни тысяч операторов алгоритм. языков.

Для успешного создания такого сложного комплекса его разделяют на модули в определенной мере самостоятельные программные компоненты.

Преимущества модульного принципа.

1) Степень автономности модулей должна обеспечивать их разработку независимо друг от друга.

Тогда программирование модулей по сформированному ТЗ выполняют параллельно во времени несколько программистов.

Однако модули не должны быть слишком мелкими, т.к. излишнее дробление, т.е. усложнение структуры, приведет к увеличению числа межмодульных связей.

2) Модульное построение спец. ПО делят четкой и легче уяснимой его структуру. Это уменьшает число допускаемых при программировании ошибок и упрощает отладку программ.

3) Модульное построение спец. ПО делает его более гибким, универсальным и легко адаптируемых к уменьшающимся условиям применения САПР по сравнению с немодульным.

В различных маршрутах проектирования имеет место большое количество близких по содержанию операций, которые могут быть реализованы по типовым программам.

Поэтому при модульном построении спец. ПО создают ограниченное число как типовых, так и нетиповых модулей.

Различное содержание таких модулей обеспечивает большое число маршрутов проектирования.

Любой новый заранее непредусмотренный маршрут удается реализовать на основе уже имеющихся модулей или вообще без разработки.

Модульная структура спец. ПО обладает свойством иерархичности. Это означает, что любую совокупность модулей целесообразно считать отдельным модулем. Для этого указания совокупность должна иметь признаки самостоятельной программы или входить как составная часть в несколько сочетаний модулей, реализующих маршруты проектирования.

Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет

Источник



Модульный принцип программирования.

Суть модульного программирования состоит в разбиении сложной задачи на некоторое число более простых подзадач и составлении программ для решения достаточно независимо друг от друга. Модульность является одним из основных принципов построения программных проектов. В общем случае модуль — отдельная функционально законченная программная единица, некоторым образом идентифицируемая и объединяемая с другими, средство определения логически связанной совокупности объектов, средство их выделения и изоляции. Модуль является средством декомпозиции не только структур управления, но и структур данных. Этому в значительной мере способствовало развитие понятия «тип данных».

Модуль является единицей компиляции, хранения, а также единицей проектирования и раздельной разработки программного проекта коллективом разработчиков. Таким образом, модуль понимается как средство определения логически связанной совокупности объектов, средство их выделения и изоляции.

Создание модулей и использование их объектов в программах является одним из приемов экономичного программирования что обуславливается следующими обстоятельствами.

Во-первых, в модуле обычно определяются объекты, являющиеся носителями базовых понятий некоторой «предметной» области, так что модуль задает контекст этой предметной области. Поэтому программы, которые будут выполнять различные алгоритмы обработки в этой области, смогут воспользоваться готовыми и, что важно, одинаковыми определениями базовых объектов.

Во-вторых, и модули, и использующие их программы компилируются независимо (модуль должен быть откомпилирован раньше использующей его программы). Благодаря этому время компиляции большой программы использующей готовые модули, существенно сокращается, что важно при отладке программ, когда приходится их компилировать многократно.

Читайте также:  Лучшие чистящие средства для ванной комнаты

Третьим важным свойством модуля является то, что он скрывает, «инкапсулирует» представление и реализацию экспортируемых им объектов, так что их возможные изменения в модуле (при его настройке или адаптации к новым аппаратным возможностям) не требуют никаких переделок пользовательских программ.

Все модули используют мнемонические имена для определяемых ими объектов (констант, переменных, типов и подпрограмм), что облегчает понимание их назначения и запоминание, удовлетворяет требованию наглядности текста программ.

Языки программирования, поддерживающие модульный подход, описывают модуль как программную единицу, состоящую из двух основных частей — спецификации (интерфейса) и реализации. В спецификации приводятся такие характеристики объектов модуля, которые необходимы и достаточны для использования этих объектов в других модулях и программах. Это позволяет использовать объекты модулей только на основе информации об их интерфейсе (не ожидая их полного описания). В реализационной части модуля описывается представление и алгоритмы обработки, связанные с теми или иными объектами модуля.

Модуль является одним из средств, облегчающих верификацию программ. Модуль, как средство создания абстракции, выделяет спецификацию и локализует сведения о реализации.

Модули служат также целям создания проблемно-ориентированного контекста и локализации машинной зависимости.

26. Объектно-ориентированное программирование.

27. Интегрированные среды программирования.

28. Этапы решения задач на компьютере.

29. Понятие об объектах, их свойствах и методах.

30. Синтаксис языка VBA.

31. Константы и переменные.

32. Область видимости переменной.

33. Объявление переменной.

34. Операторы VBA.

35. Структура программы.

36. Функции, процедуры, макросы, модули VBA.

37. Реализация основных алгоритмических конструкций.

38. Среда программирования VBA.

39. Панели инструментов.

Окно Properties.

Понятие свойства (properties) в Visual Basic связано с механизмом формального описания атрибутов объекта. Каждый объект обладает специфическими свойствами, которые определяют внешний вид и поведение объекта в приложении. Некоторые свойства имеют фиксированный набор значений (их можно узнать, нажав первую из кнопок в поле параметров). Если же кнопка справа в этом поле имеет вид с тремя точками, то это означает, что нажатие на кнопку инициирует вывод диалогового окна с выбором необходимого значения. Примерами могут служить выбор цветов, а также выбор файлов для загрузки картинок. Другие свойства могут иметь практически неограниченный набор значений. Это, например, задание имени или названия формы.

С помощью команды properties мы можем получить доступ к любым свойствам и геометрическим характеристикам объектов. При этом открывается специальное немодальное окно со свойствами. Если выделить несколько объектов окно будет показывать их общие свойства. Чтобы посмотреть свойство отдельного объекта необходимо выбрать его в раскрывающемся списке в правом верхнем углу окна. Также на панели свойств находятся некоторые команды связанные с выделением.

Окно Project.

В окне проект отображается элементы вашего проекта которые будут включены в ваш DVD-диск при компиляции. Проект представлен в виде окна, которое может быть открыто в рабочей области программы. В этом окне показаны элементы проекта — фильм, меню, слайд-шоу и связи между ними. В это окно вы можете добавить несколько фильмов, меню и слайд-шоу, но только один элемент связей(Connection) используется в любом проекте.

42. Редактор кода.

43. Знакомство с основными объектами, их свойствами на примере приложений Excel и Word.

44. Создание и выполнение макросов в приложениях MS Office.

45. Использование при программировании средств макрорекодера.

46. Работа с объектом UserForm и элементами управления.

47. Свойства, методы и события элементов управления.

Компьютерные сети.

Компьютерные сети передачи данных являются результатом информационной революции и в будущем смогут образовать основное средство коммуникации. Всемирная тенденция к объединению компьютеров в сети обусловлена рядом важных причин, таких, как ускорение передачи информационных сообщений, возможность быстрого обмена информацией между пользователями, получение и передача сообщений (факсов, E-mail писем, электронных конференций и т.д.) не отходя от рабочего места, возможность мгновенного получения любой информации из любой точки земного шара, а также обмен информацией между компьютерами разных фирм производителей, работающих под разным программным обеспечением.

Преимущества, получаемые при сетевом объединении персональных компьютеров, перечислены ниже.

· Разделение ресурсов позволяет экономно использовать ресурсы, например, управлять периферийными устройствами, такими, как печатающие устройства, внешние устройства хранения информации, модемы и т.д. со всех подключенных рабочих станций.

· Разделение данных предоставляет возможность доступа и управления базами данных с периферийных рабочих мест, нуждающихся в информации.

Читайте также:  Как вести предпринимателю учет основных средств

· Разделение программных средств предоставляет возможность одновременного использования централизованных, ранее установленных программных средств.

· Разделение ресурсов процессора, обеспечивающее использование вычислительных мощностей для обработки данных другими системами, входящими в сеть. Предоставляемая возможность заключается в том, что на имеющиеся ресурсы не «набрасываются» моментально, а только лишь через специальный процессор, доступный каждой рабочей станции.

· Многопользовательский режим — одновременное использование централизованных прикладных программных средств, обычно заранее установленных на сервере приложения.

Практически все услуги сети построены на принципе клиент-сервер. Сервером в сети называется компьютер, способный предоставлять клиентам (по мере прихода от них запросов) некоторые сетевые услуги. Взаимодействие клиент-сервер строится обычно следующим образом. По приходу запросов от клиентов сервер запускает различные программы предоставления сетевых услуг. По мере выполнения запущенных программ сервер отвечает на запросы клиентов. Все программное обеспечение сети также можно поделить на клиентское и серверное. При этом программное обеспечение сервера занимается предоставлением сетевых услуг, а клиентское программное обеспечение обеспечивает передачу запросов серверу и получение ответов от него.

Классификация сетей.

Существующие сети принято в настоящее время делить в первую очередь по территориальному признаку:

1. Локальные сети (LAN — Locate Area Network). Такая сеть охватывает небольшую территорию с расстоянием между отдельными компьютерами до 10 км. Обычно такая сеть действует в пределах одного учреждения.

2. Глобальные сети (WAN — Wide Area Network). Такая сеть охватывает, как правило, большие территории (территорию страны или нескольких стран). Компьютеры располагаются друг от друга на расстоянии десятков тысяч километров.

3. Региональные сети. Подобные сети существуют в пределах города, района. В настоящее время каждая такая сеть является частью некоторой глобальной сети и особой спецификой по отношению к глобальной сети не отличается.

50 Понятие локальной, региональной, корпоративной, глобальной сети.

Локальная сеть – это компьютерная сеть небольшой протяженности: в пределах комнаты, этажа, здания. Обычно такие сети действуют в пределах одного учреждения и имеют небольшой радиус действия: 1-10 км. Она сеть всегда является ведомственной. В настоящее время не существует четких ограничений на территориальный разброс абонентов локальной вычислительной сети. Обычно такая сеть привязана к конкретному месту. Локальная сеть обеспечивает высокие скорости передачи данных. В локальных сетях обычно не используются средства коммуникации общего назначения (телефонные линии) для организации обмена информацией. Дополнительное преимущество такой сети заключается в значительной экономии ресурсов. Так, вместо того, чтобы иметь принтер для каждого компьютера, можно иметь только один принтер. Любой компьютер в сети мог послать информацию для печати на этот принтер. Существует два типа локальных сетей: одноранговые и сети с выделенным сервером.

Одноранговые не предусматривают выделение специальных компьютеров, организующих работу сети. Сети с выделенным сервером предлагают централизованный доступ к серверу, приложениям, устройствам одного компьютера-сервера. Что же дают локальные сети? экономию места в памяти, т.к. многие пользователи применяют одни и те же программные продукты; хорошую систему защиты при записи информации; обеспечение связи между отдельными пользователями через компьютерную почту.

Региональные сети – это сети, существующие обычно в пределах города, района, области, страны. Они связывают абонентов, расположенных на значительном расстоянии друг от друга. Обычно расстояние между абонентами региональной вычислительной сети составляет десятки-сотни километров. Они являются объединением нескольких локальных сетей и частью некоторой глобальной. Особой спецификой по отношению к глобальной не отличаются. Региональные вычислительные сети имеют много общего с локальными, но они, по многим параметрам, сложнее их. Например, помимо обмена данными и голосового обмена, региональные вычислительные сети могут передавать видео- и аудиоинформацию. В последнее время стали еще выделять класс корпоративных сетей. Они охватывают обычно крупные корпорации. Их масштаб и структура определяются потребностями предприятий – владельцев.

Глобальная вычислительная сеть (internet) объединяет абонентов, расположенных в различных странах, на различных континентах. Взаимодействие между абонентами такой сети может осуществляться на базе телефонной линии связи, радиосвязи и систем спутниковой связи. Глобальные вычислительные сети позволяют решить проблему объединения информационных ресурсов всего мира и организации доступа к этим ресурсам. Для подключения к удаленным компьютерам и компьютерным сетям используются телефонные сети. Процесс передачи данных по телефонным линиям должен происходить в форме электрических колебаний – аналога звукового сигнала, в то время как в компьютере информация хранится в виде кодов.

Источник