Тип работы:
Предмет:
Язык работы:


Проектирование интерактивной системы обучения паттернам проектирования

Работа №64647

Тип работы

Дипломные работы, ВКР

Предмет

информатика

Объем работы32
Год сдачи2017
Стоимость4770 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
76
Не подходит работа?

Узнай цену на написание


ВВЕДЕНИЕ 3
Глава 1. Теоретические аспекты проблемы использования паттернов проектирования 5
1.1. Паттерны проектирования, их типология и классификация 5
1.2. Распознавание паттернов проектирования в исходном коде с помощью
статического и динамического анализа 8
Глава 2. Анализ каталога спецификаций паттернов 13
2.1. Структурный разбор паттернов проектирования 13
Глава 3. Проектирование и разработка приложения 19
3.1. Разработка приложения для тренировочного применения паттернов
проектирования студентами 19
3.2. Результаты тестирования приложения для тренировочного применения паттернов проектирования студентами 21
ЗАКЛЮЧЕНИЕ 24
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 25
ПРИЛОЖЕНИЯ 27


Проектирование объектно-ориентированного программного обеспечения всегда считалось непростой задачей. Разработчик программного обеспечения должен учитывать сущности системы в классах, устанавливать отношения между классами, выставлять иерархии наследования. Поскольку большинство программных средств используется долгое время после его разработки, также необходимо учитывать текущие требования к приложениям, сохраняя при этом программный код и инфраструктуру достаточно гибкими для удовлетворения будущих потребностей, а также для поддержки разработанной системы.
Опытные разработчики считают, что паттерны проектирования программного обеспечения способствуют созданию стабильных и надежных программных систем. Повторное использование паттернов проектирования, а не постоянная разработка новых решений с нуля, является эффективным и снижает риск ошибки. Каждый паттерн идентифицирует повторяющуюся проблему проектирования в конкретном контексте приложения, а затем предлагает обобщенное многоразовое решение, применимое к различным сценариям приложения. Также использование паттернов проектирования, снижает потраченное время программистов, что является, на сегодняшний день, самым дорогим при разработке различных приложений. Кроме того, знание шаблонов проектирования облегчает процесс обмена информацией между разработчиками, предоставляя возможность отсылок на известные шаблоны. Таким образом, за счёт шаблонов производится унификация деталей решений.
Основная проблема применения паттернов проектирования заключается в опыте разработчика. Ведь невозможно получить практику на небольших проектах, потому что использование паттернов, лишь усложнит архитектуру и понимание программного кода. Несмотря на это, многие предприятия, занимающиеся разработкой приложений, требуют новичков и студентов ответов на вопросы по паттернам проектирования на собеседованиях, что не является разумным.
За счет отсутствия опыта работы в больших проектов, студентов нет достаточного опыта разработки больших проектов, поэтому они еще не сталкивались с паттернами. Наличие всего лишь 1-2 проектов за учебный курс приводит к отсутствию возможности применения различных паттернов проектирования на практике. И как же научиться применять паттерны проектирования, не имея достаточного количества проектов? На чем студенты должны оттачивать свои навыки?
Для решения поставленной проблемы, в данной дипломной работе, будет описываться реализация сервиса для проверки соответствия кода структурным и порождающим паттернам проектирования.



Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


В данной дипломной работе рассматривались следующие проблемы:
1) Освоение паттернов приходит в больших проектах;
2) Наличие всего лишь 1-2 проектов за учебный курс приводит к отсутствию возможности применения различных паттернов проектирования на практике;
3) Архитектура клиентской части большого приложения.
Данные проблемы актуальны для студентов, которые выбрали своим направлением разработку приложений, потому что паттерны проектирования программного обеспечения способствуют созданию стабильных и надежных программных систем. Каждый паттерн идентифицирует повторяющуюся проблему проектирования в конкретном контексте приложения, а затем предлагает обобщенное многоразовое решение, применимое к различным сценариям приложения.
В исследовании паттернов проектирования были выявлены особенности паттернов проектирования и их классификации. Также были рассмотрены вопросы:
1) Подбора паттерна для конкретной проблемы;
2) Распознавание паттернов проектирования в исходном коде с помощью статического и динамического анализа.
Был разработан каталог спецификаций паттернов, а также написаны unit тесты для распознавания паттернов проектирования из исходного кода.
В результате разработано веб-приложение позволяющее пользователям выбрать паттерн проектирования и попробовать реализовать его на JavaScript.



1. Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. Design patterns, software engineering, object-oriented programming, Addison-Wesley, USA, 1994, p. 11-26
2. Шаблон проектирования [Электронный pecypc]//URL: https: //ru.wikipedia. org/wiki/Шаблон_проектирования
3. J. Niere, W. Schafer, J. P. Wadsack, L. Wendehals, and J. Welsh. Towards Pattern-Based Design Recovery. In Proc. of the 24th International Conference on Software Engineering (ICSE), Orlando, USA, 2002, p. 338-348
4. L. Wendehals. Specifying Patterns for Dynamic Pattern Instance Recognition with UML 2.0 Sequence Diagrams. In E.-E. Doberkat and U. Kelter, editors, Proc. of the 6th Workshop Software Reengineering (WSR), Bad Honnef, Germany, Softwaretechnik-Trends, 2004, p. 63-64
5. L. Wendehals. Improving Design Pattern Instance Recognition by Dynamic Analysis. In J. Cook and M. Ernst, editors, Proc. of the ICSE 2003 Workshop on Dynamic Analysis (WODA), Portland, USA, 2003, p. 29-32
6. Specifying Patterns for Dynamic Pattern Instance Recognition with UML 2.0 Sequence Diagrams [Электронный pecypc]//URL: http: //pi .informatik. uni- siegen.de/stt/24 2/Sonderteil WSR2004/WSR alphabetisch/wendehals.pdf
7. Dynamic Design Pattern Recognition [Электронный ресурсу/URL: http://www2.cs.uni-paderborn.de/cs/ag-
schaefer/Personen/Aktuell/Wendehals/Wen05_DissertationProposal.pdf
8. L. Wendehals, M. Meyer, and A. Elsner. Selective Tracing of Java Programs. In A. Schurr and A. Z'undorf, editors, Proc. of the 2nd International Fujaba Days, 2004, p. 7-10
9. Шпаргалка по шаблонам проектирования [Электронный ресурсу/URL: https: //habrahabr.ru/po st/210288/
10. JavaScript [Электронный ресурс]//ШЕ: https: //ru.wikipedia. org/wiki/JavaScript
11. ТОП 10 JavaScript фреймворков и библиотек [Электронный pecypc]//URL: https: //habrahabr.ru/po st/305442/
12. Думай о будущем [Электронный ресурс]//ШЬ: http://largescaleis.ru/think- long-term/


Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2025 Cервис помощи студентам в выполнении работ