41908

Управление списком сущностей.

Лабораторная работа

Информатика, кибернетика и программирование

Выход из приложения происходит после ввода команды exit Создать класс для сущности по заданию см. Придумать не менее 6 свойств для этой сущности одно из свойств должно быть ключевым уникальным например уникальный номер. Все свойства класса сущности реализовать через property. Например каждая сущность в файле может храниться в отдельной строке файла а свойства сущности быть записаны в этой строке через пробел или символ табуляции или другой символ в определённом порядке продумать как хранить значения свойств которые в себе...

Русский

2013-10-26

19.38 KB

1 чел.

Лабораторная №2. Управление списком сущностей.

Длительность: 8 часов.

Теоретическая часть

Необходимо изучить основные классы коллекций из пространства имён System.Collections.Generic:

  1. List<T>
  2.  LinkedList<T>
  3.  SortedList<TKey, TValue>
  4. Dictionary<TKey, TValue>
  5. Queue<T>
  6. Stack<T>
  7. HashSet<T>

Изучить оператор foreach и интерфейс IEnumerable.

Изучить свойства (properties), операторы get и set.

Изучить работу с исключениями (exceptions): операторы try, catch, finally и throw.

Практическая часть

Используя среду разработки MS Visual Studio 2010 необходимо добавить в проект, созданный на первой л/р, следующий функционал.

Часть 1.

Консольное приложение не должно сразу выполнять обработку входного файла, а делать это по команде, которую вводит пользователь (название команды придумать).

Выход из приложения происходит после ввода команды «exit»

Создать класс для сущности (по заданию, см. свой вариант). Придумать не менее 6 свойств для этой сущности, одно из свойств должно быть ключевым (уникальным), например, уникальный номер. Все свойства класса сущности реализовать через property. Придумать одно свойство только для чтения, которое вычисляется из других свойств.

Часть 2

Придумать текстовый формат хранения данных списка сущностей. Например, каждая сущность в файле может храниться в отдельной строке файла, а свойства сущности быть записаны в этой строке через пробел (или символ табуляции или другой символ) в определённом порядке (продумать, как хранить значения свойств, которые в себе содержат символ-разделитель). Или можно хранить отдельные значения свойств в отдельных строках.

Реализовать чтение списка сущностей из входного файла. Имя файла передавать вторым аргументом командной строки (потому что первым аргументом передаётся имя файла из лабораторной №1). Загрузку списка из файла запускать по команде, вводимой пользователем (название команды придумать). Для хранения списка выбрать подходящую структуру данных (List, Dictionary или другую/другие). Обработку ошибок реализовать через исключения. Для упрощения можно использовать стандартные классы исключений (например, базовый класс Exception), не создавая свои.

Часть 3.

В консольное приложение добавить команды, которые должны выполнять следующие действия (названия и синтаксис для команд придумать).

  1. Поиск и вывод свойств сущности по значению ключа (сделать через Dictionary<>, а не через List<> как в примере).
  2. Поиск и вывод сущностей по значению определённого свойства (выбрать такое свойство).
  3. Вывод списка всех сущностей.
  4. Изменение значения определённого свойства сущности (выбрать такое свойство). Команда принимает на вход значение ключа сущности и новое значение свойства.

Часть 4.

Изучить демонстрационный проект, расположенный по адресу ftp://ftp.vt.tpu.ru/study/Shestakov/Public/ais/labs/Samples/Lab2/.  Этот проект является дополнением к данному методическому указанию и содержит, в том числе, комментарии, разъясняющие некоторые типичные приёмы, принятые в языке C# и программировании в целом. Результаты по части 4 в отчёте отражать не нужно.

Сущности по вариантам:

  1. Товар
  2. Персонаж онлайн РПГ
  3. Тариф сотовой связи
  4. Музыкальная композиция
  5. Пользователь социальной сети
  6. Книга
  7. Заказ пиццы с доставкой
  8. Билет на поезд

