Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Структурное программирование. Проектирование сверху вниз. Модульное программирование. Структурное кодирование




Оглавление

Вопрос 2. 3

Структурное программирование. Проектирование сверху вниз. Модульное программирование. Структурное кодирование. 3

Вопрос 4. 4

Функции. Компактность. Правило одной операции. Опасность смешения уровней абстракции. 4

Вопрос 5. 5

Функции. Правило понижения. Паттерн «Абстрактная фабрика» и использование оператора switch. 5

Вопрос 6. 5

Аргументы функций. Приемлемое количество и качество аргументов. Побочные эффекты в функциях. Примеры 5

Вопрос 9. 6

Форматирование исходного кода. Цель форматирования. Вертикальное разделение концепций, вертикальное сжатие. Вертикальное расстояние. 6

Вопрос 10. 6

Форматирование исходного кода. Цель форматирования. Горизонтальное форматирование. Горизонтальное разделение и сжатие. Отступы.. 6

Вопрос 11. 7

Объекты и структуры данных. Отличия процедурного и объектно-ориентированного кода. Случаи применения 7

Вопрос 12. 8

Закон Деметры. Опасность построения гибридов объектов и структур данных. Объекты передачи данных и активные записи. 8

Вопрос 16. 9

Класс. Размеры класса. Принцип единой ответственности (SRP). 9

Вопрос 17. 9

Понятие связности класса. Влияние связности на размер классов. 9

Вопрос 18. 10

Структурирование класса с учетом его изменений. Принципы проектирования классов в ООП.. 10

Вопрос 19. 10

Понятие эффективности программы. Выбор между эффективностью и удобочитаемостью. Оптимизирующие компиляторы.. 10

Вопрос 24. 11

Понятие отладки. Отличие между отладкой и тестированием. Средства отладки. Защитное программирование 11

 


 

Вопрос 2

Структурное программирование. Проектирование сверху вниз. Модульное программирование. Структурное кодирование

СТРУКТУРНОЕ ПРОГРАММИРОВАНИЕ    

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

1. Проектирование сверху вниз.

2. Модульное программирование.

3. Структурное кодирование.

ПРОЕКТИРОВАНИЕ СВЕРХУ ВНИЗ

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

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

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

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

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

Прежде Чем начать программировать, разработайте проект.

МОДУЛЬНОЕ ПРОГРАММИРОВАНИЕ

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

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

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

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...