$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

비전공자를 위한 교육용 프로그래밍 언어의 비교 연구: 프로그래밍 언어 설계 원칙의 관점으로
A Comparative Study of Educational Programming Languages for Non-majors Students: from the Viewpoint of Programming Language Design Principles 원문보기 논문타임라인

컴퓨터교육학회논문지 = The Journal of Korean Association of Computer Education, v.22 no.1, 2019년, pp.47 - 61  

김영민 (중앙대학교 다빈치교양대학) ,  이민정 (중앙대학교 다빈치교양대학)

초록
AI-Helper 아이콘AI-Helper

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

Abstract AI-Helper 아이콘AI-Helper

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 b...

주제어

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

문제 정의

  • 특히 단순 조건식에서 ‘~이고’, ‘또는’, ‘아니다’와 같은 관계 연산자를 활용하여 좀 더 복잡하고 풍부한 연산식을 구성할 수 있게 된다. 6주차와 7주차에는 앞에서 다룬 조건식과 반복하고자 하는 패턴을 도출하여 조건에 의한 반복문을 구현하는 것을 목표로 하였다. 이를 위해 1과 100 사이의 짝수 혹은 홀수의 개수를 세는 예제와 가위바위보 게임 예제를 통해 특정 조건에 의해 일련의 동작을 반복하는 개념을 익히도록 하였다.
  • 본 연구에서는 비전공자를 포함한 초보자를 위한 교육용 프로그래밍 언어들을 컴퓨터 과학의 프로그 래밍 언어론 관점에서 그 특징과 차이를 고찰함으로써 교육용 프로그래밍 언어 자체에 내재된 특징을 분석하고자 하였다. 교육용 프로그래밍 언어의 특징을 분석하기 위해 컴퓨터 과학에서 정의하는 프로그래밍 언어의 설계 원칙 중 간결성과 일반성을 준용하는 문법적 요소들을 도출하였다.
  • 본 연구에서는 프로그래밍 기초교육용 프로그래밍 언어를 프로그래밍 언어 설계원칙의 일반성, 간결성 측면에서 비교한다. 비교를 진행하기에 앞서 프로그래밍 언어의 문법적 측면에서 7가지 요소를 도출하였다.
  • 이와 같은 비주얼 프로그래밍 언어로는 스크래치와 앱인벤터, 다이어그래밍 언어로는 랩터와 플로우고리즘 (flowgorithm)이 있다. 본 연구에서는 프로그래밍 기초교육을 위한 프로그래밍 언어를 프로그래밍 언어의 설계원칙 관점에서 비교한다[23].
  • 본 연구에서는 프로그래밍 기초학습에서 사용하는 비주얼 프로그래밍과 다이어그래밍 언어를 프로 그래밍 언어의 설계 관점에서 비교 및 분석하였다. 프로그래밍 언어 간 차이를 보이는 7가지 문법요소를 도출하였으며, 이를 기반으로 간결성, 일반성, 효율성 측면에서 비교 수행하였다.
  • 만약, 분석 결과 평균 값이 서로 유사한 수준이라면 스크래치와 랩터 모두 학습자의 프로그래밍 역량을 유사한 수준에서 배양한다고 볼 수 있다. 여기에 덧붙여 프로그래밍 언어의 설계 원칙에 따라 도출한 프로그래밍 언어의 문법요소 별로 학습자 A그룹과 B그룹의 성취도에 차이가 있는지 살펴본다. 만약 전체 평균은 유사하나 항목별 성취도에서 차이가 있다면 이로부터 대상이 되었던 프로그래밍 언어의 고유한 특징을 도출한다.
  • 프로그래밍 기초교육에 활용되는 프로그래밍 언어가 앞서 도출된 문법요소를 지원하는지 살펴본 다. <표 3>는 스크래치, 앱인벤터, 랩터, 플로우고리즘에서 어떤 문법요소를 지원하고 있는지에 대한 결과를 보여준다.
본문요약 정보가 도움이 되었나요?

질의응답

