Init commit
This commit is contained in:
commit
83e6c9e1f0
41 changed files with 1455 additions and 0 deletions
20
materials/7 principles of structural programming.md
Normal file
20
materials/7 principles of structural programming.md
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
# Принципы структурного программирования
|
||||
|
||||
Становление и развитие структурного программирования связано с именем Эдсгера Дейкстры.
|
||||
* Принцип 1. Следует отказаться от использования оператора безусловного перехода goto.
|
||||
* Принцип 2. Любая программа строится из трёх базовых управляющих конструкций: последовательность, ветвление, цикл.
|
||||
* Принцип 3. В программе базовые управляющие конструкции могут быть вложены друг в друга произвольным образом. Никаких других средств управления последовательностью выполнения операций не предусматривается.
|
||||
* Принцип 4. Повторяющиеся фрагменты программы можно оформить в виде подпрограмм (процедур и функций). Таким же образом (в виде подпрограмм) можно оформить логически целостные фрагменты программы, даже если они не повторяются.
|
||||
* Принцип 5. Каждую логически законченную группу инструкций следует оформить как блок. Блоки являются основой структурного программирования.
|
||||
* Принцип 6. Все перечисленные конструкции должны иметь один вход и один выход.
|
||||
* Принцип 7. Разработка программы ведётся пошагово, методом «сверху вниз» (top-down method).
|
||||
|
||||
Следствия и дополнения вышеизложенных принципов:
|
||||
|
||||
1. Запрет на использование глобальных переменных
|
||||
2. Не более одного выхода из функции. Исключение составляет предварительная проверка аргументов функции.
|
||||
3. Не более одного выхода из цикла - это может быть как условие, так и ключевое слово break
|
||||
4. Вложенность любых блоков не должна превышать 4
|
||||
5. Размер функций ограничен по строкам и составляет 40-50 строк
|
||||
|
||||

|
||||
Loading…
Add table
Add a link
Reference in a new issue