Основные элементы объектно-ориентированного программирования
Характерные идеи и методы программирования, и соответствующий образ мышления образуют так называемую парадигму программирования. Между парадигмами и языками программирования высокого уровня существует прямая связь. Для ответа на вопрос, какие основные идеи современного состояния программирования должны быть отражены в профильном курсе информатики, обратимся к истории программирования. Анализ истории программирования показывает, что главным фактором его развития являлась необходимость преодоления трудностей, возникавших на пути создания сложных программных продуктов. Каждый этап развития определен своими принципами декомпозиции, абстрагирования и иерархии.
Рассмотрим этапы развития программирования: операциональный, структурный и объектно-ориентированный.
Первый этап — операциональный (1954 — 1965 г.). На данном витке были созданы языки программирования: FORTRAN I и II, ALGOL 58, 60, COBOL, LISP и др. Базовыми идеями программирования являлись подпрограмма, типы данных и их описание, раздельная компиляция, блочная структура, обработка списков, указатели и т. д. Программа «собиралась» из мелких деталей, отдельных операций и имела достаточно простую структуру: область глобальных данных и подпрограммы. Уровень абстрагирования - отдельное действие.
Второй этап — структурный (1966 - 1985 г.). Здесь под термином «структурный» мы понимаем нисходящее проектирование и модульное программирование. Суть нисходящего конструирования программ состоит в разбивке большой задачи на меньшие подзадачи, которые могут рассматриваться отдельно.
Структурное программирование. Структурное программирование - это некоторый набор принципов написания программ. Для реализации принципов структурного программирования требуется использование трех основных его составляющих: следования, ветвления и повторения.
Характерными чертами структурного стиля программирования являются:
простота и ясность (программа легко читается и анализируется, существует возможность включать в текст программ необходимые комментарии);
использование только базовых конструкций;
отсутствие многоцелевых блоков;
отсутствие неоправданно сложных арифметических и логических конструкций;
размещение в строке программы не более одного оператора языка программирования;
содержательность имен переменных.
При этом процесс нисходящей разработки программы может продолжаться до тех пор, пока не будет достигнут уровень «атомарных» блоков, то есть базовых конструкций (присвоения, if-then else, do-while).
В структурном программировании уточнен принцип декомпозиции задачи, точнее ее алгоритмический аспект, то есть действия. Алгоритмическая декомпозиция понимается как разделение алгоритмов, причем каждый модуль выполняет один из этапов общего процесса. Одним из создателей структурного программирования был профессор Э. Дейкстра.
Модульное программирование. В данном подходе задача разбивается на достаточно независимые фрагменты, и ее решение оформляется в виде модулей. Модуль имеет строго определенный интерфейс и скрытую часть, одну точку входа и одну точку выхода. Разработан механизм включения модулей в разрабатываемую программу, созданы библиотеки модулей. Языками структурного программирования являются языки: ПЛ/1, ALGOL 68, Pascal, Simula, С, Ada (наследник ALGOL 68, Pascal, Simula), С-н-(возникший в результате слияния С и Simula) и т. д. В 70-е годы были созданы тысячи языков и диалектов.
Основная идея структурного программирования - подпрограмма как элемент абстрагирования. Для ее реализации разработаны следующие механизмы:
передачи параметров;
вложенности подпрограмм;
локальных и глобальных переменных;
использование модулей (от группы логически связанных подпрограмм до раздельно компилируемых фрагментов со строго определенным интерфейсом).
Третий этап - объектно-ориентированный (с 1986 г. до настоящего времени). В него мы включаем и технологию визуального программирования. На данном этапе развитие программирования происходит в двух взаимосвязанных направлениях:
1) разработка объектно-ориентированного подхода;
2) разработка инструментальных сред для создания программных проектов, реализующих на новом витке спирали принципы декомпозиции, абстракции и иерархии.
Данное обстоятельство обусловлено тем, что после разработки стандартов структурного программирования стало возможным поставить процесс создания программных продуктов на промышленную основу. Однако рост сложности программного обеспечения и необходимость сокращения сроков его разработки стали предъявлять требования, удовлетворение которых потребовало разработки новых технологий программирования. Были проведены серьезные исследования в области методологии проектирования программных систем, в частности, разработка методов декомпозиции, абстрагирования и построения иерархии. Результатом таких исследований стала разработка объектно-ориентированной методологии. При традиционных подходах к разработке программных продуктов всегда разделялись данные и процессы их обработки. Вследствие этого технологии структурного подхода были ориентированы, в первую очередь, на процессы обработки данных, их последующую сортировку с целью выделения необходимых для работы данных и организации информационных потоков между связанными процессами. Объектно-ориентированная технология разработки программ объединяет данные и процессы в логические сущности - объекты, которые имеют способность наследовать характеристики одного и более объектов, обеспечивая тем самым повторное использование программного кода.
Похожие статьи:
Специфические нарушения письма – дисграфии
На основании анализа существующих исследований, посвященных данному вопросу, и собственных наблюдений мы предлагаем следующее определение дисграфии. Дисграфией следует называть стойкую неспособность овладеть навыками письма по правилам графикам (то есть руководствуясь фонетическим принципом письма) ...
Опытно-педагогическая работа по профилактике отклоняющегося поведения подростков
в ПДН ОУУП и ПДН Отдела МВД России по Миллеровскому району
База практики: Отделение по делам несовершеннолетних отдела участковых уполномоченных полиции по делам несовершеннолетних Отдела Министерства внутренних дел Российской Федерации по Миллеровскому району. Фактический адрес учреждения: Российская Федерация, 346130, Ростовская область, Миллеровский рай ...
Понятие «читательские умения» и их формирование у младших школьников в
методической литературе
Читательские умения – это готовность наиболее эффективно выполнять действия в соответствии с целями и условиями, в которых приходится действовать. Они направлены на анализ языка, сюжета, композиции, образов и способствуют постижению идеи произведения. Современное литературоведение рассматривает худ ...