- •2.Язык Turbo Pascal: структура программы, простой и составной оператор. Операторы переходов: условный оператор, оператор выбора (переключения).
- •3. Типы данных в системе программирования Turbo Pascal: простые типы, понятие о составных типах данных.…
- •Var m: array[1..10] of integer;
- •6.Основные алгоритмы обработки данных: сортировка данных. Простая и быстрая сортировка. Сортировка массива методом пузырька.
- •6.Организация работ с процедурами и функциями пользователя в языке программирования turbo pascal. Передача параметров. Рекурсия и ее использование.
- •7.Файлы данных в языке Object Pascal: открытие, чтение, запись, закрытие. Текстовые типизированные, нетипизированые файлы. Прямой и последовательный доступ к файлам.
- •Вывод данных. Для вывода результатов работы программы на экран используются процедуры:
- •8. Объектно-ориентированное программирование – общая характеристика и сравнительный анализ. Объект и класс. Базовые принципы ооп – инкапсуляция, полиморфизм и наследование.
- •8.2 Понятие класса в языке ObjectPascal. Структура класса: поля, методы, свойства. Доступ к структурным элементам класса. Иерархия наследования классов. Конструктор и деструктор класса.
- •9.Состав и назначение среды визуального программирования Delphi. Инспектор объектов, палитра компонентов, форма. Настройка свойств формы, создание и запуск приложений.
- •События в Delphi
- •10. Организация интерфейса программы в среде визуального программирования Delphi. Меню пользователя, управляющие элементы (кнопки, списки, флажки)
- •10.2 Использование компонентов RichEdit, StringGrid, OleContainer и WebBrowser. Внедрение ole-объектов в программу Delphi. Подключение файлов формата html.
- •11 Использование компонентов стандартов диалогов для программирования в среде Delphi. Диалоги работы с файлами, цветами, шрифтами, поиска и замены.
- •12. Программирование графики в среде визуального программирования Делфи. Компоненты вывода и построения графических изображений.
- •13. Организация работы с бд в среде Delphi. Подключение, просмотр и редактирование бд.
- •15.Компьютерная графика.
- •16.Операционные системы как средство распределения и управления ресурсами эвм
- •18 Общие сведения о операционной системе Windows. Загрузка операционной системы. Особенности настройки Windows и установки приложений.
- •19, Прикладное программное обеспечение общего назначения: обзор и классификация. Прикладные инструментальные пакеты для решения математических задач на эвм: назначение и основные возможности.
- •20.Офисные пакеты: назначение, состав, возможности. Создание презентаций.
- •Структура таблицы реляционной модели данных
- •Структура таблицы реляционной модели данных
- •Структура таблицы реляционной модели данных
- •Просмотр и корректировка данных с помощью экранных форм
- •25 Система обработки текста: назначение и основные возможности. Вставка объектов и работа с таблицами.
- •27. Табличные процессоры: назначение и основные возможности. Работа со списками в табличном процессоре.
- •Сортировка списка. Фильтрация (выборка) записей списка. Структура.
- •Скрыть детали
- •29. Язык sql. Типы данных sql. Команды языка sql.
- •30.Язык sql. Оператор выборки данных Select и примеры его использования.
8. Объектно-ориентированное программирование – общая характеристика и сравнительный анализ. Объект и класс. Базовые принципы ооп – инкапсуляция, полиморфизм и наследование.
Программирование объектов в структурном программировании очень запутанная задача. Это привело к появлению нового стиля программирования – объектно-ориентированное. Это произошло в конце 80-х годов, когда в Паскале появилось понятие «объекты», а в Си – «класс». Начиная с 5 версии Паскаля, появляются объекты и библиотека. Это была попытка создать для Паскаля визуальную среду программирования – Turbo Vision. В Си доминировал Си + +.
Появление объектно-ориентированной парадигмы программирования неразрывно связано с созданием систем визуального программирования. Это связано с двумя процессами:
появлением графического интерфейса в ОС;
в этом интерфейсе появились пиктограммы – визуальные объекты, связанными с какими-то действиями.
Эти объекты имели набор свойств, которые можно было настраивать. Появилась необходимость провести аналогию между объектами ОС и объектами в программировании. Начался процесс автоматизации программирования, появились генераторы – программы, которые генерируют стандартные процедуры и функции в интерактивном режиме (управление работой с помощью мышки, окон и элементов ввода). Наиболее удобным интерфейсом для генератора стала среда визуального программирования.
Первоначально название типа и его значения в Паскале было одинаковым – object, что создавало путаницу при использовании и описании. Это дало основание для заимствования из языка Си понятия класс (class) для названия типа объектов. Поэтому в Object Pascal уже определена специальная пользовательская структура данных – класс.
Основная цель ООП повышение эффективности разработки программ. В традиционных методах программирования изменение данных или правил и методов их обработки часто приводило к необходимости значительного изменения программы, что приводило к увеличению вероятности ошибок и возрастает время, необходимое для отладки программы. Использование ООП позволяет выйти из такой ситуации с min потерями, сведя необходимую модификацию программы к её расширению и дополнению.
Понятие объекта в языках программирования реализовано, как совокупность свойств (структур данных, характерных для этого объекта), методов их обработки (программ изменения свойств) и событий, на который данный объект может реагировать, и они же приводят к изменению свойств объекта.
<Имя потомка> =
object<имя предка>
поле;
…
поле;
метод;
…
метод;
end;
Объекты могут иметь идентичную структуру и отличаться только значениями свойств. В таких случаях в программе создаётся новый тип, основанный на единой структуре объекта, он называется классом, а каждый конкретный объект, имеющий структуру этого класса – экземпляр класса. Класс имеет заранее заданные свойства. Класс знает, как решать определённые задачи, т.е. располагает методами решения. Но обычно класс не используется в программах. Класс является как бы шаблоном, на основе которого создаются экземпляры класса или объекты.
Элементами класса являются поля, методы и свойства. Поля – это данные, которые образуют значение нового типа данных. Методы – процедуры или функции, с помощью которых реализуются действия объекта. Свойства – это структура, которая обеспечивает ввод и вывод данных через специальные процедуры чтения и записи. Т.о. прямой доступ к полям запрещен, а значение полей можно изменять с помощью методов, либо с помощью процедур свойства. Поля разделены на связанные со свойствами и те, которые связаны с методами.
Класс является как бы шаблоном, на основе которого создаются экземпляры класса или объекты.
Программа, написанная с использованием ООП, состоит из объектов, которые могут взаимодействовать между собой. Основные понятиями, связанными с классами:
1)Инкапсуляции – объединение записей с процедурами и функциями, работающими с этими записями. Работа с данными и детали её реализации скрыты от внешнего пользователя объекта. Преимущества инкапсуляции заключается в модульности и изоляции кода объекта от другого кода программы.
Инкапсуляция –это скрытие полей внутри класса и оьъединение в классе информационных полей и процедур их обработки: методов и свойств.
По принципу инкапсуляции для обращения к информационным полям объета нужно либо использовать метод, либо сделать это поле свойством. Произвольный доступ к информационным полям как бы запрещён.
Такая защита информационных полей повышает надёжность работы объекта, а соединение информационных полей и процедур действия упрощает визуализацию программирования.
Т.о. объекты получают возможность реагировать на события и субытийно управляемое программирование упрощается.
Динамический характер объектов, классов, полей, свойств, методов позволяет во-первых более оптимально использовать память и убыстрять работу, а так же виртуализировать объекты.
Виртуальные объекты- это объекты, которые имеют несколько вариантов и в различной ситуации действуют разные варианты. Виртуальными делают свойства и методы, есть просто в виртуальные, а есть динамические.
Инкапсуляция имеет следующие достоинства:
объект класса, у которого есть методы, обладает особыми свойствами, которыми недоступны другим типам данных. Особенно удобны методы для описания действий самого объекта. Например, объект кошка может догонять, убегать, подпрыгивать и т.д. и все это можно сделать в виде методов.
скрытие полей и связь их с методами и свойствами повышает надежность работы объекта, так как ограничение мешает неквалифицированному пользователю неправильно использовать объект.
Возможность инкапсуляции появилась вместе с формированием процедурного типа данных, где элементом является процедура или функция определенного вида.
3) преимущества инкапсуляции заключается в модульности и изоляции кода объекта от другого кода программы.
2)Наследование – задание объекта, затем использование его для построения иерархии порожденных объектов с наследованием доступа каждого из порожденных объектов к коду и данным предка.
Возможность создания новых объектов, которые наследуют свойства и поведение родительских объектов. Это позволяет создавать иерархии объектов, включающие наборы объектов, порождённых от одного общего предка и обладающих всё большей специализацией и функциональностью по сравнению со своими предками, но использующие все возможности родительских классов. Преимущество наследования заключается в совместном использовании многими объектами общего кода.
Наследование- классы построены по принципу наследования, когда новый класс может быть объявлен наследником класса родитель(имя=class(имя родителя)) при этом он автоматически наследует все поля, свойства и методы родителя, что значительно упрощает программирование, в результате принято разрабатывать наследственную иерархию классов.

