![]() Интернет, компьютеры, софт и прочий Hi-Tech | |||||
Избранные докиМетки (все метки)hi tech, internet, it, software, интернет, информационные технологии, ит, по, программное обеспечение, софт
Подписаться через RSS2Email.ru
|
Функции и процедуры в программированииОснова любой компьютерной программы — алгоритмы, выраженные в виде команд. Человек, пишущий код, указывает, мол, возьми это, сделай с ним такое, такое и такое, а потом выведи результат вон туда и отправляйся отдыхать. Так вот, чтобы команды в программах не сливались в единую кашу и могли взаимодействовать друг с другом, их группируют в так называемые функции и процедуры. С этими понятиями и будем знакомиться. Что такое функцияЭто часть компьютерной программы, выполняющая какое-либо определённое действие. К примеру, одна функция подсчитывает количество продаваемых слонов, другая вычисляет прибыль от торговли, третья формирует отчётность, четвёртая, будучи шпионской закладкой в проприетарном софте, отправляет Большому Брату сведения о деятельности вашей фирмы («собирает анонимную статистику»), пятая подключается к постороннему серверу и тащит оттуда рекламу, ну и так далее. Иными словами, функция ответственна за один из этапов обработки информации. В языке программирования C++ её структура выглядит следующим образом:
Тип_возврата_значения Уникальное_имя_функции(параметры)
{
объявления_используемых_переменных;
операторы;
}
Тип возврата ставится перед именем функции через пробел. Само имя должно быть
уникальным (в масштабе всей программы) и очевидным для читающего код. То есть,
содержать в себе слова, недвусмысленно подсказывающие, какое именно действие
выполняется. Например, Круглые скобки, прилепленные к имени, предназначены для параметров. То бишь, для информации, которую функция получает от программы (от других функций). int count_elephants() { int count = 2; cout << "Слонов было" << count << endl; count++; cout << "После рождения слонёнка стало" << count << endl; return 0; } (Данный код не имеет никакой практической ценности и приводится исключительно в качестве иллюстрации.) Что такое процедураТеперь представьте себе, что какое-нибудь действие нужно выполнять несколько раз. Что делать программисту? Копировать одно и то же многократно? Тогда код раздуется, и в нём будет трудно разобраться. К тому же, если возникнет необходимость что-то подправить, то редактировать доведётся все копии фрагмента. Следовательно, выполнение действия целесообразно выделить в маленькую подпрограмму — процедуру. Чтобы основная программа вызывала её столько раз, сколько понадобится. Рассматривая разные коды, вы наверняка видели перед именем функции слово
Так вот, в C++ процедуры являются именно такими «пустотными» функциями («void function»). Последовательность действий при её создании может быть примерно такой:
Параметры, содержащиеся в подпрограммах, именуют формальными, а передаваемые им при вызове — фактическими. Причём, в процессе вызова фактические подменяют собой формальные, за счёт чего обрабатываются именно те данные, с которыми требуется что-то сделать. ПрочееВ объектных языках программирования есть так называемые классы (абстрактные типы данных с интерфейсом и средствами реализации), в состав которых запросто могут входить и функции, и процедуры. Их там называют единым термином «методы». Если открыть в архиваторе что-то написанное на Java, какой-нибудь
Имена функций используются: 1) для создания документации; 2) для API, то бишь, интерфейса для подключения к программе или целой операционной системе всяких приложений. Поэтому имеет смысл ещё раз напомнить о том, что оные имена следует давать вразумительные и по-возможности соответствующие выполняемым действиям. РезюмируемИтак, функции — это своеобразные контейнеры для группировки алгоритмов. Они:
Процедуры — фактически те же функции, хоть и «пустотные», ничего не возвращающие (в этом заключается их основное отличие). Этакие вспомогательные инструменты, предназначенные для выполнения рутинных действий, а также для экономии места, сил и времени. Автор: vanilinkin, специально для xBB.uz, 12.10.2012 Предыдущие публикации: Последнее редактирование: 2012-10-12 14:09:37 Метки материала: программирование, функции, процедуры, в программировании, функции и процедуры, программировании, алгоритм, программное обеспечение, информационные технологии, исходный код, ит, it, компьютерные технологии, software, разработка по, программы для компьютера Оставьте, пожалуйста, свой комментарий к публикации |
© 2007-2019, Дмитрий Скоробогатов.
Разрешается воспроизводить, распространять и/или изменять материалы сайта
в соответствии с условиями GNU Free Documentation License,
версии 1.2 или любой более поздней версии, опубликованной FSF,
если только иное не указано в самих материалах.