Оформление программного кода

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

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

Author(s): Столяров А.В.
Publisher: Макс Пресс
Year: 2012

Language: Russian
Commentary: увеличил контрастность
Pages: 102

Предисловие 3

1. Общие правила и принципы 55
1.1. Средства и цели ............. 5
1.2. Самопоясняющий код . . . . . . . . . . 7
1.2.1. Выбор имён (идентификаторов) 7
1.2.2. Структурные отступы: общие принципы 9
1.2.3. Ещё о пробелах ......... 15
1.2.4. Разбиение задач на подзадачи ....... 16
1.3. Универсально-читаемый код . . . . . . . . . . . . 18
1.3.1. Алфавит ASCII - гарантия универсальности текста 18
1.3.2. Английский язык - не роскошь, а средство взаимопонимания 20
1.3.3. О русскоязычном пользовательском интерфейсе 21
1.3.4. Стандартный размер экрана . . . . 22
1.4. Модульность .................. 25
1.4.1. О роли подсистем и модулей . . . . 25
1.4.2. Модуль как архитектурная единица 27
1.4.3. Ослабление сцепленности модулей .... 28
1.4.4. Выделение модулей во внешние библиотеки 31
1.5. Что такое coding style и какие они бывают . . . . . . . 33

2. Процедурный код: Паскаль, Си, Си++ 35
2.1. 3arоловок и тело . . . . . . . . . . . . . . . . . . . . 36
2.1.1. Основные варианты стиля отступов на примере оператора while 37
2.1.2. Оператор if с веткой еlsе ..... 41
2.1.3. Если зaroловок слишком длинный .... 43
2.1.4. 3arоловок и тело подпроrраммы . . 46
2.2. Особенности оформления операторов выбора 48
2.3. Последовательность взаимоисключающих if'ов 54
2.4. Метки и оператор goto .............. 56
2.5. Как разбить длинную строку. . . . . . . . . . . . . 60
2.5.1. Слишком длинное выpажение в присваивании 60
2.5.2. Слишком длинный вызов подпроrраммы . . . . . . . 62
2.5.3. Слишком длинный зarоловок подпроrраммы .... 63
2.5.4. Длинная строковая константа (строковый литерал) 65
2.6. Разделители и пробелы . . . . . . . . . . . . . . . . . . . . 67
2.7. Особенности Паскаля ..................... 69
2.7.1. Реrистр букв, ключевые слова и идентификаторы 69
2.7.2. Вложенные подпроrраммы ....... 70
2.7.3. Как управиться с секциями описаний 70
2.8. Особенности языка Си . . . . . . . . 71
2.8.1. Соrлamения об именах 71
2.8.2. Описания и инициализаторы 74
2.8.3. Оператор постусловия 77
2.8.4. О модулях и слове static 79
2.8.5. Характерные ошибки в оформлении функции 80
2.9. Особенности Си++ . . . . . . . . 80
2.9.1. Соrлamения об именах ......... 80
2.9.2. Класс или структура? . . . . . . . . . . 82
2.9.3. Форматирование зaroловков классов 82
2.9.4. Форматирование зarоловка конструктора 83
2.9.5. Тела функций в зarоловке класса . . . . . 85

3. О некоторых изыках «с особенностими» 88
3.1. Язык ассемблера . . . . . . 88
3.2. Лисп и ero диалекты . . . . 90
3.3. Пролоr, Эрланr и друrие 94

Вместо заключения 98