함수형 패러다임은 프로그램에서 부수 효과를 최대한 제거하는 것으로 모듈화와 테스팅을 쉽게 하고 동시성을 보장하는 등 많은 측면에서 장점을 가진다. 이러한 장점들을 바탕으로 맵-리듀스 프로그래밍이나 리액티브 프로그래밍 등 함수형 패러다임에서 비롯된 다양한 프로그래밍 기법들이 개발되었으며 자바나 파이썬 등 기존의 객체지향 언어에도 람다 표현식과 같은 함수형 패러다임의 문법들이 도입되기 시작했다. 그러나 함수형 프로그래밍의 펑터나 ...
함수형 패러다임은 프로그램에서 부수 효과를 최대한 제거하는 것으로 모듈화와 테스팅을 쉽게 하고 동시성을 보장하는 등 많은 측면에서 장점을 가진다. 이러한 장점들을 바탕으로 맵-리듀스 프로그래밍이나 리액티브 프로그래밍 등 함수형 패러다임에서 비롯된 다양한 프로그래밍 기법들이 개발되었으며 자바나 파이썬 등 기존의 객체지향 언어에도 람다 표현식과 같은 함수형 패러다임의 문법들이 도입되기 시작했다. 그러나 함수형 프로그래밍의 펑터나 모나드 등 수학적, 대수적 개념이나 너무 간결해서 괴이해 보일 수 있는 문법은 기존의 절차지향이나 객체지향 개발자들이 함수형 패러다임에 접근하기 어렵게 만들었다. 또한 현재 함수형 프로그래밍 언어의 튜토리얼 자료가 매우 부족한 점도 함수형 패러다임의 진입 장벽을 높이고 있다. 본 논문에서는 함수형 패러다임의 학습 난이도를 낮추기 위해 블록 기반 프로그래밍을 도입하였다. 함수형 패러다임에 블록 기반 프로그래밍을 접목하는 것으로 학습자는 코드와 실행 결과를 직관적으로 바라볼 수 있으며 미션을 통해 기초적인 개념부터 단계별로 학습할 수 있다. 이를 통해 함수형 패러다임의 입문 난이도를 감소시키고 결과적으로 학습자가 함수형 패러다임의 기초적인 개념을 학습하고 함수형 패러다임으로의 전환을 돕는 것을 목표로 한다.
함수형 패러다임은 프로그램에서 부수 효과를 최대한 제거하는 것으로 모듈화와 테스팅을 쉽게 하고 동시성을 보장하는 등 많은 측면에서 장점을 가진다. 이러한 장점들을 바탕으로 맵-리듀스 프로그래밍이나 리액티브 프로그래밍 등 함수형 패러다임에서 비롯된 다양한 프로그래밍 기법들이 개발되었으며 자바나 파이썬 등 기존의 객체지향 언어에도 람다 표현식과 같은 함수형 패러다임의 문법들이 도입되기 시작했다. 그러나 함수형 프로그래밍의 펑터나 모나드 등 수학적, 대수적 개념이나 너무 간결해서 괴이해 보일 수 있는 문법은 기존의 절차지향이나 객체지향 개발자들이 함수형 패러다임에 접근하기 어렵게 만들었다. 또한 현재 함수형 프로그래밍 언어의 튜토리얼 자료가 매우 부족한 점도 함수형 패러다임의 진입 장벽을 높이고 있다. 본 논문에서는 함수형 패러다임의 학습 난이도를 낮추기 위해 블록 기반 프로그래밍을 도입하였다. 함수형 패러다임에 블록 기반 프로그래밍을 접목하는 것으로 학습자는 코드와 실행 결과를 직관적으로 바라볼 수 있으며 미션을 통해 기초적인 개념부터 단계별로 학습할 수 있다. 이를 통해 함수형 패러다임의 입문 난이도를 감소시키고 결과적으로 학습자가 함수형 패러다임의 기초적인 개념을 학습하고 함수형 패러다임으로의 전환을 돕는 것을 목표로 한다.
The functional paradigm provides various advantages such as well facilitating modularization, making testing easy and ensuring concurrency by eliminating side effects in the program as much as possible. Based on these advantages, various programming techniques derived from functional paradigms such ...
The functional paradigm provides various advantages such as well facilitating modularization, making testing easy and ensuring concurrency by eliminating side effects in the program as much as possible. Based on these advantages, various programming techniques derived from functional paradigms such as map-reduce and reactive programming has been developed. Furthermore, grammars of functional paradigm, such as lambda expressions, have also been newly introduced to existing object-oriented languages such as Java and Python. However, mathematical and algebraic concepts, such as functor and monad, or too concise grammars that can even seem strange make it difficult for existing procedural and object-oriented developers to adapt and use functional paradigms. In addition, the fact that functional programming languages are currently lacking variety of tutorial materials also makes the function paradigm to have very entry barriers. In this paper, block - based programming is introduced to ease the difficulties in learning functional paradigm. By incorporating block-based programming game into the learning of functional paradigm, learners can intuitively look at the code and its execution results and learn step by step from basic concepts as they solve the given mission of the game. The main objective of the research is to reduce the difficulty of adapting to functional paradigm, to enable learners to obtain fundamental concepts of functional paradigm and to help paradigm shift to functional paradigm.
The functional paradigm provides various advantages such as well facilitating modularization, making testing easy and ensuring concurrency by eliminating side effects in the program as much as possible. Based on these advantages, various programming techniques derived from functional paradigms such as map-reduce and reactive programming has been developed. Furthermore, grammars of functional paradigm, such as lambda expressions, have also been newly introduced to existing object-oriented languages such as Java and Python. However, mathematical and algebraic concepts, such as functor and monad, or too concise grammars that can even seem strange make it difficult for existing procedural and object-oriented developers to adapt and use functional paradigms. In addition, the fact that functional programming languages are currently lacking variety of tutorial materials also makes the function paradigm to have very entry barriers. In this paper, block - based programming is introduced to ease the difficulties in learning functional paradigm. By incorporating block-based programming game into the learning of functional paradigm, learners can intuitively look at the code and its execution results and learn step by step from basic concepts as they solve the given mission of the game. The main objective of the research is to reduce the difficulty of adapting to functional paradigm, to enable learners to obtain fundamental concepts of functional paradigm and to help paradigm shift to functional paradigm.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.