The Impacts of Examples On the Learning Process of Programming Languages

예제가 프로그래밍 언어의 학습과정에 미치는 영향

  • 김진수 (연세대학교 인지과학 협동과정) ;
  • 김진우 (연세대학교 인지과학 협동과정)
  • Published : 2000.06.01

Abstract

Learning by examples has proven to be an efficient method in mastering various subjects including programming languages. This study hypothesizes that the number of examples and the type of examples are two significant dimensions that influence the performance of learning programming languages by examples. A set of experiments was conducted to investigate the impacts of the two dimensions in the domain of JAVA programming. The results showed that providing two examples is more effective than providing only one example even though significantly more explanations are attached to the single example. Among the 'two-example' groups, the group that was given functionally similar examples performed better than those with functionally dissimilar examples. Explanations for these results are provided in this paper based on the behavioral patterns of individual subjects in terms of time and frequency. This paper concludes with the implications of the study results for the development of effective tutoring systems for programming languages.

예제에 의한 학습은 프로그래밍 언어를 포함한 다양한 주제들을 숙지하는데 효과적인 방법으로 밝혀져 왔다. 그러나 어떤 예제를 어떻게 제공하는 것이 바람직한가에 대한 보다 심층적인 연구는 많지 않다. 본 연구는 예제가 제시되는 방식과 제시되는 예제의 형태가 예제에 의한 프로그래밍 언어의 학습 성과에 영향을 미치는 두 가지 중요한 차원이라는 가설을 세웠다. 이 가설들을 자바 프로그래밍 언어의 학습 과정을 통하여 검증하기 위하여 컴퓨터 상에서 실험을 실시하였다. 예제의 제시 방식에서는 두 종류의 예제들을 부가적 설명 없이 제공하는 것이 부가적 설명과 함께 하나의 예제를 제공하는 것보다 더 효과적이라는 결과를 얻었다. 예제의 형태에서는 두 종류의 예제를 제공받았더라고 두 예제가 주어진 과제와 기능적으로 유사한 경우가 기능적으로 상이한 경우보다 더 나은 수행 결과를 나타냈다. 이와 같은 수행 결과의 차이에 대한 이유를 밝히기 위해 개별 피험자들의 프로그래밍 행동의 유형을 시간과 빈도의 관점에서 분석하였으며 또한 피험자들의 행위에 대한 보다 체계적인 설명을 위하여 GOMS 모델을 제시하였다. 결론적으로, 본 연구의 결과들은 프로그래밍 언어를 효과적으로 지도할 수 있는 교육 시스템 개발에 기여할 수 있을 것으로 기대된다.

Keywords

References

  1. The Psychology of Human-Computer Interaction Card, S. K.;Moran, T. P.;Newell, A.
  2. cognitive psychology v.15 Schema Induction and Analogical Transfer. Gick, M. L.;Holyoak, K. J.
  3. Int. J. Man-Machine Studies v.39 Supporting command reuse: mechanisms for reuse Greenberg, S.;Witten, I. H.
  4. Just JAVA Linden, P.
  5. Proceeding of CHI' 86 Conference on Human Factors in Computing Systems(Boston, April 13-17) Visual Programming, Programming by Example, and Program Visualization: A Taxonomy Myers, B. A.
  6. CHI '89 Proceedings A System for ExampleBased Programming Neal, L. R.
  7. Things that make us smart: defending human attributes in the age of the machine Norman, D. A.
  8. Journal of Experimental Psychology v.14 no.3 Analogical Transfer Problem Similarity, and Expertise Novick, L. R.
  9. Learning strategies and transfer in the domain of programming v.12 Pirolli, P.;Recker, M.
  10. Empirical Studies of Programming Analysis the high frequency bugs in novice programs Spohrer, J. C.;Soloway, E.;Soloway, E.(ed.);Iyengar, S.(ed.)
  11. Models of Thought v.II Learning Mathematics from Examples and by Doing Zhu, Xinmin;Simon, H. A.;Simon, H. A.(ed.)
  12. Similarity and Analogical Reasoning Vosniadou, S.(ed.);Ortpny, A.(ed.)