2.8. Библиотеки

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

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

Не перепрограммируйте функцию квадратного корня.

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

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

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

IF А<В THEN GO ТО 10

GO ТО 20 10 IF А<С THEN GO ТО 30

GO ТО 25 30 SMALL = А

GO ТО 100 20 IF В < С THEN GO ТО 50 25 SMALL = С

GO ТО 100 - 50 SMALL = В 100

Внимательно изучив эту программу, вы, наверное, разберетесь, для чего она предназначена. Но," во-первых, этот текст плохо читаем, а, во-вторых, эта часто выполняемая операция обычно обеспечивается встроенной функцией языка программирования. В данном случае это есть стандартная процедура по нахождению мини- | мального элемента в группе элементов, которую можно предста- '* вить в таком виде: ^

SMALL=MIN (А, В, С)

Вы, конечно, знакомы с функциями МАХ и MIN, но скажите, когда вы в последний раз просматривали список стандартных функций вашего языка программирования? Каждый из вас потратил часы и дни, программируя какую-либо стандартную процедуру только для того, чтобы обнаружить позже, что есть библиотечная функция, которая делает то же самое.

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

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

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

Хорошие статистические программы имеются в нескольких группах (ВЛЮ-программа в Калифорнийском университете в Лос-Анджелесе и БРЭЗ-программа в Исследовательском центре общественного мнения Чикагского университета). И наконец, последний источник библиотечных программ — это вы сами. Соблюдая ПРИНЦИПЫ МОДУЛЬНОСТИ И уНИВерсалЬНОСТИ, ВЫ ПОСТепеННО СО'

здадите набор нужных подпрограмм.

2.7. Универсальность || Оглавление || 2.9. Форматы ввода-вывода


Услуги