Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Медведев_С++_CLI_C#_Java_J#.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
5 Мб
Скачать
☆

7.Программа ввода/вывода информации

В предыдущих разделах уже были рассмотрены программы, написанные на языках C++/CLI, C# и Java. Получив определённый опыт, перейдём к разработке программы, включающей большее количество классов и поэтому способной вызвать затруднения при её создании и поиске ошибок. Объём книги не позволяет рассмотреть разработку сложной программной системы, поэтому поэтапный подход к созданию простой программы этого раздела желательно использовать читателями этой книги в дальнейшем, поскольку этот подход оправдал себя при разработке сложных программ, существенно уменьшив время разработки и увеличив их надёжность. Программу разработаем на языке C++/CLI, в конце раздела приводится её версия на языке C#. Для большей ясности разработка программы будет иллюстрироваться диаграммами языка UML.

В конце книги приведена поэтапная разработка на языках C++/CLI, C# и Java более сложной программы, включающей множество объектов, а также события, делегаты, потоки, интерфейсные элементы и дочернее окно, о которых будет рассказано в следующих разделах.

7.1Постановка задачи

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

Вводимая информация о компьютере:

- имя производителя;

- год производства.

Вводимая информация о магазине:

- адрес магазина;

- стоимость компьютера.

Для простоты, не будем проверять соответствие строк с именами реальных производителей и адресами реальных магазинов. Пусть год и стоимость являются целыми числами, диапазон которых определяется диапазоном значений типа int.

Разработаем для пользователя два варианта этой программы:

- InfС++/CLI-приложение, написанное на языке C++/CLI;

- InfС#-приложение, написанное на языке C#.

Диаграмма вариантов использования

Диаграмма вариантов использования (use cases diagram) языка UML представляет разрабатываемую программу как систему (модель) в виде совокупности вариантов её использования пользователем.

Этой диаграммой должна быть показана внешняя сторона системы, не раскрывая её внутреннего построения. Обычно эта диаграмма создаётся разработчиком системы в содружестве с заказчиком - будущим пользователем системы. Диаграмма должна показать связь пользователя с системой настолько полно, чтобы, воспользовавшись этой диаграммой, разработчик или группа разработчиков смогли разработать и вернуть заказчику готовую систему, не имея от него и любого пользователя этой системы никаких претензий.

Дело в том, что любые недомолвки в диаграмме вариантов использования, выявленные в середине разработки системы или, что совсем плохо, в конце разработки, приводят к пересмотру внутреннего построения системы и изменению кода программы. Это, как правило, вызывает значительные дополнительные усилия по исправлению уже разработанной версии.

Диаграмма вариантов использования может разрабатываться с различной степенью детализации. Некоторые диаграммы вариантов использования или их части могут наследоваться, включаться и расширяться из других диаграмм в соответствии с нотацией языка UML.

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

Для нашей простой программы можно установить следующие варианты использования:

- ввести данные о компьютере и магазине (enter data);

- вывести все введённые данные о компьютерах и магазинах (show data);

- удалить все введённые данные (delete data).

На рис. 7.1.1 изображена диаграмма вариантов использования нашей программы.

Рис. 7.1.1. Диаграмма вариантов использования Inf-приложения

Пользователь представлен на диаграмме в виде маленького стилизованного человечка - актанта или актёра. Каждый вариант использования изображается эллипсом с внутренним текстом. Актёра с вариантами связывают стрелки.