Требования к приложению.

  1. Названия солюшена, проектов, классов, членов классов должны быть осмысленные.
  2. В солюшене должно быть два проекта: (1) библиотека, содержащая логику приложения и работающая с файлами и (2) консольное приложение, принимающее входные параметры, использующее библиотеку (1) и выводящее результаты на консоль. Компоновка кода должна быть такой, чтобы при желании можно было легко изменить интерфейс пользователя (с консольного на графический, например) не трогая при этом библиотеку с бизнес-логикой.
  3. Постараться, чтобы операции работы с файлами были вынесены в отдельный класс.
  4. Функционал, реализованный в работе №1, должен оставаться работающим.

 

А также другие работы, которые могут Вас заинтересовать

52777. Розв’язання вправ з теми: «Дроби і ділення. Мішані числа» 583.5 KB
  Завдання учням: стрілочками встановити відповідність між номером завдання і відповідями. Самоперевірка завдання за наданим зразком. А б в Учні самостійно виконують завдання в зошитах під час перевірки пояснюють виконання завдань 2 3 2.
52778. Звичайні дроби. Розв’язування вправ 330.5 KB
  Аукціон розпродажу перепусток Хто швидше порахує Кожне завдання оцінюється в 1 бал з врахуванням швидкості виконання; хто перший виконав завдання додатково до загальної суми балів додає 3 бали другий 2 бали третій 1 бал. Що означають чисельник і знаменник дробів 3 5 і 7 12 взаємоперевірка в парах оцінку виставляє опонент; кількість балів 2 2. Математика 5 клас розділ Дробові числа рубрика Хочеш знати ще більше хто перший згадаєкількість балів 3 Третя зупинка: Стародавній Рим. Підсумок уроку Підрахунок балів...
52779. Звичайні дроби 109.5 KB
  Обладнання: макет Замок вислови таблиці картки ключі. Перед вами мурований страшний на вигляд замок злої чаклунки Трінкокс жорстокість якої не мала меж. Пуск А от і замок. Поїхали А ось і замок.
52780. Додавання і віднімання десяткових дробів 45 KB
  Завдання Переведи звичайні дроби у десяткові та заповни таблицю. Кожній групі учнів учитель видає аркуш ватману кольорові маркери завдання записані на аркушах кольорового паперу. Суть методу Графіті: кожен учень виконує завдання свого кольору на ватмані та в зошиті. Коли всі учні однієї команди виконали свої завдання завдання мають різний рівень складності вони обмінюються ватманами з другою командою яка виконувала інший варіант перевіряють...
52781. Властивості додавання і віднімання десяткових дробів 1.02 MB
  Сума і різниця картки з завданнями для самостійної і естафетної роботи. Вона одержала завдання приготувати запитання і вправи для уроку. Дівчинка виконала його але вранці йдучи до школи була не уважною читала бігборди то ворон рахувала і загубила підготовлені завдання. Потрібно відірвати пелюстку прочитати завдання і виконати його.
52782. Немає друга шукай, а знайшов тримай. Виховна година 91 KB
  Учитель Дуже важливо путь важкий пройти Друга вірного собі в житті знайти Втішити засмучену людину І до щастя відшукать стежину Дружби перекинути мости Бо із другом завжди легше йти. Учитель Скільки б іграшок книжок розваг у тебе не було без справжнього друга сумно і нецікаво. Не бігай не метушись а іди по волі й пильнуй щоб угледіти друга який усміхаєтся до тебе.
52783. Якщо друг у тебе є, життя радісним стає 41.5 KB
  Мета: Виховувати почуття справжньої дружби колективізму чесності щирості у відносинах відповідальності перед другом уміння допомогти у важку хвилину. Вірші про дружбу Якщо друг у тебе є 4 Якщо друг у тебе є Життя радісним стає. Разом можна все зробити Ти не зрадь його ніколи Тож без друга не прожити.
52784. Я + МЫ = Дружба 63 KB
  Все расселись по местам никому не тесно по секрету скажу вам будет интересно Упражнение Я рад с тобой общаться Дети поворачиваясь друг к другу называют товарища по имени говорят: Я рад с тобой общаться Правила работы в группе Четко и громко проговаривать все слова Активно работать Обращаться друг к другу только по имени Внимательно слушать говорящего Не...
52785. Година спілкування на тему: «Добре там жити, де вміють дружити» 76 KB
  Робота в парах Збери прислівя Без вірного друга дорожчі від багатства. Людина без друга велика туга. Друга шукай як дерево без коріння. Людина без друга як їжа без солі.