DOI QR코드

DOI QR Code

A Comparative Study of Educational Programming Languages for Non-majors Students: from the Viewpoint of Programming Language Design Principles

비전공자를 위한 교육용 프로그래밍 언어의 비교 연구: 프로그래밍 언어 설계 원칙의 관점으로

  • 김영민 (중앙대학교 다빈치교양대학) ;
  • 이민정 (중앙대학교 다빈치교양대학)
  • Received : 2018.11.12
  • Accepted : 2018.12.27
  • Published : 2019.01.31

Abstract

As the SW-centered society has emerged, SW-based problem-solving capabilities is emphasized in all areas of society. It is a trend that universities are obliged to do SW basic education for non-majors students and they are carrying out programming education. This study derives grammatical elements based on conciseness, generality, and efficiency among the design principles of programming language and based on it, compares and analyzes visual programming language and diagramming language. As a result, the efficiency of Raptor is more powerful than Scratch in the simplicity and generality, and the same tendency can be confirmed in the result of the learner's obtained in programming lesson. We hope that this study will contribute to the design and implementation of programming education based on features of programming language.

SW 중심사회가 도래하면서 사회 모든 분야에서 SW 기반의 문제해결 역량이 강조되고 있다. 대학에서도 비전공자를 위한 SW 기초교육을 의무화하고 프로그래밍 교육을 진행하는 추세이다. 본 연구는 프로그래밍 언어의 설계 원칙 중 간결성과 일반성을 수용하는 문법요소를 도출하고 이를 기반으로 비주얼 프로그래밍 언어(스크래치, 앱인벤터)와 다이어그래밍 언어(랩터, 플로우고리즘)를 비교 분석하였다. 그 결과 간 결성과 일반성에 있어 랩터의 표현력과 효율성이 스크래치보다 우세한 것으로 분석되었으며 학습자의 결과물을 통해 이를 확인하였다. 본 연구를 통해 프로그래밍 언어의 특징에 기반한 프로그래밍 기초교육의 설계와 구현에 기여할 것으로 기대한다.

Keywords

