Технологический раздел.
Информационная система выбора оптимальных туристских маршрутов
В этом разделе я приведу описания технологий, использованных в процессе разработки информационной системы. Это в первую очередь принципы объектно-ориентированного программирования, описание среды разработки Borland Delphi. Также будет включено описание принципов работы с базами данных, в том числе технологии ADO, позволяющей подключаться к различным базам данных. Особое внимание уделено методам… Читать ещё >
Технологический раздел. Информационная система выбора оптимальных туристских маршрутов (реферат, курсовая, диплом, контрольная)
Введение
В этом разделе я приведу описания технологий, использованных в процессе разработки информационной системы. Это в первую очередь принципы объектно-ориентированного программирования, описание среды разработки Borland Delphi. Также будет включено описание принципов работы с базами данных, в том числе технологии ADO, позволяющей подключаться к различным базам данных. Особое внимание уделено методам отладки, как инструментам создания надёжных программных продуктов.
Объектно-ориентированное программирование
При написании системы использовался объектно-ориентированный подход. Преимущества такого метода очевидны:
- · объектная модель позволяет в полной мере использовать выразительные возможности объектных и объектно-ориентированных языков программирования;
- · использование объектного подхода существенно повышает уровень унификации разработки и пригодность для повторного использования не только программ, но и проектов, что, в конце концов, ведет к созданию среды разработки. Объектно-ориентированные системы часто получаются более компактными, чем их не объектно-ориентированные эквиваленты. А это означает не только уменьшение объема кода программ, но и удешевление проекта за счет использования предыдущих разработок, что дает выигрыш в стоимости и времени;
- · возможность развиваться постепенно, не приводит к полной переработке программы даже в случае существенных изменений исходных требований;
- · риск при разработке сложных систем уменьшается, поскольку интеграция заложена ещё при проектировании, а не производится в конце разработки.
Основой объектно-ориентированного программирования является объектная модель. Она имеет 4 главных элемента:
- · абстрагирование;
- · инкапсуляция;
- · модульность;
- · иерархия.
Кроме главных, имеются ещё 3 дополнительных элемента:
- · типизация;
- · параллелизм;
- · сохраняемость.
Рассмотрю эти составляющие подробнее.
Абстракция выделяет существенные характеристики некоторого объекта, отличающие его от других видов объектов и, таким образом, чётко определяет его концептуальные границы с точки зрения наблюдателя. Абстрагирование концентрирует внимание на внешних особенностях объекта и позволяет отделить самые существенные особенности от несущественных. Важен принцип наименьшего удивления, который гласит, что абстракция должна охватывать всё поведение объекта, но не больше и не меньше, и не привносить сюрпризов или побочных эффектов, лежащих вне сферы её применения.
Инкапсуляция — это процесс отделения друг от друга элементов объекта, определяющих его устройство и поведение; инкапсуляция служит для того, чтобы изолировать контрольные обязательства абстракции от их реализации.
Правильное сочетание инкапсуляции с абстрагированием позволит, к примеру, легко переписать внутреннее устройство объекта, не затрагивая интерфейс. К примеру, если я решу попробовать другие генные операторы для улучшения сходимости, мне не придётся переделывать всю программу, достаточно будет переписать соответствующие части класса TGeneticAlgorithm.
Модульность — это свойство системы, которая была разложена на внутренние связные, но слабо связанные модули. Этот принцип дополняет абстрагирование и инкапсуляцию, проводя границы между абстракциями.
Иерархия — это упорядочивание абстракций по уровням. Примером иерархии является наследование — важнейший инструмент объектно-ориентированного программирования. Второй важной разновидностью иерархии является агрегация, определяющая отношение «part of» .
Понятие типизации взято из теории абстрактных типов данных. Типизация — это способ защититься от использования объектов одного класса вместо другого, или по крайней мере управлять таким использованием.
Параллелизм уделяет главное внимание абстрагированию и синхронизации процессов. Можно сказать, что параллелизм — это свойство, отличающее активные объекты от пассивных. Почти все современные языки программирования имеют средства для управления нитями и потоками.
Ну и наконец, последний из элементов объектно-ориентированной модели — сохраняемость. Она представляет из себя способность объекта существовать во времени, переживая породивший его процесс, и (или) в пространстве, перемещаясь из своего адресного пространства.