Главная страница
Навигация по странице:

  • 3.1 Выбор и обоснование средств и среды разработки

  • 3.2 Разработанные модули

  • 3.3 Описание разработанных классов

  • ПРОГРАММНОЕ СРЕДСТВО РЕАЛИЗАЦИИ АЛГОРИТМА «ФЛОЙ-ДА–УОРШЕЛА». Итог курсового проекта. Программное средство реализации алгоритма флойдауоршела


    Скачать 1.65 Mb.
    НазваниеПрограммное средство реализации алгоритма флойдауоршела
    АнкорПРОГРАММНОЕ СРЕДСТВО РЕАЛИЗАЦИИ АЛГОРИТМА «ФЛОЙ-ДА–УОРШЕЛА
    Дата07.11.2022
    Размер1.65 Mb.
    Формат файлаdocx
    Имя файлаИтог курсового проекта.docx
    ТипПояснительная записка
    #775652
    страница7 из 10
    1   2   3   4   5   6   7   8   9   10

    3 Программная реализация




    3.1 Выбор и обоснование средств и среды разработки



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

    Для разработки была выбрана семейство операционных систем Windows, т.к. оно является самым распространенным в пользовательском сегменте [12]. Недостатками данной среды являются требования последних представителей семейства к ресурсам (Windows 10).

    В качестве среды разработки был выбран продукт компании Microsoft – Microsoft Visual Studio. Данная среда разработки является аналогом Jet Brains Rider для разработки приложений на языке программирования C#. Преимуществами являются возможность разработки Windows Forms предложение, среда содержит множество инструментов, которые очень хорошо работают на C#, наличие бесплатной версии, возможность хранения данных в облаке.

    Язык программирования C# является объектно-ориентированным и статически типизированным языком программирования. Язык C# может быть использован в различных платформах и для различных целей. C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML.

    Основные достоинства С#:

    • C# является полностью объектно-ориентированным языком, где даже типы, встроенные в язык, представлены классами;

    • C# является мощным объектным языком с возможностями наследования;

    • C# является наследником языков C/C++, сохраняя лучшие черты этих популярных языков программирования. Общий с этими языками синтаксис, знакомые операторы языка облегчают переход программистов от С++ к C#;

    • сохранив основные черты своего великого родителя, язык стал проще и надежнее. Простота и надежность, главным образом, связаны с тем, что на C# хотя и допускаются, но не поощряются такие опасные свойства С++ как указатели, адресация, разыменование, адресная арифметика;

    • мощная библиотека каркаса поддерживает удобство построения различных типов приложений на C#, позволяя легко строить Web-службы, другие виды компонентов, достаточно просто сохранять и получать информацию из базы данных и других хранилищ данных;

    • реализация, сочетающая построение надежного и эффективного кода, является немаловажным фактором, способствующим успеху C# [13].

    Выделение и объединение лучших идей современных языков программирования делает язык C# не просто суммой их достоинств, а языком программирования нового поколения, поэтому я выбрала именно этот язык для написания программы.

    3.2 Разработанные модули



    При разработке приложения были созданы следующие модули:

    – авто сохранение графа при закрытии;

    – нахождение кратчайшего пути;

    – создание графа.

    Диаграмма IDEF0 (рисунки 3.1 – 3.2) [8]

    Рисунок 3.1 – Диаграмма (A-0)

    Рисунок 3.2 – Диаграмма декомпозиции (A0)
    В модуль программы входят три основные функции: создание графа, нахождение кратчайшего пути в графе, авто сохранение. Для создания графа функция может использовать два пути: первый функция получает на вход граф который был при закрытии программа, второй – пользователь сам задает граф, выходом этой функции является полностью сформированный граф, который в дальнейшем используется для нахождения кратчайшего пути. В кратчайшем пути используется алгоритм Флойда-Уоршелла для нахождения кратчайшего пути графа, итог такой использовании функции является анимированный граф с кратчайшим путем.

    3.3 Описание разработанных классов



    Данная программа содержит следующую структуру классов:

    Form1.cs – класс содержит визуальное представление окна приложения и внутреннюю логику кнопок;

    Program.cs – класс, в котором описывается запуск основного окна приложения;

    Edge.cs – класс, разработанный для создания вершин и коллекции вершин, а также создания графа;

    Vector.cs – класс, разработанный для создания ребер между вершинами;

    MovingBall.cs – класс созданный для анимация прохождения по кратчайшему пути.

    Выше разработанные классы являются наследниками уже разработанных классов и по сути реализации программного средства дополняются необходимыми методами.

    1   2   3   4   5   6   7   8   9   10


    написать администратору сайта