References

  1. 교육부 (2015). 소프트웨어 운영 지침.
  2. Gorman, H. Bourn, L. E. (1983). Learning to think by learning LOGO: Rule learning in third-grade computer programmers, Bulletin of the Psychonomic Society, 21(3), 165-167. https://doi.org/10.3758/BF03334676
  3. Alfred V. Aho. (2012). Computation and computational thinking, Computer Journal, 55(7), 832-835. https://doi.org/10.1093/comjnl/bxs074
  4. 김수환 (2015). Computational Thinking 증진을 위한 학습자 중심의 교수학습 전략의 효과. 정보교육학회논문지, 18(3), 323-332.
  5. 최현종 (2011). 대학프로그래밍 강좌를 위한 프로그래밍 교육 프레임워크. 컴퓨터교육학회논문지, 14(1), 69-79. https://doi.org/10.32431/KACE.2011.14.1.007
  6. 김수환 (2015). Computational Thinking 교육에서 나타난 컴퓨터 비전공 학습자들의 어려움 분석. 컴퓨터교육학회논문지, 18(3), 49-57. https://doi.org/10.32431/KACE.2015.18.3.005
  7. 김민자.김현철 (2018). 컴퓨팅 사고력 관점에서 본 컴퓨터 비전공자 대상 교양 컴퓨팅 수업의 효과성 분석 연구. 컴퓨터교육학회논문지, 21(1), 11-21. https://doi.org/10.32431/KACE.2018.21.1.002
  8. 홍성권.최정원.이영준 (2014). 초등학생의 게임 프로그래밍 경험이 자기효능감에 미치는 영향. 교원교육, 30(3), 197-215.
  9. 유정수.이민희 (2009). 두리틀을 이용한 로그래 수업이 창의성, 문제해결력, 프로그래밍 흥미도 향상에 미치는 영향. 정보교육학회논문지, 13(4), 443-450.
  10. 송정범.조성환.이태욱 (2008). 메타인지 전략을 활용한 게임 프로그래밍 학습이 초등학생의 문제해결력에 미치는 효과. 교원교육, 24(4), 432-447.
  11. 정웅열.이은경.이영준 (2009). 전문계 고등학교 학습자의 동기 유발 지속을 위한 프로그래밍 교수 학습 모형. 컴퓨터교육학회논문지, 12(4), 13-21. https://doi.org/10.32431/KACE.2009.12.4.002
  12. Kanis C., Somkiat W. (2006). Visual Programming using Flowchart, International Symposium on Communications and Information Technologies, 1062-1065.
  13. Crews, T., Ziegler, U. (1998). The flowchart interpreter for introductory programming courses. In Frontiers in Education Conference, FIE'98. 28(1), 307-312.
  14. Giordano, D., Maiorana, F. (2015). Teaching algorithms: Visual language vs flowchart vs textual language. Global Engineering Education Conference (EDUCON), 499-504.
  15. 안성진.서영민.이영준 (2012). 교육용 프로그래밍 언어 연구 동향", 한국컴퓨터정보학회 학술발표논문집, 20(1), 139-142.
  16. 최정원.이영준 (2014). 프로그래밍 학습에서 학습자의 어려움 분석. 컴퓨터교육학회논문지, 17(5), 89-98. https://doi.org/10.32431/KACE.2014.17.5.009
  17. Piteira, M., & Costa, C. (2013). Learning computer programming: study of difficulties in learning programming. In Proceedings of the 2013 International Conference on Information Systems and Design of Communication, Lisboa. ACM
  18. Barker, L. J., McDowell, C., Kalahar, K. (2009) Exploring factors that influence computer science introductory course students to persist in the major. In ACM SIGCSE Bulletin, 41(1), 153-157. https://doi.org/10.1145/1539024.1508923
  19. Bennedsen, J., Caspersen, M. E., Kolling, M. (Eds.) (2008). Reflections on the teaching of programming: Methods and implementations (Vol. 4821). Springer.
  20. Kazimoglu, C., Kiernan, M., Bacon, L., Mackinnon, L. (2010). Developing a game model for computational thinking and learning traditional programming through game-play. In: Proceedings of the World Conference on E-learning in Corporate, Government, Healthcare and Higher Education 2010. AACE. 1378-1386.
  21. Tsukamoto, H., Takemura, Y., Oomori, Y., Ikeda, I., Nagumo, H., Monden, A., Matsumoto, K. I. (2016). Textual vs. visual programming languages in programming education for primary schoolchildren. In Frontiers in Education Conference (FIE), 1-7.
  22. Noone, M., Mooney, A. (2017). First Programming Language: Visual or Textual?. arXiv preprint arXiv:1710.11557.
  23. Robert, W. S. (2018). Concepts of programming languages. Pearson.
  24. Kwon, D., Yoon, I., Lee, W. (2011). Design of programming learning process using hybrid programming environment for computing education. KSII Transaction on Internet and Information Systems, 5(10), 1799-1813. https://doi.org/10.3837/tiis.2011.10.007
  25. 이우숙.박선환.최은영 (2008). 성인의 문제해결 과정 측정도구 개발. 기본간호학회지, 15(4), 548-557.

Cited by

  1. 알고리즘적 사고 중심 프로그래밍 활동을 위한 교육용 텐저블 코딩 도구 개발 vol.22, pp.6, 2019, https://doi.org/10.32431/kace.2019.22.6.002
  2. 비전공자 소프트웨어 기초교육을 위한 프로그래밍 언어 결정에 관한 연구 vol.28, pp.4, 2019, https://doi.org/10.5859/kais.2019.28.4.403
  3. EXCEL VBA를 이용한 컴퓨팅 사고력 교육 모델에 대한 학습자의 인식 연구 vol.23, pp.2, 2020, https://doi.org/10.32431/kace.2020.23.2.005
  4. 비전공자 대상 기초 프로그래밍 교육을 위한 절차의 언폴딩 모델 개발 vol.23, pp.4, 2020, https://doi.org/10.32431/kace.2020.23.4.004
  5. 프로그래밍 언어의 조절효과 및 학습자의 학습특성과 성취도와의 관계 분석 vol.19, pp.4, 2021, https://doi.org/10.14400/jdc.2021.19.4.049