본 연구에서는 프로그램을 보다 쉽고 편리하게 작성할 수 있도록 교육용 한글 프로그래밍 언어인 HanScript를 개발하여 학교 현장에 적용하였다. 또한 HanScript를 평가하기 위해서 교육용 프로그래밍 언어의 조건을 가독성, 가작성, 교정성으로 구분하고, 이를 Visual Basic과 비교하였다. 그 결과 HanScript는 우리말식으로 표현되어 있어 Visual Basic에 비해 가독성과 교정성이 높게 나타났다. 그러나 Visual Basic에 비해 라이브러리가 부족하여 복잡한 기능을 구현하기 어려웠고, 소스 코드를 쉽게 작성할 수 있는 편집기가 제공되지 않아 실습하는 데 어려움이 많았다. 따라서 HanScript가 풍부한 라이브러리와 자세한 디버그 정보를 제공하고, 소스를 편리하게 작성할 수 있는 편집기를 제공한다면 보다 유용한 교육용 프로그래밍 언어가 될 수 있을 것이다.
본 연구에서는 프로그램을 보다 쉽고 편리하게 작성할 수 있도록 교육용 한글 프로그래밍 언어인 HanScript를 개발하여 학교 현장에 적용하였다. 또한 HanScript를 평가하기 위해서 교육용 프로그래밍 언어의 조건을 가독성, 가작성, 교정성으로 구분하고, 이를 Visual Basic과 비교하였다. 그 결과 HanScript는 우리말식으로 표현되어 있어 Visual Basic에 비해 가독성과 교정성이 높게 나타났다. 그러나 Visual Basic에 비해 라이브러리가 부족하여 복잡한 기능을 구현하기 어려웠고, 소스 코드를 쉽게 작성할 수 있는 편집기가 제공되지 않아 실습하는 데 어려움이 많았다. 따라서 HanScript가 풍부한 라이브러리와 자세한 디버그 정보를 제공하고, 소스를 편리하게 작성할 수 있는 편집기를 제공한다면 보다 유용한 교육용 프로그래밍 언어가 될 수 있을 것이다.
This study developed HanScript, which is an educational Hangul programming language, in order to make programs easily and conveniently and applied it to the school fields. To evaluate HanScript, additionally, the researcher divided the properties of educational programming languages into easiness to...
This study developed HanScript, which is an educational Hangul programming language, in order to make programs easily and conveniently and applied it to the school fields. To evaluate HanScript, additionally, the researcher divided the properties of educational programming languages into easiness to read, easiness to write and easiness to debug and, based on them, compared HanScript with Visual Basic. According to the result, HanScript was expressed in Korean language style, so was easier to read and debug than Visual Basic. But it was not different from Visual Basic in debugging. Due to fewer libraries compared to Visual Basic, however, it was difficult to implement complex functions using HanScript. In addition, HanScript did not include an editor to edit source codes. Thus, if HanScript is equipped with rich libraries, detailed debugging information and an editor for source code edition, it will be a useful educational programming language.
This study developed HanScript, which is an educational Hangul programming language, in order to make programs easily and conveniently and applied it to the school fields. To evaluate HanScript, additionally, the researcher divided the properties of educational programming languages into easiness to read, easiness to write and easiness to debug and, based on them, compared HanScript with Visual Basic. According to the result, HanScript was expressed in Korean language style, so was easier to read and debug than Visual Basic. But it was not different from Visual Basic in debugging. Due to fewer libraries compared to Visual Basic, however, it was difficult to implement complex functions using HanScript. In addition, HanScript did not include an editor to edit source codes. Thus, if HanScript is equipped with rich libraries, detailed debugging information and an editor for source code edition, it will be a useful educational programming language.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
따라서 본 연구에서는 교육용 프로그래밍 언어의 조건을 살펴보고, 이를 토대로 누구든지 쉽게 이해하고, 자기의 생각을 우리말로 옮기듯이 쉽게 프로그램을 작성할 수 있도록 우리말식 교육용 프로그래밍 언어인 'HanScript'를 개발하고자 한다. 그리고 이를 실업계 고등학교에 적용한 후 Visual Basic과 비교 .
따라서 교육용 프로그래밍 언어가 가져야 할 조건인 가독성, 가작성, 교정성, 전이성을 만족할 수 있는 'HanScript' 언어를 개발하고자 한다. 또한 대부분의 실업계 고등학교에서 가르치고 있는 Visual Basic과 비교 .
본 연구에서는 교육용 프로그래밍 언어의 조건 중에서 전이성을 배제한 가독성, 가작성, 교정 성만을 평가하였다. 그 이유는 전이성을 평가하기 위해서는 또 다른 언어들을 배워야 하는 현실적인 어려움이 있기 때문이다.
가설 설정
첫째, 언어의 개념이 명료해야 한다. 문법적인 구조와 그에 따른 의미가 일관성이 있으며 단순해야 한다.
여섯째, 웹 환경을 지원해야 한다. 웹은 언제 어디서나 프로그래밍 교육을 받을 수 있고 다양한 전문가에게 조언을 얻을 수 있으며, 교육자와 학습자, 학습자와 학습자, 학습자와 전문가의 상호작용이 활발하여 폭넓은 프로그래밍의 기회를 제공한다.
첫째, HanScript는 Visual Basic보다 가독성이 높을 것이다.
둘째, HanScript는 Visual Basic보다 가 작성이 높을 것이다.
셋째, HanScript는 Visual Basic보다 교정 성이 높을 것이다.
제안 방법
그리고 이를 실업계 고등학교에 적용한 후 Visual Basic과 비교 . 검증하고자 한다.
HanScript는 LL 파서 (recursive descent) 의 일종인 JavaCC를 이용하여 구현하였다. JavaCC는 2개의 실행 파일로 구성된다.
주석은 단일행 주석과(〃)과 다중행 주석 (/**/) 을 제공하며 문장의 해석을 보다 쉽게 하기 위해서 우리말의 목적격 조사에 해당되는 '을'과 '를' 을 보조 주석으로 도입하였다. 다음은 보조 주석을 사용한 예로서 출력 결과는 100이다.
실행기는 구문 트리를 탐색하면서 해쉬 테이블을 생성하고, 각 노드의 값을 평가한 후 그 결과를 출력한다. 실행기를 구성하는 주요 클래스는 <표 4>와 같다.
둘째, HanScriptFunctionVisitor 클래스는 함수선언문을 처리하며, 함수의 매개 변수를 몸체에 맞게 변수로 처리하여 벡터에 저장한다.
'컴퓨터 일반' 교과서에 포함되어 있는 Visual Basic과 본 연구자가 개발한 HanScript를 비교하기 위해 경기도에 있는 K 정보산업고등학교에서 프로그래밍 교육을 별도로 받지 않은 반 중에서 컴퓨터 관련 교과 성적이 유사한 2개 반 학생 전체를 대상으로 와 같이 방과 후에 교육을 실시하였다.
주어진 문항은 모두 주관식으로서 각 조건별로 난이도를 3단계로 구분하였으며, 하위 단계는 간단한 구문만을 사용하고, 중위 단계는 구문과 함수를 사용하였으며, 상위 단계는 구문, 함수, 입출력을 사용하였다. 또한 구문 문제는 20점, 함수 문제는 10점, 입출력 문제는 20점으로 하여 각 조건별 난이도에 따라 각각 20점, 30점, 50점으로 계산하였다.
또한 구문 문제는 20점, 함수 문제는 10점, 입출력 문제는 20점으로 하여 각 조건별 난이도에 따라 각각 20점, 30점, 50점으로 계산하였다. 그리고 프로그래밍 언어의 특징이 아닌 편집기의 도움말이나 소스 편집을 위한 편리한 기능에 의해 연구의 결과가 달라지는 것을 배제하기 위해서 실기 평가가 아닌 지필 평가를 하였다.
가독성을 평가하기 위해서 3개의 문항을 각각의 프로그래밍 언어에 따라 표현 방식만 다르게 하여 A반과 B반에 제시하였다. A반과 B반의 가독성에 대한 검증 결과는<표 8>과 같다.
가작성을 평가하기 위해서 코드를 직접 작성하는 형태의 문제를 3문항을 제작하여 A반과 B반 모두에게 똑같이 제시하였다. A반과 B반의 가작 성에 대한 검증 결과는<표 10>과 같다.
교정성을 평가하기 위해서 오류가 있는 소스 코드를 각각의 프로그래밍 언어에 따라 표현 방식만 다르게 하여 A반과 B반에 제시하였다. 그리고 제시된 소스 코드의 오류를 찾아 수정하게 하였다.
그리고 제시된 소스 코드의 오류를 찾아 수정하게 하였다. A반과 B반의 교정성에 대한 검증 결과는 <표 11>과 같다.
학생들이 작성된 프로그램을 쉽게 이해하고, 생각한 알고리즘을 쉽게 작성할 수 있도록 교육용 한글 프로그래밍 언어인 HanScript를 학교 현장에 적용하였다.
HanScript의 가독성, 가작성, 교정성을 평가하기 위해서 실업계 고등학생을 대상으로 방과 후 수업을 실시한 후 평가하여 Visual Basic과 비교. 검증하였다.
두 번째와 세 번째 반복문은 을 한 번 지정한 후을 판정해서 참이면을 실행한 후을 실행한다.
대상 데이터
연구 대상자는 A반 43명, B반 45명으로 해당반 학생 전부를 대상자로 선정하였다.
성능/효과
첫째, Visual Basic을 중심으로 한 언어 교육은 논리적 사고력 향상을 위한 알고리즘 교육보다는 마우스 클릭을 통한 빠르고 시각적인 구현을 중심으로 하고 있다. 따라서 문제 해결력과 논리적 사고의 향상에 크게 도움이 되지 못하고 있다.
셋째, Visual Basic 중심의 실습 환경은 다양한 웹 환경을 지원하지 못하고 있다. 웹은 언제 어디서나 프로그래밍 교육을 받을 수 있고 다양한 전문가에게 조언을 얻을 수 있으며, 교육자와 학습자 간의 상호작용이 활발하게 이뤄져 폭넓은 프로그래밍 기회를 제공할 수 있기 때문에 웹을 지원하는 언어가 필요하다.
첫째, 교육용 언어는 단순, 명료해야 한다. 프로그램을 코딩하였을 때 단순하고 개념이 명료하여야만 어떤 문제를 표현하고 해결하는 과정에서 혼란이 없다.
첫째, 가독성은 다른 사람이 만든 소스 코드를 쉽게 이해할 수 있음을 뜻한다. 가독성을 높이기 위해서는 변수나 함수의 이름을 한글로 표현할 수 있어야 하며 읽기 쉽도록 주석이나 보조 주석을 제공할 수 있어야 한다.
둘째, 가작성은 프로그래머가 생각한 것은 쉽게 코드로 작성할 수 있음을 뜻한다. 가 작성을 높이기 위해서 우리말을 옮기 듯이 표현할 수 있어야 하고, 풍부한 라이브러리와 편리한 편집기를 제공해야 한다.
셋째, 교정성은 프로그램의 오류를 알려주고 이를 쉽게 수정할 수 있음을 뜻한다. 교정 성을 높이기 위해서는 오류의 유형을 경고, 에러, 예외 등으로 분류하여 오류 위치와 해결 방법 등을 자세히 제 공해 야 한다.
그 이유는<표 12>와 같은 조건문에 있어서 Visual Basice 영어식 표현 방법을 사용하지만, HanScirpt는 일상적으로 사용하는 우리말식 표현 방법을 사용하므로 그 뜻을 보다 명확히 이해할 수 있고, 표기상의 오류를 보다 쉽게 찾아낼 수 있다. 즉, Visual Basic 에서 'endif'를 붙여 쓸 경우 이것을 찾지 못하는 학생이 15.6%이었지만, HanScript에서 '아니면 결과'와 같이 붙여 쓸 경우 이것을 찾지 못하는 학생이 4.7%로써 Visual Basic보다는 HanScirpt의교정성이 높게 나타났다.
검증하였다. 그 결과 HanScript는 가독성과 교정 성이 Visual Basic보다 우수하였다. 즉, 학생들이 프로그램을 쉽게 이해할 수 있었으며, 소스 코드 내의 버그를 쉽게 찾아내어 수정할 수 있었다.
이것은 소스 코드의 한글 표현 방식보다는 알고리즘에 대한 논리적 사고에 따른 영향이 보다 크게 미치기 때문이다. 따라서 HanScript로 작성된 코드가 Visual Basic으로 작성된 코드보다 이해하기 쉽고 잘못된 코드를 보다 쉽게 수정할 수 있는 것으로 검증되었다.
후속연구
본 연구에서 사용된 교육 과정은과 같이 Visual Basic과 HanScript를 비교하는데 필요한 최소한의 내용으로 제한하였다.
앞으로 HanScript에 대한 라이브러리를 다양하게 만들고 자세한 디버깅 정보를 제공해 줄 수 있는 통합 개발 환경을 제공한다면 효과적인 교육용 프로그래밍 언어가 될 수 있을 것이다. 더욱이 HanScript는 플랫폼 독립적인 Java로 작성되었기 때문에 다양한 플랫폼과 인터넷 환경을 지원할 수 있으며 원격지간의 프로그래밍 교육에도 많은 도움이 될 것이다.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.