핵심어 질문 논문에서 추출한 답변
SW의 역할은 무엇인가? 4차 산업혁명 시대를 주도할 미래 인재 양성을 위해 SW 교육이 중요하게 자리매김하고 있다[1]. SW는 사회 모든 분야에서 새로운 가치를 창출할수 있는 혁신의 기반이 되며 산업 간 벽을 허물어 이종 산업을 융합할 수 있는 결합체 역할을 할 수있다. 사회의 다양한 분야에서 응용 프로그램의 활용 능력뿐만 아니라 SW의 개념과 동작을 이해하고 직접 개발할 수 있는 SW 역량을 강조하는 이유이다[2][3].
교육용 프로그래밍 언어는 무엇인가? 초보자를 대상으로 하는 프로그래밍 교육은 실제 적인 문제해결에 주력하기 보다는 학습을 통해 논리적 사고력, 문제해결력 등의 고등 사고력 신장이 목적이라는 점에서 고급 프로그래밍 언어를 통한 교육의 한계점을 극복하기 위해 교육용 프로그래밍 언어가 등장하였다. 교육용 프로그래밍 언어는 문법 암기에서 벗어나, 자신의 생각을 블록이나 간단한 스크립트로 표현하여 프로그래밍할 수 있게 하는 언어이다. 국내에서는 스크래치(Scratch), 엔트 리(Entry), 두리틀(DoLittle), 앱인벤터(App Inventor), 로고(Logo) 등을 활용하고 있으며 다양한 교과와 연계한 융합 교육에도 적용하고 있다 [9][15].
SW 기반의 문제해결 역량이 강조되는 분위기에 대학에서의 추세는 어떠한가? SW 중심사회가 도래하면서 사회 모든 분야에서 SW 기반의 문제해결 역량이 강조되고 있다. 대학에서도 비전공자를 위한 SW 기초교육을 의무화하고 프로그래밍 교육을 진행하는 추세이다. 본 연구는 프로그래밍 언어의 설계 원칙 중 간결성과 일반성을 수용하는 문법요소를 도출하고 이를 기반으로 비주얼 프로그래밍 언어(스크래치, 앱인벤터)와 다이어그래밍 언어(랩터, 플로우고리즘)를 비교 분석하였다.
질의응답 정보가 도움이 되었나요?

참고문헌 (25)

  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. 

  3. Alfred V. Aho. (2012). Computation and computational thinking, Computer Journal, 55(7), 832-835. 

  4. 김수환 (2015). Computational Thinking 증진을 위한 학습자 중심의 교수학습 전략의 효과. 정보교육학회논문지, 18(3), 323-332. 

  5. 최현종 (2011). 대학프로그래밍 강좌를 위한 프로그래밍 교육 프레임워크. 컴퓨터교육학회논문지, 14(1), 69-79. 

  6. 김수환 (2015). Computational Thinking 교육에서 나타난 컴퓨터 비전공 학습자들의 어려움 분석. 컴퓨터교육학회논문지, 18(3), 49-57. 

  7. 김민자.김현철 (2018). 컴퓨팅 사고력 관점에서 본 컴퓨터 비전공자 대상 교양 컴퓨팅 수업의 효과성 분석 연구. 컴퓨터교육학회논문지, 21(1), 11-21. 

  8. 홍성권.최정원.이영준 (2014). 초등학생의 게임 프로그래밍 경험이 자기효능감에 미치는 영향. 교원교육, 30(3), 197-215. 

  9. 유정수.이민희 (2009). 두리틀을 이용한 로그래 수업이 창의성, 문제해결력, 프로그래밍 흥미도 향상에 미치는 영향. 정보교육학회논문지, 13(4), 443-450. 

  10. 송정범.조성환.이태욱 (2008). 메타인지 전략을 활용한 게임 프로그래밍 학습이 초등학생의 문제해결력에 미치는 효과. 교원교육, 24(4), 432-447. 

  11. 정웅열.이은경.이영준 (2009). 전문계 고등학교 학습자의 동기 유발 지속을 위한 프로그래밍 교수 학습 모형. 컴퓨터교육학회논문지, 12(4), 13-21. 

  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. 

  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. 

  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. 

  25. 이우숙.박선환.최은영 (2008). 성인의 문제해결 과정 측정도구 개발. 기본간호학회지, 15(4), 548-557. 

저자의 다른 논문 :

관련 콘텐츠

오픈액세스(OA) 유형

BRONZE

출판사/학술단체 등이 한시적으로 특별한 프로모션 또는 일정기간 경과 후 접근을 허용하여, 출판사/학술단체 등의 사이트에서 이용 가능한 논문

저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로