Навчання програмуванню з застосуванням структурованих блок-схем та шаблонів проектування

dc.contributor.authorКостирко В. C.
dc.contributor.authorКостенко А. В.
dc.contributor.authorПлеша М. І.
dc.contributor.authorKostyrko Vasyl S.
dc.contributor.authorKostenko Anatolij V.
dc.contributor.authorPlesha Mykhaylo I.
dc.date.accessioned2023-09-20T07:27:31Z
dc.date.available2023-09-20T07:27:31Z
dc.date.issued2023
dc.descriptionКостирко, В. C. Навчання програмуванню з застосуванням структурованих блок-схем та шаблонів проектування = Learning programming using structured block diagrams and design templates / В. C. Костирко, А. В. Костенко, М. І. Плеша // Зб. наук. пр. НУК. – Миколаїв : Гельветика, 2023. – № 1 (490). – С. 191–197.
dc.description.abstractНезважаючи на загальне визнання переваг технологій структурного програмування та програмування методом зверху вниз, для опису алгоритмів продовжують застосовувати традиційні блок-схеми [1, 2]. Метою статті є подолання суперечностей між алгоритмічним та програмним рівнями представлення процесів, яке особливо відчутне при навчанні програмуванню. Наукова новизна. Сучасні мови програмування базуються на структурованих операторах умовних, циклів, перемикачів тощо, заміщаючи ними прямі переходи. Однак, для опису алгоритмів продовжує застосовуватися застарілий формалізм блок-схем, який при переході до програм приводив до небезпечних прямих переходів (пов’язаних з операторами goto) і перешкоджав застосуванню таких прогресивних технологій, як програмування зверху вниз та верифікація програм. Можливо, це має своє пояснення в очевидності конструкції звичайних блок-схем, традиціях навчання тощо. Разом з тим, такі способи опису алгоритмів як UML-діаграми, не були сприйняті як формалізм для запису алгоритмів та навчання програмуванню. В даній роботі запропоновано декілька шаблонів, які дозволяють розширити конструкцію блок–схем і зробити їх придатними для адекватного опису структурованих програм. Серед них розглянуто композиції повного та неповного розгалуження, циклу з передумовою та післяумовою, циклу по послідовності, а також перемикача. Описано декілька технологій структурування програм (переходу від звичайних блок-схем до структурованих). Показано, що одна з технологій – введення додаткових арифметичних змінних – може застосовуватися автоматично. Доведена обчислювальна еквівалентність структурованих таким чином блок–схем початковим, в тому смислі, що вони породжують той же обчилювальний процес. Доведення базується на понятті просвітленої блок-схеми. Висновок: застосування структурованих блок-схем в навчанні програмуванню продемонструвало перспективність цього підходу. Це актуалізує задачу розробки відповідних графічних інструментів, а також API для генерації програм у популярних мовах програмування.
dc.description.abstract1Despite the general belief in the advantages of structural programming and top-down programming technologies, traditional block diagrams continue to be used to describe algorithms [1, 2]. The purpose of the article is to overcome contradictions between the algorithmic and programmatic levels of process representation, which is especially noticeable in programming teaching. Scientific novelty. Modern programming languages are based on structured statements of conditionals, loops, switches, etc., replacing direct transitions. However, the outdated formalism of flowcharts continues to be used to describe algorithms, which led to dangerous direct transitions (related to goto statements) when moving to programs and prevented the use of such advanced technologies as top-down programming and program verification. Perhaps this has its explanation in the obviousness of the construction of conventional flowcharts, teaching traditions, etc. However, such methods of describing algorithms as UML-diagrams were not accepted as a formalism for writing algorithms and teaching programming. In this work, several templates are proposed that allow expanding the construction of block diagrams and making them suitable for adequate description of structured programs. Among them, compositions of complete and incomplete branching, loops with precondition and postcondition, loops on a sequence, as well as a switchs are considered. Several technologies for structuring programs (transition from conventional to structured flowcharts) are described. One of the technologies named introduction of additional arithmetic variables can be applied automatically. The computational equivalence of block diagrams structured in this way to the initial ones is proven, in the sense that they generate the same computational process. The proof is based on the concept of an illuminated flowchart. Conclusion: the use of structured flowcharts in teaching programming demonstrated the perspective of this approach. This actualizes the task of developing appropriate graphical tools, as well as APIs for generating programs in popular programming languages.
dc.identifier.issn2311-3405 (Print)
dc.identifier.issn2313-0415 (Online)
dc.identifier.urihttps://eir.nuos.edu.ua/handle/123456789/6991
dc.language.isouk
dc.relation.ispartofseriesУДК; 519.683.2
dc.titleНавчання програмуванню з застосуванням структурованих блок-схем та шаблонів проектування
dc.title.alternativeLearning programming using structured block diagrams and design templates
dc.typeArticle

Файли

Контейнер файлів
Зараз показуємо 1 - 1 з 1
Вантажиться...
Ескіз
Назва:
Kostyrko.pdf
Розмір:
451.6 KB
Формат:
Adobe Portable Document Format
Ліцензійна угода
Зараз показуємо 1 - 1 з 1
Ескіз недоступний
Назва:
license.txt
Розмір:
4.38 KB
Формат:
Item-specific license agreed upon to submission
Опис:

Зібрання