Учебники

Применение модульных методов

Реальная проблема сложна и велика. Если разработано монолитное решение, оно ставит эти проблемы —

  • Сложно написать, протестировать и реализовать одну большую программу

  • Изменения после доставки конечного продукта практически невозможны

  • Сопровождение программы очень сложное

  • Одна ошибка может привести к остановке всей системы

Сложно написать, протестировать и реализовать одну большую программу

Изменения после доставки конечного продукта практически невозможны

Сопровождение программы очень сложное

Одна ошибка может привести к остановке всей системы

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

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

Модульное программирование предлагает эти преимущества —

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

  • Модули могут быть повторно использованы

  • Поскольку каждый модуль должен тестироваться независимо, тестирование проходит быстрее и надежнее

  • Отладка и сопровождение всей программы проще

  • Модули меньше и имеют более низкий уровень сложности, поэтому их легко понять

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

Модули могут быть повторно использованы

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

Отладка и сопровождение всей программы проще

Модули меньше и имеют более низкий уровень сложности, поэтому их легко понять

Идентификация модулей

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

  • Если данные являются наиболее важным элементом системы, создайте модули, которые обрабатывают связанные данные.

  • Если сервис, предоставляемый системой, разнообразен, разбейте систему на функциональные модули.

  • Если ничего не помогает, разбейте систему на логические модули в соответствии с вашим пониманием системы на этапе сбора требований.

Если данные являются наиболее важным элементом системы, создайте модули, которые обрабатывают связанные данные.

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

Если ничего не помогает, разбейте систему на логические модули в соответствии с вашим пониманием системы на этапе сбора требований.

Для кодирования каждый модуль должен быть снова разбит на более мелкие модули для простоты программирования. Это снова можно сделать с помощью трех советов, приведенных выше, в сочетании с конкретными правилами программирования. Например, для объектно-ориентированного языка программирования, такого как C ++ и Java, каждый класс со своими данными и методами может образовывать единый модуль.

Пошаговое решение

Для реализации модулей последовательность операций каждого модуля должна быть описана пошагово. Пошаговое решение может быть разработано с использованием алгоритмов или псевдокодов . Предоставление пошагового решения предлагает эти преимущества —

  • Любой, кто читает решение, может понять и проблему, и решение.

  • Это одинаково понятно программистам и непрограммистам.

  • Во время кодирования каждый оператор просто необходимо преобразовать в программный оператор.

  • Это может быть частью документации и помочь в обслуживании программы.

  • Детали микроуровня, такие как имена идентификаторов, требуемые операции и т. Д., Вырабатываются автоматически

Любой, кто читает решение, может понять и проблему, и решение.

Это одинаково понятно программистам и непрограммистам.

Во время кодирования каждый оператор просто необходимо преобразовать в программный оператор.

Это может быть частью документации и помочь в обслуживании программы.

Детали микроуровня, такие как имена идентификаторов, требуемые операции и т. Д., Вырабатываются автоматически

Давайте посмотрим на пример.

Принимаем оплату

Управляющие структуры

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

Алгоритмы и псевдокоды помогают аналитикам и программистам определить, где требуются структуры управления.

Управляющие структуры бывают трех типов:

Структуры контроля принятия решений

Структуры управления принятием решений используются, когда следующий шаг, который должен быть выполнен, зависит от критериев. Этот критерий обычно является одним или несколькими логическими выражениями, которые должны быть оценены. Булево выражение всегда оценивается как «истина» или «ложь». Один набор операторов выполняется, если критерий «истинный», а другой набор выполняется, если критерий оценивается как «ложный». Например, если заявление

Структуры контроля выбора

Структуры контроля выбора используются, когда последовательность программы зависит от ответа на конкретный вопрос. Например, программа имеет много вариантов для пользователя. Следующая инструкция будет зависеть от выбранной опции. Например, оператор switch, оператор case .

Структуры контроля повторения / петли

Структура управления повторением используется, когда набор операторов должен повторяться много раз. Количество повторений может быть известно до его запуска или может зависеть от значения выражения. Например, для оператора «оператор», «оператор», «оператор» пока « и т. Д.

Структуры контроля контура

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

Вот несколько примеров из программ, чтобы показать, как работают эти утверждения:

Структуры принятия решений