- •Введение
- •1 Анализ предметной области и постановка задачи
- •Анализ предметной области
- •Постановка задачи проектирования
- •Обоснование выбора компонентов
- •1.3.1 Выбор языка программирования
- •1.3.2 Выбор средств разработки программы
- •Выводы по первой главе
- •2 Проектирование программного обеспечения
- •Разработка диаграммы вариантов использования
- •Проектирование функциональной структуры приложения
- •Проектирование структурной модели приложения
- •Проектирование пользовательского интерфейса
- •Выводы по второй главе
- •3 Реализация программного продукта
- •Реализация пользовательского интерфейса
- •Реализации функциональных частей
- •4 Тестирование программы
- •Заключение
- •Список использованных источников
- •Приложение а (обязательное) техническое задание
- •Приложение б (обязательное) диаграмма вариантов использования
- •Приложение ж
Постановка задачи проектирования
В соответствии с заданием на курсовой проект необходимо создать информационную систему «Ретро автомобили».
Приложение должно иметь простой и интуитивно понятный интерфейс и не вызывать у пользователя проблем при работе с ним.
Целями разработки системы являются:
получение пользователем дополнительных знаний о ретро автомобилях.
Данная информационная система должна обладать следующими функциями:
хранение данных об автомобилях;
хранение данных об известных производителях автомобилей;
хранение данных об интересных фактах, касающихся автомобилей;
добавление данных об автомобилях;
добавление данных об известных производителях автомобилей;
добавление данных об интересных фактах, касающихся автомобилей;
удаление данных об автомобилях;
удаление данных об известных производителях автомобилей;
удаление данных об интересных фактах, касающихся автомобилей;
сортировка по критериям;
визуальное представление данных.
Техническое задание представлено в ПРИЛОЖЕНИИ А.
Обоснование выбора компонентов
1.3.1 Выбор языка программирования
Разрабатываемая информационная система «Ретро автомобили» будет разработана с помощью языка программирования С#.
Одним из возможных языков программирования является C#. Его преимуществами является простота написания кода, мощная среда разработки и хорошая документация к ней, также мощная библиотека визуальных компонентов. Но основным минусом, который не является существенным для учебного проекта, является то, что приложения, написанные на C#, выполняются только на платформе .NET, которая корректно работает только в семействе операционных систем Windows.
Еще одним возможным языком программирования может быть С++. В качестве его преимуществ можно привести высокое быстродействие. Но он достаточно сложен для изучения, и существует мало легко понимаемой справочной литературы, написанной на понятном, для рядового программиста, языке.
Третий возможный язык программирования – Java. При его использовании разработчик получает адаптируемость к нагрузкам, относительную простоту разработки и довольно высокую скорость выполнения кода, а так же кросплатформенность, которая заложена в основе java. Из недостатков можно выделить меньшее быстродействие в сравнении с С++, а также наличие слабой библиотеки визуальных компонентов.
Из всего вышесказанного можно сделать вывод о том, что наиболее подходящим языком программирования является C#. Основным его преимуществом, перед остальными языками, является наличие большой библиотеки визуальных компонентов, а так же относительная простота языка. Его недостаток для данного проекта не существенен, т.к. процентное соотношение пользователей, которые используют ОС Windows больше чем пользователей другой ОС.
1.3.2 Выбор средств разработки программы
Основная часть работы программиста проектировка алгоритмов, а не реализация интерфейса или написание кода, хотя оно является неотъемлемой частью его работы. Интегрированные среды разработки призваны упростить однообразную работу программиста по написанию и отладке уже спроектированного алгоритма. Следовательно, выбор хорошей интегрированной среды является важной частью подготовки к созданию программы.
Одной из самых распространенных интегрированных сред для C# является SharpDevelop.
SharpDevelop — свободная среда разработки для C#, VisualBasic .NET, Boo, IronPython, IronRuby, F# ,C++. Обычно используется теми, кто не хочет пользоваться VisualStudio .NET. Существует также форк на Mono/Gtk+ — MonoDevelop.
SharpDevelop 2.0 предоставляет интегрированный отладчик, который использует собственные библиотеки и взаимодействует с исполняющей средой .NET через COM Interop.
Хотя SharpDevelop 2.0 (как и VS2005) использует файлы проекта в формате MSBuild, он по-прежнему может использовать компиляторы от .NET Framework 1.0 и 1.1, а также от Mono.
MicrosoftVisualStudio — линейка продуктов компании Майкрософт, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств. Данные продукты позволяют разрабатывать как консольные приложения, так и приложения с графическим интерфейсом, в том числе с поддержкой технологии WindowsForms, а также веб-сайты, веб-приложения, веб-службы как в родном так и в управляемом кодах для всех платформ, поддерживаемых MicrosoftWindows, WindowsMobile, Windows CE, .NET Framework, .NET CompactFramework и MicrosoftSilverlight.
Visual Studio включает в себя редактор исходного кода с поддержкой технологии IntelliSense и возможностью простейшего рефакторинга кода. Встроенный отладчик может работать как отладчик уровня исходного кода, так и как отладчик машинного уровня. Остальные встраиваемые инструменты включают в себя редактор форм для упрощения создания графического интерфейса приложения, веб-редактор, дизайнер классов и дизайнер схемы базы данных. Visual Studio позволяет создавать и подключать сторонние дополнения (плагины) для расширения функциональности практически на каждом уровне, включая добавление поддержки систем контроля версий исходного кода, добавление новых наборов инструментов.
Позволяет создавать приложения используя языки программирования C# 4.0 и младше, С++, С, С#, Visual Basic.
Исходя из вышесказанного можно сделать вывод о том, что гораздо лучше использовать среду разработки Visual Studio, т.к. используя ее можно использовать более поздние версии C# в которых были исправлены ошибки старых версий и добавлены новые возможности расширяющие круг возможностей программиста.
