Автор: Пользователь скрыл имя, 18 Марта 2012 в 12:57, реферат
Когда-нибудь электронные вычислительные машины (ЭВМ) будут сами составлять для себя программы или же мы будем писать их на естественном языке. Однако сейчас нам приходится разрабатывать программы, которые смогли бы читать другие лица. Не многие стали бы возражать против той простой мысли, что программист должен быть в состоянии прочесть по крайней мере свою собственную программу. Отсюда следует, какое важное значение имеет стиль написания программ.
СТИЛЬ ПРОГРАММИРОВАНИЯ
СТАНДАРТИЗАЦИЯ СТИЛЯ
КОММЕНТАРИИ
ВВОДНЫЕ КОММЕНТАРИИ
ОГЛАВЛЕНИЕ
ПОЯСНИТЕЛЬНЫЕ КОММЕНТАРИИ
РАСПОЛОЖЕНИЕ КОММЕНТАРИЕВ
ПРАВИЛЬНЫЕ КОММЕНТАРИИ
ПРОПУСК СТРОК
ПРОБЕЛЫ
ВЫБОР ИМЕН ПЕРЕМЕННЫХ
ИМЕНА ФАЙЛОВ
СТАНДАРТНЫЕ СОКРАЩЕНИЯ
ПЕРЕНОС
УПОРЯДОЧЕНИЕ СПИСКОВ ПО АЛФАВИТУ
СКОБКИ
ОТСТУПЫ ОТ НАЧАЛА СТРОКИ
ВЫБОР ИМЕН РАЗДЕЛОВ
НЕЧИТАЕМЫЕ ПРОГРАММЫ
ЗАКЛЮЧЕНИЕ
СОВЕТЫ ПРОГРАММИСТУ
1. Чтобы поместить в
этот прямоугольник
2. Чтобы сгруппировать
множество команд. Это достигается
расположением до и после этой
группы команд строк
3. Чтобы указать, что
комментарий относится к
Для выделения комментариев используются строки, состоящие из звездочек, расположенные до и после комментариев.
Если комментарии включают в строку текста программы, то используют установленную позицию (колонку) для начала каждого комментария. Например, начинают комментарии с 40-й позиции, оставляя для текста программы позиции с 1-й по 39-ю. В строке комментариев для простоты распознавания желательно начинать текст комментариев, отступив от позиции начала строк операторов программы.
Для структурированных программ обычно требуется меньше комментариев, чем для неструктурированных, так как программы первого вида понятнее и в них меньше переходов.
Однако очевидно, что в этом случае надо не комментировать, а перепрограммировать — упорядочить программу.
Структурное программирование выявляет логику программы разделением ее на параграфы; комментарии должны быть размещены так, чтобы не мешать введению параграфов. Иногда размещают комментарии справа от программы. При этом необходимо делать такой отступ от строки программы, чтобы это не мешало структурированию программы.
Располагайте комментарии
ПРАВИЛЬНЫЕ КОММЕНТАРИИ
Комментарии должны быть правильными.
Другими словами, они должны быть
правильными сначала и
Неправильные комментарии хуже, чем их отсутствие.
ПРОПУСК СТРОК
Пропуск строк — часто недостаточно оцениваемый метод улучшения наглядности программ. Этот метод можно использовать для вертикальной разрядки. Как в естественном языке мы пользуемся пропуском строк для отделения параграфов, так и (В программе таким образом можно разделять ее отдельные фрагменты. Пропуском одной строки можно отделять каждую группу логически связанных операторов, пропуском двух строк — основные логические фрагменты программы. Использование незаполненных строк облегчает поиск отдельных частей в программе.
Пропуск строки должен следовать за каждой командой безусловной передачи управления, указывая на нарушение последовательности выполнения команд. Пропуск строк до и после комментариев помогает выделить последние. Пропуск строк можно обеспечить, вложив пустые карты в исходную колоду или пустыми строками комментариев.
Пропуск страницы указывает на начало новой главы в книге, т.е. на начало более важного раздела, чем параграф (что отмечается пропуском строки). Таким образом, пустые области делят программу на логически самостоятельные части.
ПРОБЕЛЫ
В языках программирования
пробелы довольно часто ставятся
произвольно. Действительно, в изъятии
пробелов из программы не больше смысла,
чем в том, чтобы их убрать из текста.
Что вы скажете, например, о такой
фразе: Явсегдамогунаписатьнечтоподобн
Пробелы следует ставить везде, где это приводит к улучшению читаемости программы.
Можно написать такой оператор: DO10I= 1,23,2
Но вот такой оператор читать значительно легче: DO 10 I = 1, 23, 2
Широкое использование пробелов
существенно облегчает чтение программы.
Ставьте пробелы между
Делайте пробелы для улучшения читаемости программы.
ВЫБОР ИМЕН ПЕРЕМЕННЫХ
Имена переменных должны быть выбраны так, чтобы они наилучшим образом определяли те величины, которые они представляют. Если ограничения на длину имени отсутствуют, используйте имена настолько длинные, насколько это нужно, но не длиннее, чем необходимо. Например, в операторе X = Y+Z имена переменных выбраны неудачно, поскольку совсем не использована мнемоника. Такая запись оператора PRICE=COST+PROFIT намного лучше.
Правильный выбор имен переменных — это залог удобочитаемости программ. Кроме того, это самый легкий и дешевый метод, так как он требует незначительных умственных усилий от программиста и столь же небольшого расхода машинного времени. Типы переменных, для которых надлежащим образом выбраны имена, могут не соответствовать типам, присваиваемым по первой букве имени в соответствии с принципом умолчания. В связи с этим следует давать соответствующее описание переменным, не пользуясь принципом умолчания. Действительно, совсем неплохо описывать все переменные, чтобы быть уверенным, что тип переменных выбран правильно.
Существуют некоторые запреты, которые необходимо помнить при выборе имен переменных и меток. Избегайте схожих по виду имен, их неестественных написаний (как phone и fone) и подобных по написанию символов (АХ10 и АХIO). Если нужно использовать числа в именах переменных, лучше писать их в конце имени. Различие имен должно быть всегда явно ощутимым. В этом смысле имена, сходные по звучанию, виду или составу букв, отличаются мало. Когда имя содержит избыточную информацию, это тоже плохо. Например: FOUR = 12/5
Здесь переменная FOUR имеет два различных значения: величины 4 и величины, помещенной в ячейку FOUR.
Соответствующая мнемоника должна быть использована при выборе имен для программ, параграфов, процедур, функций и подпрограмм. Программные метки должны соответствовать меткам, которые использовались в блок-схемах или при анализе задачи, чтобы можно было их связать с более ранними формами алгоритма. Все это кажется очевидным, но часто не выполняется. В качестве имен переменных должны употребляться термины, используемые в данной области.
Используйте имена с подходящей мнемоникой.
Некоторые языки программирования
не имеют резервированных слов. Следовательно,
программист может использовать
любое слово как имя
При использовании различных типов переменных: целых, действительных, комплексных, символьных — программист часто попадает в затруднительное положение. Однако трудности легко преодолеть, если следовать определенным соглашениям при поименовании переменных различных типов. Например, в программе с несколькими комплексными переменными все имена этих переменных могут начинаться с буквы С или аббревиатуры СМР. Этот префикс будет напоминать вам, что переменная комплексная. Подобный метод может быть применен для облегчения идентификации файлов.
Начинайте имена целых переменных с одной из следующих букв: /, /, К, L, М, N. Использование этих букв для представления целых переменных настолько обычно и общепринято, что полезно следовать этому на практике.
Если язык программирования допускает разделитель в именах переменных, то его следует использовать. Например: имя COSTPLUS следует представлять как COST-PLUS
Разделитель облегчает чтение имен переменных и уменьшает вероятность их неправильной интерпретации.
Правильно выбранные имена переменных
уменьшают необходимость
ИМЕНА ФАЙЛОВ
При
работе с файлами для
FILE SECTION.
FD MASTER-FILE,
. . .
. . .
01 MASTER-RECORD.
03 MASTER-NAME PICTURE X(20).
03 MASTER-ADDRESS PICTURE X(40).
03 MASTER-NUMBER PICTURE 9(08).
Если каждый файл имеет свой префикс, то намного легче читать программу. Этот префикс помогает определить соответствующее поле при распечатке программы и указывает, какие поля и рабочие области связаны логически. Еще одно соглашение состоит в том, что имена файлов должны содержать слово FILE, а имена записей — слово RECORD.
При наименовании файлов используйте определенный префикс или суффикс.
Указанный прием позволяет различать по префиксам идентичные имена, такие, как поле дат.
Например:
MASTER-DATE
TRANSACTION-DATE
REPORT-DATE
Здесь каждое из трех различных полей дат идентифицируется по своему префиксу. Если вы не воспользуетесь приведенными здесь рекомендациями, то будете вынуждены применять различные сокращения, например DATE, DTE, DAT, которые позволят различать поля.
При выборе имен записей используйте имена, ориентированные на содержание записи, а не на конкретное задание. Более тщательный выбор имен позволит использовать одно и то же имя файла в нескольких связанных программах. Использование одних и тех же имен для одинаковых файлов в различных программах обеспечивает быструю их идентификацию программистами. В тех случаях, когда один файл используется во многих программах, руководители проектов программ, возможно, сочтут целесообразным задание стандартных имен файлов.
СТАНДАРТНЫЕ СОКРАЩЕНИЯ
Лица, ответственные за разработку
программы, возможно, сочтут необходимым
введение стандартных сокращений—
MSTR
MAST
MST
будут применяться как записи имени MASTER. Стандартные сокращения помогают программистам понимать свои старые программы, в модификации которых возникла необходимость. Использование стандартных сокращений и стандартных имен переменных особенно предпочтительно, когда коллектив программистов создает одну большую систему.
Для тех, кто хочет сократить длину идентификатора с целью экономии объема памяти или вынужден делать это из-за ограничений, накладываемых на длину имени, предлагается набор правил сокращения, который поможет обеспечить удобочитаемость программ. Эти правила, разработанные Микаэлом Джексоном (Datamation, апрель 1967), заключаются в следующем:
1. Каждое значащее слово
в имени подлежит сокращению,
общее число слов в
2. В аббревиатуру всегда должны включаться начальные буквы слов.
3. Согласные важнее гласных.
4. Начало слова важнее его конца.
5. Аббревиатура должна включать в себя от 6 до 15 букв.
Сокращение слова образуется последовательным удалением гласных, начиная с правого конца слова, до тех пор, пока либо все гласные не будут изъяты (кроме первой буквы слова, если она гласная), либо слово не уменьшится до требуемого размера. Если все гласные выброшены, а длина слова все еще превышает заданную величину, то удаляются согласные.
Имена |
Сокращения |
COST PLUS |
CST PLS |
ACCOUNTS RECEIVABLE |
ACCNTS RECVBL |
RECORD |
RCRD |
TRANSACTION |
TRNSCTN |
ПЕРЕНОС
В некоторых языках программирования допускается перенос имен или литералов на другую строку. Но обычно не возникает необходимости в разбиении слова и редко бывает нужен перенос литерала. Если слово не помещается на текущей строке, начинайте его со следующей строки. И хотя перенос допускается, это усложняет чтение и использование программы.
Если вы записываете оператор на двух строках, делайте перенос после знака операции. Вот случай небрежного переноса:
А = В—С
—(D+2)
Гораздо лучше перенести так:
А=В—С—
(D+2)
Во
втором примере знак “минус”,
записанный на первой строке,
сообщит читателю о том, что
оператор продолжается на
УПОРЯДОЧЕНИЕ СПИСКОВ ПО АЛФАВИТУ
Языки программирования включают много списков имен переменных, причем порядок расположения имен в списке определяется самим программистом. Рассмотрим два типа списков: списки имен переменных при объявлении типа переменных и списки параметров процедуры.
Упорядочивание имен в списке облегчает поиск имени. Приведем в качестве примера два списка:
1) INTEGER BETA, Z, KEP, COST, PRICE, DOBT