Построение такой иерархии-это нововведение.
При изучении различных объектов возникает проблема их описания в виде класса. В этой проблеме есть следующие характеристики:
часто объект достаточно сложен, что мешает спроектировать его свойства;
многие объекты подобны друг другу, но отличаются 2-3 свойствами. Неразумно дублировать их свойства при описании других классов.
Для решения данных проблем строят дерево наследования, начиная с определения корневого класса.
Главная идея при построении дерева наследования – это разделение свойств, методов и полей по уровням иерархии. Если дерево наследования уже существует, то изменение любого свойства или метода автоматически переносится на все потомки. После того, как определена структура иерархии наследования, можно приступать к проектированию. Проектирование берется от корня к листьям. Сначала проектируется корневой класс, а затем все ниже лежащие. Дерево наследования обладает свойством накопления, т.е. можно разрабатывать новые уровни иерархии, создавая новых потомков. При этом, в отличие от библиотек процедур и функций, необязательно помнить о тонкостях программирования выше лежащих классов.
Преимущество наследования заключается в совместном использовании многими объектами общего кода.
3)Полиморфизм – задание одного имени действию, которое передается вверх и вниз по иерархии объектов, с реализацией этого действия способом, соответствующим каждому объекту в иерархии. Означает «много форм». Это свойство объектов переопределять методы наследуемого класса. Это значит, что вызов метода объекта для переменной приведёт к выполнению кода, конкретного экземпляра класса, соответствующего данной переменной. Работает, главным образом, через указатели.
Полиморфизм может быть реализован перекрытием методов, созданием виртуальных и динамических методов. Перекрытие методов образуется при наследовании. Метод потомка с тем же именем перекрывает метод предка. Существуют перегружаемые методы, которые перегружаются по мере необходимости. Они имеют одно имя, но разное содержимое, хранятся в специальных таблицах. В зависимости от типа таблиц существуют виртуальные и динамические объекты. Наличие полиморфизма позволяет упростить, унифицировать и стандартизировать процедуры обработки событий, связанных с этими методами.
