Читайте также: |
|
Задание. Используя технологию объектно-ориентированного проектирования решить задачу разработки проблемно-ориентированного программного обеспечения (ПО). Создать шаблон myVector по аналогии со стандартным шаблоном-контейнером std:: vector. Организовать хранение объектов автоматизации в созданном контейнере. Для данного контейнера реализовать методы size (), resize (), capacity (), front (), back (), push_back (), push_front (), insert (), begin (), end (), reserve (), at (), operator [], конструкторы по умолчанию, копирования. Перегрузить конструктор по умолчанию для предоставления возможности задания размера контейнера.
Реализовать следующие механизмы обеспечения проверки правильности значения индекса: для operator [] использовать assert (), а для at () – try … catch (обработка исключения std:: out_of_range).
При разработке программы исходить из следующего перечня «вариантов использования», то есть действий, поддерживаемых программой:
1. Создать «базу данных» (БД) для хранения экземпляров классов, соответствующих «объектам автоматизации».
2. Сохранить созданную в оперативной памяти, адресном пространстве приложения, БД в текстовом/бинарном файле. Предложить возможность сохранения файла в CSV -формате либо другом, «OpenDocumen»t -совместимом формате.
Загрузить БД из текстового/бинарного файла.
В контексте взаимодействия с БД должны поддерживаться следующие «прецеденты»:
1. Создать новую запись и задать для неё значения атрибут.
2. Сохранить новую запись в БД, то есть включить ее состав структуры хранения записей.
3. «Вставить» сохраняемую запись в БД в заданную позицию.
4. Вывести список существующих в БД записей в формате «номер записи: список атрибут». Если вся совокупность записей, сохраненных в БД, при выводе не умещаются на экране компьютера, в окне терминала, то необходимо организовать постраничный вывод.
5. Найти запись в БД по значению индекса, номера в массиве экземпляров класса объектов MyClass, и вывести ее на экран в формате «номер записи: список атрибут».
6. Редактировать атрибуты существующей в БД записи. Для указания записи пользователь вводит ее номер.
7. Очистить БД, то есть удалить из нее все записи.
8. Удалить из БД часть записей, указав значения диапазона индексов для записей подлежащих удалению. После удаления записей произвести «дефрагментацию» хранилища данных.
Лабораторная работа №4 Средства стандартной библиотеки С ++. Использование шаблона std::vector
Задание. Используя технологию объектно-ориентированного проектирования решить задачу разработки проблемно-ориентированного программного обеспечения (ПО). Используя последовательный контейнер стандартной библиотеки std::vector организовать хранение информации об объектах автоматизации.
При разработке программы исходить из следующего перечня «вариантов использования», то есть действий, поддерживаемых программой:
1. Создать «базу данных» (БД) для хранения экземпляров классов, соответствующих «объектам автоматизации».
2. Сохранить созданную в оперативной памяти, адресном пространстве приложения, БД в текстовом/бинарном файле. Предложить возможность сохранения файла в CSV -формате либо другом, «OpenDocumen»t -совместимом формате.
Загрузить БД из текстового/бинарного файла.
В контексте взаимодействия с БД должны поддерживаться следующие «прецеденты»:
1. Создать новую запись и задать для неё значения атрибут.
2. Сохранить новую запись в БД, то есть включить ее состав структуры хранения записей.
3. «Вставить» сохраняемую запись в БД в заданную позицию.
4. Вывести список существующих в БД записей в формате «номер записи: список атрибут». Если вся совокупность записей, сохраненных в БД, при выводе не умещаются на экране компьютера, в окне терминала, то необходимо организовать постраничный вывод.
5. Найти запись в БД по значению индекса, номера в массиве экземпляров класса объектов MyClass, и вывести ее на экран в формате «номер записи: список атрибут».
6. Редактировать атрибуты существующей в БД записи. Для указания записи пользователь вводит ее номер.
7. Очистить БД, то есть удалить из нее все записи.
8. Удалить из БД часть записей, указав значения диапазона индексов для записей подлежащих удалению. После удаления записей произвести «дефрагментацию» хранилища данных.
Дата добавления: 2015-08-18; просмотров: 87 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Лабораторная работа №2. Использование «исключений» при разработке устойчивых программных систем. | | | К ЛАБОРАТОРНЫМ РАБОТАМ |