Журнал: Том 29, №3, 2024
Сторінки: 42 – 54
DOI: https://doi.org/10.62660/bcstu/3.2024.42
1 109 Переглядів

Використання патернів проектування та типізованих мов при розробці адаптивної моделі персоналізованого навчання

Павло Федорка, Федір Сайберт, Роман Бучук
Отримано 17.06.2024
Доопрацьовано 10.09.2024
Прийнято 21.10.2024

Анотація

Мета роботи полягала у визначенні ефективності застосування шаблонів проєктування та типізованих мов програмування, зокрема TypeScript і C#, у побудові адаптивної моделі персоналізованого навчання у сфері програмної інженерії. Під час дослідження було розглянуто використання шаблонів проєктування при розробці адаптивної моделі персоналізованого навчання, проведено огляд та використання мов TypeScript та C# у створенні такої моделі, а також порівняно дані типізовані мови програмування та ресурси для навчання у програмній інженерії. Основні результати дослідження показали, що серед шаблонів проєктування найефективнішими для побудови адаптивної моделі персоналізованого навчання є Singleton, Factory, Strategy та Observer, оскільки вони підвищують гнучкість і адаптивність системи. Розроблені програмні прототипи продемонстрували, що використання мови TypeScript забезпечує надійність адаптивної системи завдяки статичній типізації та гнучким інтерфейсам, а мова C# з можливостями Generics та Language Integrated Query (LINQ) сприяє ефективному управлінню даними та модульною інтеграцією. У порівняльному аналізі виявлено, що мова C# краще підходить для складніших систем з високими вимогами до управління даними, тоді як TypeScript забезпечує швидку інтеграцію й більшу гнучкість у розробці фронтенду. Також проведений огляд доступних навчальних ресурсів для обох мов виявив більшу різноманітність для TypeScript, що може сприяти швидшому освоєнню для нових користувачів. Висновки свідчать, що застосування шаблонів проєктування та типізованих мов програмування є важливим підходом до створення персоналізованих навчальних моделей, що здатні адаптуватися до індивідуальних потреб користувача та підвищувати ефективність навчання у програмній інженерії

Ключові слова

Використані джерела

[1] Arya, D.M., Guo, J.L.C., & Robillard, M.P. (2024). Properties and styles of software technology tutorials. IEEE Transactions on Software Engineering, 50(2), 159-172. doi: 10.1109/TSE.2023.3332568.

[2] Attia, M.E., & Arteimi, M.A. (2021). Adaptive e-learning system using fuzzy logic. Al Academia Journal for Basic and Applied Sciences (AJBAS), 3(3).

[3] Ball, T., de Halleux, P., & Moskal, M. (2019). Static typescript: An implementation of a static compiler for the typescript language. In Proceedings of the 16th ACM SIGPLAN international conference on managed programming languages and runtimes (pp. 105-116). New York: Association for Computing Machinery. doi: 10.1145/3357390.3361032.

[4] Blažić, A., et al. (2024). Development of the adaptive learning concept at CARNET. In Proceedings of the 15th international conference on e-learning. Belgrade: Belgrade Metropolitan University.

[5] Chai, L., Yu, W., & Zhou, N. (2024). Personalized federated learning with adaptive information fusion. The Journal of Supercomputing. doi: 10.21203/rs.3.rs-4598644/v1.

[6] Chen, K., et al. (2024). Deep learning and machine learning: Advancing big data analytics and management with design patterns. arXiv (Cornell University). doi: 10.48550/arXiv.2410.03795.

[7] Chong, M.K. (2021). E-learning platform for collaborative coding assignments. (Doctoral dissertation, Universiti Tunku Abdul Rahman, Kampar, Malaysia).

[8] Dagunduro, A.O., Chikwe, C.F., Ajuwon, O.A., & Ediae, A.A. (2024). Adaptive learning models for diverse classrooms: Enhancing educational equity. International Journal of Applied Research in Social Sciences, 6(9), 2228-2240. doi: 10.51594/ijarss.v6i9.1588.

[9] Dumitru, C.T. (2024). Future of learning: Adaptive learning systems based on language generative models in higher education. In S. Tripat & J. Rosak-Szyrocka (Eds.), Impact of artificial intelligence on society (pp. 33-44). New York: Chapman and Hall. doi: 10.1201/9781032644509-3.

[10] Er-Rafyg, A., Zankadi, H., & Idrissi, A. (2024). AI in adaptive learning: Challenges and opportunities. In A. Idrissi (Ed.), Modern artificial intelligence and data science (pp. 329-342). Cham: Springer. doi: 10.1007/978-3-031-65038-3_26.

[11] Fenton, S. (2018). Pro TypeScript: Application-scale JavaScript development. Basingstoke: Apress. doi: 10.1007/978-1-4842-3249-1.

[12] Gnadlinger, F., Selmanagic, A., Simbeck, K., & Kriglstein, S. (2023). Adapting is difficult! Introducing a generic adaptive learning framework for learner modeling and task recommendation based on dynamic Bayesian networks. In Proceedings of the 15th international conference on computer supported education (pp. 272-280). Prague: SciTePress. doi: 10.5220/0011964700003470.

[13] Gou, Q., & Poliakova, H. (2024). Measurement of personalized learning of students in the digital educational environment of the institution of higher education on a qualimetric basis. Adaptive Management: Theory and Practice, Series Pedagogics, 18(35). doi: 10.33296/2707-0255-18(35)-19.

