Experiences in Bridging from Functional to Object-Oriented Programming

被引:5
|
作者
Santos, Igor Moreno [1 ]
Hauswirth, Matthias [1 ]
Nystrom, Nathaniel [1 ]
机构
[1] USI, Fac Informat, Lugano, Switzerland
关键词
functional programming; object-oriented programming; prior knowledge;
D O I
10.1145/3358711.3361628
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Understanding how students' prior knowledge affects their learning of new concepts is essential for effective teaching. The same learning activity, or the same explanation, may have very different effects on students with different prior knowledge. In the context of teaching programming, prior knowledge includes the programming languages students studied in prior courses. In this experience report we describe our observations in teaching object-oriented programming in Java to students who previously learned functional programming in Racket's student languages. We highlight four concrete problems we encountered in teaching the second course in this sequence. We detected and addressed these problems primarily thanks to a teaching assistant who assisted in both of the courses. This experience made us realize the importance of explicitly bridging between languages in introductory programming course sequences. It also showed that the sharing of teaching staff across courses can be an effective way to detect aspects that need bridging.
引用
收藏
页码:36 / 40
页数:5
相关论文
共 50 条
  • [1] Object-Oriented Programming, Functional Programming and R
    Chambers, John M.
    [J]. STATISTICAL SCIENCE, 2014, 29 (02) : 167 - 180
  • [2] A Tutorial on Object-Oriented Functional Programming
    Pop, Horia F.
    [J]. CENTRAL EUROPEAN FUNCTIONAL PROGRAMMING SCHOOL, 2008, 5161 : 228 - 249
  • [3] BRIDGING THE GAP BETWEEN OBJECT-ORIENTED AND LOGIC PROGRAMMING
    KOSCHMANN, T
    EVENS, MW
    [J]. IEEE SOFTWARE, 1988, 5 (04) : 36 - 42
  • [4] CLOS - INTEGRATING OBJECT-ORIENTED AND FUNCTIONAL PROGRAMMING
    GABRIEL, RP
    WHITE, JL
    BOBROW, DG
    [J]. COMMUNICATIONS OF THE ACM, 1991, 34 (09) : 28 - 38
  • [5] Unifying Functional and Object-Oriented Programming with Scala
    Odersky, Martin
    Rompf, Tiark
    [J]. COMMUNICATIONS OF THE ACM, 2014, 57 (04) : 76 - 86
  • [6] Object-oriented functional programming and type reconstruction
    Qian, ZY
    KriegBruckner, B
    [J]. RECENT TRENDS IN DATA TYPE SPECIFICATION, 1996, 1130 : 458 - 477
  • [7] Comparative analysis of functional and object-oriented programming
    Alic, Dino
    Omanovic, Samir
    Giedrimas, Vaidas
    [J]. 2016 39TH INTERNATIONAL CONVENTION ON INFORMATION AND COMMUNICATION TECHNOLOGY, ELECTRONICS AND MICROELECTRONICS (MIPRO), 2016, : 667 - 672
  • [8] MAINTENANCE AS CHALLENGE OR LIMITATION - SOME EXPERIENCES FROM OBJECT-ORIENTED PROGRAMMING
    LEHNER, F
    SIKORA, H
    [J]. INFORMATION PROCESSING '94, VOL II: APPLICATIONS AND IMPACTS, 1994, 52 : 168 - 173
  • [9] OBJECT-ORIENTED PROGRAMMING WITHOUT AN OBJECT-ORIENTED LANGUAGE
    BOOCH, G
    SEIDEWITZ, E
    START, M
    FIRESMITH, D
    [J]. SIGPLAN NOTICES, 1986, 21 (11): : 508 - 508
  • [10] FROM STRUCTURED TO OBJECT-ORIENTED PROGRAMMING
    Krushkov, Hristo
    [J]. MATHEMATICS AND INFORMATICS, 2016, 59 (04): : 416 - 431