Preview

Информатика и образование

Расширенный поиск

Электронный задачник по паттернам проектирования: реализация и использование

https://doi.org/10.32517/0234-0453-2023-38-2-35-46

Аннотация

Работа посвящена проблемам, связанным с организацией практической составляющей учебных курсов по объектно-ориентированному программированию (ООП). Дается обзор существующих обучающих ресурсов по курсам ООП и отмечается отсутствие в них учебных заданий по паттернам проектирования — одному из основных компонентов современной теории ООП. Для решения отмеченной проблемы предлагается использовать специализированный обучающий ресурс — электронный задачник по паттернам объектно-ориентированного проектирования. Подробно описываются особенности задачника по паттернам проектирования, и приводится пример его реализации: задачник Programming Taskbook for OOP, включающий в себя задания, связанные с 21 классическим паттерном проектирования, а также вводную группу заданий, посвященную принципам и приемам ООП.

Новизна описанного подхода состоит в том, что, в отличие от традиционных задачников, Programming Taskbook for OOP не только содержит формулировки заданий, но и предоставляет учебной программе исходные данные и обеспечивает автоматическую проверку правильности предложенного решения. Еще одной важной особенностью задачника является его универсальность: задания можно выполнять на любых языках и в разных средах программирования, что позволяет легко адаптировать задачник для использования в различных учебных курсах уровня бакалавриата и магистратуры. Обсуждаются результаты применения задачника при проведении курсов по ООП.

Об авторе

М. Э. Абрамян
Университет МГУ-ППИ в Шэньчжэне; Южный федеральный университет
Россия

Абрамян Михаил Эдуардович, канд. физ.-мат. наук, доцент, доцент факультета вычислительной математики и кибернетики; доцент кафедры алгебры и дискретной математики, Институт математики, механики и компьютерных наук им. И. И. Воровича

Шэньчжэнь, Китай

г. Ростов-на-Дону



Список литературы

1. Гамма Э., Хелм Р., Джонсон Р., Влиссидес Дж. Приемы объектно-ориентированного проектирования. Паттерны проектирования. СПб.: Питер; 2019. 368 с.

2. Фримен Э., Робсон Э., Сьерра К., Бейтс Б. Head First. Паттерны проектирования. СПб.: Питер; 2018. 657 с.

3. Шевчук А., Охрименко Д., Касьянов А. Design Patterns via C#. Приемы объектно-ориентированного проектирования. Электронное издание; 2015. 288 с.

4. Kasampalis S. Mastering Python Design Patterns. Packt, Birmingham-Mumbai; 2015. 214 p.

5. Olsen R. Design Patterns in Ruby. Boston, AddisonWesley; 2008. 384 p.

6. Вайсфельд М. Объектно-ориентированное мышление. СПб.: Питер; 2014, 304 с. Режим доступа: https://elibrary.ceiti.md/files/12/Vaysfeld_Obektno-orientirovannoe_myishlenie.pdf

7. Astrachan O., Berry G., Cox L., Mitchener G. Design patterns: An essential component of CS curricula. Proc. 29th SIGCSE Technical Symposium on Computer Science Education. 1998;30(1):153–160. DOI: 10.1145/273133.273182

8. Stuurman S., Florijn G. Experiences with teaching design patterns. ACM SIGCSE Bulletin. 2004;36(3):151–155. DOI: 10.1145/1026487.1008037

9. Gestwicki P., Sun F.-S. Teaching design patterns through computer game development. Journal on Educational Resources in Computing. 2008;8(1):2. DOI: 10.1145/1348713.1348715

10. Muyan-Özçelik P. A hands-on cross-platform mobile programming approach to teaching OOP concepts and design patterns. Proc. of the 1st International Workshop on Software Engineering Curricula for Millennials. 2017:33–39. DOI: 10.1109/SECM.2017.12

11. Azimullah Z., Young Sun An, Denny P. Evaluating an interactive tool for teaching design patterns. Proc. of the Twenty-Second Australasian Computing Education Conf. (ACE’20). 2020:167–176. DOI: 10.1145/3373165.3373184

12. Бабушкина И. А., Окулов С. М. Практикум по объектно-ориентированному программированию. Учебное пособие. М.: БИНОМ. Лаборатория знаний; 2012. 372 с. EDN: RBATTD

13. Варфоломеева Т. Н., Ефимова И. Ю. Лабораторный практикум по объектно-ориентированному программированию. М.: ФЛИНТА; 2019. 74 с.

14. Ашарина И. В., Крупская Ж. Ф. Язык C++ и объектно-ориентированное программирование в C++. Лабораторный практикум. М.: Горячая линия — Телеком; 2016. 232 с.

15. Наумов В. Ю., Гостевская О. В. Объектно-ориентированное программирование на C++. Лабораторный практикум. Волгоград: ВолгГТУ; 2015. 64 с. EDN: RVFTXN

16. Объектно-ориентированное программирование: практикум. Сост. А. А. Халидов. Казань: Казанский государственный энергетический университет; 2018. 83 с. Режим доступа: https://lib.kgeu.ru/irbis64r_15/scan/186эл.pdf

17. Объектно-ориентированное программирование: лабораторный практикум. Сост. А. В. Щербаков. Минск: БНТУ; 2014. 38 с. Режим доступа: https://rep.bntu.by/handle/data/7771?show=full

18. Мишуто К. А. Электронный лабораторный практикум по дисциплине «Объектно-ориентированное программирование». Точная наука. 2018;(26):116–117. EDN: XRVQAX

19. Абрамян М. Э. Инструменты и методы разработки электронных образовательных ресурсов по компьютерным наукам: монография. Ростов-на-Дону; Таганрог: Южный федеральный университет; 2018. 260 с. EDN: YOWZAL

20. Абрамян М. Э. Об архитектуре универсального электронного задачника по программированию. Информатизация образования и науки. 2015;(3(27)):134–149. EDN: RWVJUI

21. Johnson B. Visual Studio Code: End-to-End editing and debugging tools for web developers. Indianapolis, Wiley; 2019. 192 p.

22. Абрамян М. Э. Разработка компонентов электронных задачников по программированию для автоматизации проведения лабораторных занятий. Информатизация образования и науки. 2020;(4(48)):12–28. EDN: SVVAVB


Рецензия

Для цитирования:


Абрамян М.Э. Электронный задачник по паттернам проектирования: реализация и использование. Информатика и образование. 2023;38(2):35-46. https://doi.org/10.32517/0234-0453-2023-38-2-35-46

For citation:


Abramyan M.E. Electronic problem book on design patterns: Implementation and use. Informatics and education. 2023;38(2):35-46. (In Russ.) https://doi.org/10.32517/0234-0453-2023-38-2-35-46

Просмотров: 494


Creative Commons License
Контент доступен под лицензией Creative Commons Attribution 4.0 License.


ISSN 0234-0453 (Print)
ISSN 2658-7769 (Online)