Разработка программного приложения для объектно-ориентированной реализации имитатора человеческой деятельности за компьютером на языке программирования C#
Уменьшение сложности программного обеспечения и повышение его надежности - одни из основных преимуществ объектно-ориентированного подхода. Характеристика основных требований, которые предъявляются к структуре исходного кода и языку программирования.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 02.03.2017 |
Размер файла | 169,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru
Размещено на http://www.allbest.ru
Введение
Темой курсовой работы является разработка приложения, выполняющего очередь заданных действий. Для написания программы будет использован язык программирования C# и платформа Microsoft.NET.
Данное приложение является программой, которая предназначена для визуализации математических функций. Пояснительная записка состоит из трех глав.
В первой рассматриваются вопросы, связанные с материалом, который был изучен в ходе выполнения курсовой работы. Во второй описаны принципы работы основных частей программы. В третьей перечислены системные требования к персональному компьютеру, а также инструкция пользователя.
Требуется реализовать приложение для выполнения очереди определенных действий. Основные возможности: создание очереди и ее отображение в виде списка и создание/редактирование каждого элемента. Создание приложения будет проводиться при помощи среды разработки Visual Studio 2015.
В процессе написания программы будет созданы классы для контроля очереди и каждого действия в ней отдельно.
1. Анализ предметной области
1.1 Обзор предметной области
Автоматизация различных процессов является важной и высокоприоритетной задачей во многих процессах. Контроль за ходом работы со стороны человека постепенно уходит на нет. Особенно ярко это проявляется при проверках.
В настоящее время существует множество методов автоматизации, которые могут быть представлены обычной последовательностью действий или же рядом из бесконечно зацикленных проверок.
При создании имитатора нужно всегда помнить некоторые особенности действий ЭВМ. Современные программные средства позволяют задать последовательность действий исходя из работы непосредственно с поиском нужного имени файла в нужной директории. Более простым методом, который является наиболее близким к имитации человеческой деятельности является работа непосредственно с мышкой. Использование одной только мыши пойдет в ущерб удобству и увеличении временных затрат в том случае, если с ней будет работать человек. Но с автоматическим имитатором это не будет проблемой. При необходимости нажать горячие клавиши можно использовать виртуальную клавиатуру.
Вместе с развитием объектно-ориентированного программирования стали развиваться и объектно-ориентированные методы разработки программного обеспечения, охватывающие стадии анализа и проектирования. Среди общепризнанных объектно-ориентированных подходов к анализу и проектированию следует выделить методы Г. Буча, Д. Рамбо, А. Джекобсона, Шлеера-Меллора и Коуда-Йордона. В результате объединения усилий первых трех авторов появился на свет унифицированный язык моделирования UML, который в 1997 г. был принят в качестве стандарта консорциумом Object Management Group и получил широкое распространение в сфере производства программного обеспечения.
Основные идеи объектно-ориентированного подхода опираются на следующие положения:
- программа представляет собой модель некоторого реального процесса, части реального мира; модель содержит не все признаки и свойства представляемой ею части реального мира, а только те, которые существенны для разрабатываемой программной системы;
- модель реального мира или его части может быть описана как совокупность взаимодействующих между собой объектов;
- объект описывается набором атрибутов (свойств), значения которых определяют состояние объекта, и набором операций (действий), которые может выполнять объект;
- взаимодействие между объектами осуществляется посылкой специальных сообщений от одного объекта к другому; сообщение, полученное объектом, может потребовать выполнения определенных действий, например, изменения состояния объекта;
- объекты, описанные одним и тем же набором атрибутов и способные выполнять один и тот же набор операций, представляют собой класс однотипных объектов.
С точки зрения языка программирования класс объектов можно рассматривать как тип данных, а отдельные объекты - как данные этого типа. Определение программистом собственных классов объектов должно позволить описывать конкретную задачу в терминах ее предметной области (при соответствующем выборе имен типов и имен объектов, их атрибутов и выполняемых действий).
Объектно-ориентированный подход дает следующие основные преимущества:
- уменьшение сложности программного обеспечения;
- повышение его надежности;
- обеспечение возможности модификации отдельных компонент программ без изменения остальных компонент;
- обеспечение возможности повторного использования отдельных компонент программного обеспечения.
Систематическое применение объектно-ориентированного подхода позволяет разрабатывать хорошо структурированные, надежные в эксплуатации, достаточно просто модифицируемые программные системы. Этим объясняется интерес программистов к объектно-ориентированному подходу и объектно-ориентированным языкам программирования.
При решении конкретной прикладной задачи в большинстве случаев язык и среда программирования не выбираются, а задаются заказчиком, начальником и т.п. В случае, если возможен выбор, исходить следует из таких условий (в порядке приоритета):
1. Характера задачи и технических требований;
2. Наработанного инструментария и имеющихся для данной среды библиотек;
3. Имеющихся в языке и среде программирования инструментальных средств.
Объектно-ориентированный подход в последнее десятилетие стал одним из наиболее интенсивно развивающихся направлений в программировании и наиболее популярным средством разработки программного обеспечения.
Наиболее распространенными объектно-ориентированными языками программирования является С++, Delphi, C#, Java и др. C# разработан в 1998-2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как язык разработки приложений для платформы Microsoft .NET Framework и впоследствии был стандартизирован как ECMA-334 и ISO/IEC 23270. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов, делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML.
Переняв многое от своих предшественников -- языков С++, Java, Delphi, Модула и Smalltalk -- С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем: так, C# не поддерживает множественное наследование классов (в отличие от C++).
В результате проведенного анализа и того факта, что имеются некоторые навыки по написанию программ на языке программирования C#, для выполнения данной работы будет использован язык программирования С#.
1.2 Постановка задачи
Требуется реализовать приложение для построения очереди из действий, имитирующих работу человека за ПК. Создание приложения будет проводиться при помощи среды разработки Visual Studio 2015.
2. Программное конструирование
2.1 Обоснование выбора языка программирования
Для реализации курсового проекта выбрана интегрированная среда разработки Microsoft Visual Studio 2015. В целом среда имеет много достоинств:
· обеспечение интуитивно понятной, расширяемой, унифицированной среды для языка, конструкторов и инструментальных средств.
· предоставление разработчикам набора модернизированных взаимодействующих элементов, соответствующих имеющимся у разработчиков навыкам.
· предоставление высокопроизводительных инструментальных средств для всех этапов жизненного цикла разработки - от определения требований и планирования до последующего сопровождения продукта.
В качестве языка программирования был выбран C#. Преимущества языка программирования C#:
· Подлинная объектная ориентированность (всякая языковая сущность претендует на то, чтобы быть объектом),
· Компонентно-ориентированное программирование,
· Безопасный (по сравнению с языками C и C++) код,
· Унифицированная система типизации,
· Поддержка событийно-ориентированного программирования,
· Объединение лучших идей современных языков программирования: Java, C++, VisualBasic и др.
2.2 Основные модули программного средства
Для решения поставленной задачи основными реализованными классами стали:
Класс MainForm - главное окно программы, в котором содержится список всех действий, а также возможность добавления новых, очистка очереди и запуск последовательности.
Класс ActionsEntry - отвечает за хранение типакаждого действия, координат курсора, интервала выполнения в нем.
Класс List<ActionsEntry> - отвечает за хранение и отображение всех действий в очереди.
Класс EditWin - отвечает за изменение свойств конкретного действия в очереди.
3. Тестовый пример
В самом начале пользователь видит интерфейс с пустым списком очереди, инструкцией и кнопками дополнительных возможностей:
Рисунок 1 - «Окно после запуска приложения и добавления двух команд»
Одной из дополнительных (необязательных) возможностей программы является сохранение и загрузка алгоритмов очередей. Каждый файл очереди хранится в формате .xml.
Рисунок 2 - «Окно загрузки алгоритма»
Вторая необязательная функция программы - изменение действия в очереди.
Рисунок 3 - «Окно изменения действия»
4. Требование к программе
4.1 Требование к функциональным характеристикам
Функциями программы являются: имитация клика левой и правой кнопкой, двойного клика левой кнопкой, ввода текста в текстовое поле.
Требования к составу выполняемых функций.
Программа должна обеспечивать возможность выполнения перечисленных ниже функций:
· Выбор и редактирование свойств отдельно взятого действия;
· Запуск очереди;
· Остановка очереди;
· Преждевременная остановка очереди;
Требования к организации входных данных.
Входные данные программы - горячие клавиши, от выбора которых будет зависеть действие в очереди, текстовая строка для добавления ее в тип действия «ввод текста».
Требования к организации выходных данных.
Выходные данные выводятся программным средством пользователям и представляют собой последовательность действий: кликов мыши или ввода текста в текстовое поле.
4.2 Требования к надежности
Требования к обеспечению надежного (устойчивого) функционирования программы.
Надежное (устойчивое) функционирование программы должно быть обеспечено выполнением совокупности организационно-технических мероприятий, перечень которых приведен ниже:
- организация бесперебойного питания технических средств;
- организацией исправного оборудования и программного обеспечения.
Время восстановления после отказа.
Время восстановления после отказа, вызванного сбоем электропитания технических средств (иными внешними факторами), не фатальным сбоем (не крахом) операционной системы, не должно превышать времени, необходимого на перезагрузку операционной системы и запуск программы, при условии соблюдения условий эксплуатации технических и программных средств.
Время восстановления после отказа, вызванного неисправностью технических средств, фатальным сбоем (крахом) операционной системы, не должно превышать времени, требуемого на устранение неисправностей технических средств и переустановки программных средств.
4.3 Условия эксплуатации
Климатические условия эксплуатации, при которых должны обеспечиваться заданные характеристики, должны удовлетворять требованиям, предъявляемым к техническим средствам в части условий их эксплуатации.
4.4 Требования к составу и параметрам технических средств
В состав технических средств должен входить IBM-совместимый персональный компьютер (ПЭВМ), включающий в себя:
· процессор не менее Pentium 133 MHz;
· оперативную память объемом не менее 128 Мб;
· не менее 50 Мб места на жестком диске;
· оптический манипулятор типа «мышь»;
· монитор.
4.5 Требования к информационной и программной совместимости
Требования к исходным кодам и языкам программирования.
Исходные коды программы должны быть реализованы на языке C#. В качестве инструмента разработки был выбран Microsoft Visual Studio 2015.
Требования к программным средствам, используемым программой.
На используемом оборудование должен быть установлен Windows (XP/Vista/7/10).
Заключение
В данной работе был реализован интерфейс для решения задачи: создание объектно-ориентированной реализации имитатора человеческой деятельности за ПК.
Разработанные алгоритмы являются простыми для понимания, а интерфейс интуитивно понятен для работы.
Список литературы
программный объектный код
1. Лабор В.В. Си Шарп: создание приложений для Windows - Мн.: Харвест, 2003. - 384с.
2. Троелсен Э. Язык программирования C# 5.0 и платформа .NET 4.5. - М.: ООО «Издательский дом Вильямс», 2013 - 1312с.
Размещено на Allbest.ru
...Подобные документы
Исследование принципов объектно-ориентированного программирования на базе языка программирования С++. Разработка программного комплекса для ведения учёта памятников города. Описание процессов сортировки, поиска, формирования статистики по памятникам.
курсовая работа [782,4 K], добавлен 26.05.2014Характеристика объектно-ориентированного, процедурного, функционального программирования. Выбор языка программирования для создания программного обеспечения для управления справочником "Спортсмены". Алгоритм работы приложения, пользовательский интерфейс.
курсовая работа [1,6 M], добавлен 23.02.2016Исследование объектно-ориентированного подхода к проектированию программного обеспечения будильника. Модель программного обеспечения. Взаимодействие между пользователями и системой. Диаграммы и генерация программного кода при помощи средств Rational Rose.
курсовая работа [355,8 K], добавлен 26.09.2014Понятие объектно-ориентированного программирования, характеристика используемых языков. Практическая разработка средств объектно-ориентированного программирования в задачах защиты информации: программная реализация на языке С++, а также Turbo Pascal.
курсовая работа [275,9 K], добавлен 22.12.2011Общая характеристика объектно-ориентированного подхода в программировании, его основные свойства и принципы. Разработка программы для автоматизация деятельности кафе на основе объектно-ориентированного подхода, проектирования и реализации схемы данных.
курсовая работа [1,2 M], добавлен 22.01.2012Изучение объектно-ориентированного языка программирования Java, его функциональные возможности. Создание программного кода. Описание классов и методов, использованных в программе. Руководство пользователя, запуск сервера и клиентского приложения.
курсовая работа [1,8 M], добавлен 16.09.2015Понятие объектно-ориентированного программирования, общая характеристика языков высокого уровня. Разработка программного обеспечения для реализации компьютерной игры "пинбол" с помощью императивного программирования в среде Microsoft Visual Basic.
курсовая работа [428,9 K], добавлен 19.09.2012Использование объектно-ориентированного программирования - хорошее решение при разработке крупных программных проектов. Объект и класс как основа объектно-ориентированного языка. Понятие объектно-ориентированных языков. Языки и программное окружение.
контрольная работа [60,1 K], добавлен 17.01.2011Оформление технического задания на разработку программы или программного изделия для вычислительных машин и комплексов. Принципы объектно-ориентированного программирования в среде Delphi. Ознакомление на конкретных примерах с технологиями OLE и СОМ.
отчет по практике [8,4 M], добавлен 04.02.2011Разработка приложения "Калькулятор с переходом в строковый калькулятор" с применением объектно-ориентированного программирования. Концепция и понятия объектно-ориентированного программирования. Язык программирования Java. Листинг программы "Калькулятор".
курсовая работа [966,9 K], добавлен 11.02.2016Анализ объектно-ориентированного программирования, имитирующего способы выполнения предметов. Основные принципы объектно-ориентированного программирования: инкапсуляция, наследование, полиморфизм. Понятие классов, полей, методов, сообщений, событий.
контрольная работа [51,7 K], добавлен 22.01.2013Обзор основных используемых языков программирования (С++, Java, Pascal). Анализ существующих методов шифрования паролей. Основные понятия объектно-ориентированного программирования. Реализация приложения для генерирования паролей на языке Object Pascal.
курсовая работа [822,4 K], добавлен 07.07.2012Характеристики и свойства языков программирования. Исследование эволюции объектно-ориентированных языков программирования. Построение эволюционной карты механизмов ООП. Разработка концептуальной модели функционирования пользовательского интерфейса.
курсовая работа [2,6 M], добавлен 17.11.2014Разработка объектно-ориентированной модели информационной подсистемы учета студентов университета во время экзаменационной сессии с помощью программы Rational Rose 2000, с использованием языка UML. Порядок генерации программного кода на языке С++.
курсовая работа [689,9 K], добавлен 21.06.2011История развития, характеристика, предназначение и особенности языка программирования Delphi. Разработка проекта создания кроссворда на объектно-ориентированном языке Delphi, который состоит из 19 вопросов по горизонтали и 16 вопросов по вертикали.
курсовая работа [970,5 K], добавлен 15.05.2014Анализ предметной области "Конкурс поэтов" на основе объектно-ориентированного подхода. Разработка оконного приложения и описание информационной модели предметной области. Описание разработанных процедур С++ и результатов тестирования приложения.
курсовая работа [355,9 K], добавлен 18.06.2013Особенности объектно-ориентированного проектирования. Основные понятия объектно-ориентированного подхода. Основы языка UML, варианты его использования. Диаграммы классов и взаимодействия. Разработка диаграммы прецедентов (вариантов использования).
курсовая работа [1,1 M], добавлен 13.05.2014Построение диаграмм, добавление деталей к описаниям операций, определение атрибутов классов и порядок генерации программного кода на языке С++ объектно-ориентированной модели информационной подсистемы, автоматизирующей работу регистратуры поликлиники.
курсовая работа [1,4 M], добавлен 25.06.2011Разработка объектно-ориентированной подсистемы складского учета для фирмы "КавказЮгАвто". Краткая характеристика предметной области. Построение диаграмм размещения, прецедентов, последовательности, компонентов и классов. Генерация программного кода C++.
курсовая работа [6,6 M], добавлен 26.06.2011Проектирование программного комплекса на языке С++ с использованием принципов объектно-ориентированного программирования. Разработка разных меню, помогающих пользователю работать с программой. Описание процесса формирования статистики по памятникам.
курсовая работа [799,9 K], добавлен 01.12.2016