DOI QR코드

DOI QR Code

BomBart : Web-based Programming Environment Support to Graphic User Interface

그래픽 유저 인터페이스를 지원하는 웹 기반 프로그래밍 환경 '봄밭'의 설계 및 구현

  • 천준석 (부산대학교 전기전자컴퓨터공학과/LG전자 스마트 제어 센터) ;
  • 송지원 (부산대학교 컴퓨터 및 정보통신연구소) ;
  • 우균 (LG전자 스마트 제어 센터)
  • Received : 2017.01.18
  • Accepted : 2017.02.10
  • Published : 2017.05.28

Abstract

There has been a growing interest in programming education recently. However, to use most programming languages the corresponding compiler and IDE have to be installed on computers. To tackle this issue, though there developed several web-based programming environment including Eclipse Che and JDOODLE, most of them does not support GUI nor Korean programming languages. This paper proposes a web-based programming environment called Bombart, which supports Saesark, a Korean programming language, with GUI output. It also supports a console-based input and output. To support both kinds of interfaces, two compiling subsystems are designed and implemented. To test the effectiveness of the GUI support of Bombart, all the Java tutorial codes on GUI are translated into Saesark and executed on top of Bombart. According to this test, 81.42% of codes can be successfully converted and executed.

최근 전세계적으로 프로그래밍 교육에 대한 관심이 증가하고 있다. 하지만 대부분의 언어는 컴파일러와 통합 개발 환경을 컴퓨터에 설치하여야만 사용할 수 있는 문제가 있다. 이를 해결하기 위해 Eclipse Che나 JDOODLE과 같은 웹 기반 프로그래밍 환경이 다수 개발되었지만 대부분이 GUI 프로그래밍을 지원하지 않고, 특히 한글 프로그래밍 언어는 지원하지 않는다. 이 논문에서는 '봄밭'이라고 하는 웹 기반 프로그래밍 환경을 제안한다. 봄밭은 한글 프로그래밍 언어인 새싹을 지원하고, GUI 프로그래밍도 지원한다. 콘솔 기반의 입출력 또한 지원한다. 콘솔 및 GUI 인터페이스를 모두 지원하기 위해서 봄밭에는 두 개의 서브 컴파일 시스템을 설계하고 구현하였다. 우리는 봄밭의 GUI 지원의 성능을 측정하기 위해서 Java의 모든 GUI 튜토리얼 코드를 새싹으로 변환하여 봄밭에서 실행해 보았다. 그 결과, 81.42%의 코드를 정상적으로 실행할 수 있는 것을 확인하였다.

Keywords

References

  1. 교육부 홍보담당관, 소프트웨어 교육 활성화기본계획 발표 - 초.중등 SW교육 필수화 준비 및 학교 중심의 SW교육 추진 -, 교육부, 2016.
  2. T. Gaikwad, P. Dhavale, K. Gaware, and N. Shivale, "Web Based IDE," IJRIT International Journal of Research in Information Technology, Vol.2, No.4, pp.616-620, 2014.
  3. http://www.eclipse.org/che/
  4. http://www.fixoncloud.com/Home/compiler/
  5. https://www.jdoodle.com/
  6. 김영택, 김종상, 이석호, 조유근, 권혁철, "한글프로그래밍 언어 설계에 관한 연구," 정보과학회논문지, 제11권, 제2호, pp.81-101, 1984.
  7. 천준석, 강도훈, 김건우, 우균, "간결한 한글 프로그래밍 언어 '새싹'," 한국정보과학회논문지, 제42권, 제4호, pp.496-503, 2015.
  8. 천준석, 우균, "새싹: 초보자를 위한 한글 객체지향 프로그래밍 언어," 한국콘텐츠학회논문지, 제16권, 제3호, pp.288-295, 2016. https://doi.org/10.5392/JKCA.2016.16.03.288
  9. 임진희, 씨앗은 C가 아닙니다, 성안당, 1995.
  10. http://waagle.org/
  11. https://playentry.org/
  12. http://yaksok.org/
  13. http://www.oracle.com/technetwork/java/applets-137637.html
  14. http://tomcat.apache.org/
  15. https://github.com/eligrey/FileSaver.js/
  16. https://codemirror.net/
  17. https://docs.oracle.com/javase/tutorial/