Cтраница 1
Процедурное программирование опирается на функции, отделенные от обрабатываемых ими данных. Объектно-ориентированное программирование объединяет данные и функции в таком понятии, как объект, и фокусирует внимание на взаимодействии между объектами. [1]
В С и других языках процедурного программирования программирование имеет тенденцию быть ориентированным на действия, тогда как в C программирование стремится быть ориентированным на объекты. В С единицей программирования является функция. [2]
Соответствующие вложенным ( nested) циклам процедурного программирования многократные повторения в функциональном программировании осуществляются обычно с помощью двух и более функций, каждая из которых соответствует простому циклу. Вызов такой рекурсивной функции используется в определении другой функции з качестве аргумента ее рекурсивного вызова. Естественно, аргументом рекурсивного вызова в определении функции может быть другой рекурсивный вызов. [3]
При разработке ЭС весьма часто используют языки процедурного программирования, которые можно рассматривать как ЯПИИ нижнего уровня. Язык процедурного программирования ( ЯПП) - это императивный ЯП, основанный на понятиях процедуры и переменной. Процедура выполняет некоторое действие, используя и изменяя значения переменных, которые являются параметрами этой процедуры, а также глобальных и локальных переменных. [4]
Общая схема совершенствования методов программирования. [5] |
Модульное программирование [28-33] является дальнейшим развитием и совершенствованием процедурного программирования и библиотек программ. [6]
Вызов функций-элементов более компактен, чем вызов функций в процедурном программировании, потому, что большинство данных, используемых в функции-элементе, непосредственно доступно ей в объекте. [7]
Исторически сложилось так, что программирование возникло и развивалось как процедурное программирование, которое предполагает, что основой программы является алгоритм, процедура обработки данных. [8]
Большинство вузовских профессоров, которые будут учить по этой книге, преподавали процедурное программирование много лет ( вероятно, на С или Паскале) и имеют, возможно, некоторый опыт преподавания объектно-ориентированного программирования. C сам по себе не является чисто объектно-ориентированным языком. Скорее он является гибридным языком, дающим возможность и процедурного, и объектно-ориентированного программирования. [9]
У программистов есть поговорка, наглядно иллюстрирующая разницу между языками ИИ и процедурного программирования: если задачу легко решить на Фортране, то ее трудно будет решить на Лиспе; если же задачу легко решить на Лиспе, то ее трудно будет решить на Фортране. Такая же связь, хотя и несколько менее ярко выраженная, существует между языками Паскаль и Пролог. [10]
Программирование ИИ часто определяется от противного, как все то, что не укладывается в рамки процедурного программирования. Однако большинство программ ИИ имеют сходные элементы. Для этих программ характерно то, что они имеют дело со сложными проблемами, которые недостаточно хорошо понимаются, для которых не существует четко заданных алгоритмических решений и которые могут быть исследованы с помощью того или иного механизма символических рассуждений. [12]
Большинство современных языков высокого уровня поддерживают механизм рекурсивного вызова, когда функция, как элемент структуры языка процедурного программирования, может вызывать сама себя с другим аргументом. Эта возможность позволяет напрямую реализовывать вычисление рекурсивно определенных функций. Отметим, что в силу тезиса Черча-Тьюринга аппарат рекурсивных функций Черча равномощен машине Тьюринга, и, следовательно, любой итерационный алгоритм может быть реализован рекурсивно. [13]
На рис. 1.1 показаны три основных стиля программирования. Процедурное программирование - это программирование на Бейсике, Паскале или Фортране, причем в целях и способах оно существенно отличается от программирования ИИ. [14]
При разработке ЭС весьма часто используют языки процедурного программирования, которые можно рассматривать как ЯПИИ нижнего уровня. Язык процедурного программирования ( ЯПП) - это императивный ЯП, основанный на понятиях процедуры и переменной. Процедура выполняет некоторое действие, используя и изменяя значения переменных, которые являются параметрами этой процедуры, а также глобальных и локальных переменных. [15]