[14] Halkiopoulos, C., & Gkintoni, E. (2024). Leveraging AI in e-learning: Personalized learning and adaptive assessment through cognitive neuropsychology – a systematic analysis. Electronics, 13(18), article number 3762. doi: 10.3390/electronics13183762.

[15] Huang, S., Yang, H., Yao, Y., Lin, X., & Tu, Y. (2024). Deep adaptive interest network: Personalized recommendation with context-aware learning. arXiv (Cornell University). doi: 10.48550/arXiv.2409.02425.

[16] Khowaja, S.S., et al. (2020). Crowdsourced machine learning based recommender for software design patterns. International Journal of Computer, 36(1), 34-52.

[17] Koshova, O., Chernenko, O., Chilikina, T., & Komar, I. (2023). Peculiarities of web applications developing for the distance learning system using the react library. Systems and Technologies, 65(1), 20-31. doi: 10.32782/2521-6643-2023.1-65.3.

[18] Latif, S., Qureshi, M.M., & Mehmmod, M. (2022). Detection and recognition of software design patterns based on machine learning techniques: A big step towards software design re-usability. In D.N.A. Jawawi, I.S. Bajwa & R. Kazmi (Eds.), Engineering software for modern challenges (pp. 3-15). Cham: Springer. doi: 10.1007/978-3-031-19968-4_1.

[19] Mirzaei, M., & Meshgi, K. (2023). The use of machine learning in developing learner-adaptive tools for second language acquisition. In CALL for all languages – EUROCALL 2023 short papers (pp. 272-277). Reykjavik: University of Iceland. doi: 10.4995/EuroCALL2023.2023.16996.

[20] Peng, P., & Fu, W. (2022). A pattern recognition method of personalized adaptive learning in online education. Mobile Networks and Applications, 27(3), 1186-1198. doi: 10.1007/s11036-022-01942-6.

[21] Pravorska, N., & Hryha, S. (2024). Methods for implementing microservice architectures: Advantages and disadvantages, implementation and testing in the development of software applications. Herald of Khmelnytskyi National University. Technical Sciences, 335(3(1)), 404-408. doi: 10.31891/2307-5732-2024-335-3-55.

[22] Rahman, M., Hossain Chy, S., & Saha, S. (2023). A systematic review on software design patterns in today’s perspective. In Proceedings of the 11th international conference on serious games and applications for health (pp. 1-8). Athens: IEEE. doi: 10.1109/SeGAH57547.2023.10253758.

[23] Skeet, J. (2019). C# in depth. London: Manning.

[24] Tanweer, M., & Ismail, A. (2024). Generative AI in curriculum development: A framework for adaptive, customized, and personalized learning. In Z. Fields (Ed.), Impacts of generative AI on creativity in higher education (pp. 197-230). New York: IGI Global Scientific Publishing. doi: 10.4018/979-8-3693-2418-9.ch008.

[25] Troussas, C., Krouska, A., & Sgouropoulou, C. (2020). A novel teaching strategy through adaptive learning activities for computer programming. IEEE Transactions on Education, 64(2), 103-109. doi: 10.1109/TE.2020.3012744.

[26] Uriawan, W., Putra, R.D., Siregar, R.I., Gunawan, S.N., Adriansyah, S., & Nurrohman, W. (2024). BrainNest: Implementation of TypeScript and MERN stack to improve scalability of interactive and personalized e-learning. Preprints. doi: 10.20944/preprints202407.0051.v1.

[27] Wang, S. (2023). Developing and implementing effective e-learning software for mechanics: A study of FET and C#. In Proceedings of the 5th international workshop on artificial intelligence and education (pp. 125-130). Tokyo: IEEE. doi: 10.1109/WAIE60568.2023.00030.

[28] Wang, S., Mao, X., & Zhang, Y. (2024). Development of e-learning software for aluminum alloy bending experiment based on simulation technology. In Proceedings of the 5th international conference on computer science, engineering, and education (pp. 39-44). Shanghai: IEEE. doi: 10.1109/CSEE63195.2024.00016.

[29] Washizaki, H., Khomh, F., Guéhéneuc, Y.-G., Takeuchi, H., Natori, N., Doi, T., & Okuda, S. (2022). Software-engineering design patterns for machine learning applications. Computer, 55(3), 30-39. doi: 10.1109/MC.2021.3137227.

[30] Xu, R., Zhang, L., & Chollathanrattanapong, J. (2024). A study of the adaptability of adaptive learning systems to individualized educational strategies. Applied Mathematics and Nonlinear Sciences, 9(1). doi: 10.2478/amns-2024-2737.

[31] Zhang, H., Lin, Y., Shen, S., Han, S., & Lv, K. (2024). Enhancing off-policy constrained reinforcement learning through adaptive ensemble C estimation. Proceedings of the AAAI Conference on Artificial Intelligence, 38(19), 21770-21778. doi: 10.1609/aaai.v38i19.30177.

ЦИТУВАТИ

Fedorka, P., Saibert, F., & Buchuk, R. (2024). Using design patterns and typed languages in the development of an adaptive model of personalised learning. Bulletin of Cherkasy State Technological University, 29(3), 42-54. https://doi.org/10.62660/bcstu/3.2024.42