Навчання програмуванню з застосуванням структурованих блок-схем та шаблонів проектування - Костирко В. C.; Костенко А. В.; Плеша М. І.; Kostyrko Vasyl S.; Kostenko Anatolij V.; Plesha Mykhaylo I. (My University, 2023)
Незважаючи на загальне визнання переваг технологій структурного програмування та програмування методом зверху вниз, для опису алгоритмів продовжують застосовувати традиційні блок-схеми [1, 2]. Метою статті є подолання суперечностей між алгоритмічним та програмним рівнями представлення процесів, яке особливо відчутне при навчанні програмуванню. Наукова новизна. Сучасні мови програмування базуються на структурованих операторах умовних, циклів, перемикачів тощо, заміщаючи ними прямі переходи. Однак, для опису алгоритмів продовжує застосовуватися застарілий формалізм блок-схем, який при переході до програм приводив до небезпечних прямих переходів (пов’язаних з операторами goto) і перешкоджав застосуванню таких прогресивних технологій, як програмування зверху вниз та верифікація програм. Можливо, це має своє пояснення в очевидності конструкції звичайних блок-схем, традиціях навчання тощо. Разом з тим, такі способи опису алгоритмів як UML-діаграми, не були сприйняті як формалізм для запису алгоритмів та навчання програмуванню. В даній роботі запропоновано декілька шаблонів, які дозволяють розширити конструкцію блок–схем і зробити їх придатними для адекватного опису структурованих програм. Серед них розглянуто композиції повного та неповного розгалуження, циклу з передумовою та післяумовою, циклу по послідовності, а також перемикача. Описано декілька технологій структурування програм (переходу від звичайних блок-схем до структурованих). Показано, що одна з технологій – введення додаткових арифметичних змінних – може застосовуватися автоматично. Доведена обчислювальна еквівалентність структурованих таким чином блок–схем початковим, в тому смислі, що вони породжують той же обчилювальний процес. Доведення базується на понятті просвітленої блок-схеми. Висновок: застосування структурованих блок-схем в навчанні програмуванню продемонструвало перспективність цього підходу. Це актуалізує задачу розробки відповідних графічних інструментів, а також API для генерації програм у популярних мовах програмування.
Learning programming using structured block diagrams and design templates
Костирко, В. C. Навчання програмуванню з застосуванням структурованих блок-схем та шаблонів проектування = Learning programming using structured block diagrams and design templates / В. C. Костирко, А. В. Костенко, М. І. Плеша // Зб. наук. пр. НУК. – Миколаїв : Гельветика, 2023. – № 1 (490). – С. 191–197.