русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Родительский класс(AbstractEntity).


Дата добавления: 2015-07-09; просмотров: 490; Нарушение авторских прав


Следующим этапом разработки API является создание абстрактной сущности.

Большое количество сущностей, описывающих различные классы объектов, могут обладать общими атрибутами (координаты, размеры и т.д.). При такой ситуации целесообразно является вынесением общего в отдельный класс, называемый родительским, и наследованием от него производных сущностей.

В реализуемых сущностях присутствует общие атрибуты: идентификатор(id), координаты x и y. Также общими являются методы получения идентификатора и значения координат у объекта. Для объединения всего в одно общее создадим отдельный класс AbstractEntity(абстрактная сущность), в котором будут поля типа int x и y, long id. Методы getId(), getX(), getY()(рис. 3.6). Все сущности надо унаследовать от родительского класса(рис. 3.7). Таким методом будет передан весь функционал родительского класса его производным классам. Поэтому целесообразно произвести инициализацию идентификатора в конструкторе родительского класса.

AbstractEntity::AbstractEntity(void)

{

this->id = IdGenerator::getId();

}

DAO.

При создании объектов каждой сущности возникает вопрос их хранения, поиска и удаления. Для решения такого круга задач существует готовое решение – шаблон проектирования DAO(data access object ). Суть шаблона заключается в создании унифицированного механизма работы с хранилищами разного типа, будь то оперативная память или база данных. Первым этапом реализации является разработка интерфейса DAO с набором методов для создания, удаления и обновления существующих объектов. Интерфейс позволяет организовать общую логику для работы с различными источниками хранения.Реализацией интерфейса DAO является класс MemoryDAO основная задача, которого взаимодействие с хранилищем организованным в оперативной памяти. Хранилище представляет собой набор коллекций для каждого отдельного типа сущностей. Процесс поиска заключается в переборе коллекций и извлечению необходимых объектов. Операции модификации заключаются в добавлении и удалении объектов в коллекциях. Коллекция – объект содержащий в себе набор объектов других классов, а так же методы позволяющие обращаться к этим объектам. Для хранения различных сущностей воспользуемся ассоциативными массивами(хеш - таблицами). Каждый массив такого типа позволяет хранить пары “ключ-значение”. Доступ к элементу массива осуществляется по ключу. Ключом может являться значение различного типа. В реализуемом API в качестве ключа используется значение типа long.



DAO –интерфейс определяющий сигнатуру и имена методов (рис. 3.8).



<== предыдущая лекция | следующая лекция ==>
Класс Figure. | MemoryDAO.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.212 сек.