Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Тема 2.2. Стиль программирования




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

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

Стиль программирования — это набор правил, которым следует программист (осознано или потому, что "так делают другие") в процессе своей работы. Очевидно, что хороший программист должен следовать правилам хорошего стиля:

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

2. Чтение программы. Программу надо снабжать комментариями и параграфами.

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

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

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

6. Описание данных. Другим фактором сравнимым по значению с выбором алгоритма является описание данных. Хорошо продуманное описание данных существенно сокращает программу. Так, полезно, использовать массивы данных в том случае когда это наиболее очевидный способ их организации. Другой пример такого рода – возможность использовать ссылки и указатели. Например, если нужно проследить отношения между родителями и их потомками на протяжении нескольких поколений, то легче всего это сделать с помощью ссылок и указателей.

7. Выбор языка программирования. Часто выбор языка программирования предоставлен данной выигрышной системе, или подготовкой программиста. Существуют серьезные основания для установления языковых стандартов для системы. Если применяют много разных языков для написания программ, то использование последних становится затруднительным. С другой стороны соблазн написать…

8. Универсальность. Хорошая универсальная программа должна обрабатывать вырожденные случаи (например, число элементов равно 0 ил 1) и печатать сообщения об ошибке. Тогда программа является не только универсальной, но и защищенной от ошибок. Используйте в качестве компиляторов переменные, а не константы. Если же применять константы, то при изменении параметров надо изменять в исходной программе каждый оператор, содержащий прежнюю константу.

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

1. размер таблиц, массивов, списков;

2. налоги, скидки, физические константы, проценты;

3. обозначения устройств ввода-вывода.

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

9. Библиотеки. Чтобы повысить эффективность разработки программ, облегчить отладку и тестирование, а следовательно и сократить работу по созданию программ используйте библиотеки.

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

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

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

10. Форматы ввода/вывода. Форматы входных и выходных данных являются частью этапа проектирования, входные данные должны быть разработаны с учетом максимального удобства для пользователя и минимальные ошибки. Постоянство входных форматов, как правило, также способствуют уменьшению ошибок. Выходные спецификации могут сильно различаться. Иногда даются четкие инструкции и выходные данные подгоняются под определенный стандарт. Однако часто отсутствуют какие-либо указания и выходные данные подчас представляют собой страницы, заполненные числами без всякой идентификации. Выходная информация должна идентифицироваться без привлечения других источников. Выходные данные должны содержать:

1. идентификацию выходной информации,

2. описание записи,

3. дату,

4. нумерацию страниц.

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




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 343; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.