Apprenticeship in Undergraduate Java Programming
نویسنده
چکیده
Even the best textbooks for Java programming have one substantial deficiency. They use small, isolated programming examples and throw-away lab exercises that do almost nothing to convey the situated application of object-oriented language constructs. An alternative approach is to embed Java programming assignments as encapsulated modules in an extensible application framework built up across semesters and several courses, with instructors serving as lead analysts and architects. Taking its cues from professional software engineering practices, as well as the educational practices of situated learning, cognitive apprenticeships and microworlds, this approach has the fundamental goal of embedding the introduction to Java programming in a realistic software and social environment from which students can learn via reading, observation, incremental exploration, interaction and deployment of their creations, in addition to the writing and testing of code. Students get a feeling for the categories of work and types of problems they will encounter in supporting and extending professional software frameworks created initially by others. They learn to apply objectoriented constructs by the end of a semester, and they may perform more sophisticated engineering on their software framework in subsequent courses. This paper reports the successful results and pitfalls of applying this approach.
منابع مشابه
The UIUC Virtual Spectrometer: A Java-Based Collaborative Learning Environment
The development of the UIUC Virtual Spectrometer (UIUC-VS), an interactive, Java-based simulation and tutoring system, is discussed. The apprenticeship model of learning is utilized to create a learning environment for the study of a one-dimensional proton nuclear magnetic resonance (NMR) experiment, with the goal of linking theoretical knowledge with practical operational experience. Active, e...
متن کاملSupporting Apprenticeship Learning of NMR Spectroscopy in a Collaborative, Web-Based Learning Environment
The development of the UIUC Virtual Spectrometer (UIUC-VS), an interactive, Java-based simulation and tutoring system, is discussed. The system utilizes the apprenticeship model of learning to create a learning environment for the study of a one-proton nuclear resonant magnetic (NMR) experiment. The development of a learning environment is driven by the goal of linking theoretical knowledge wit...
متن کاملAn Environment for Self-Assessing Java Programming Skills in Undergraduate First Programming Courses
In this paper we propose a new environment for allowing students of a first programming undergraduate course to test their Java code. This environment allows the student to learn the basics of the Java language without necessarily knowing the object-oriented features of the language itself, and the teacher to propose new tests by making use of a graphical test editor. Moreover, the client-serve...
متن کاملThe Effect of Changing Programming Language to Student Success in Undergraduate Computer Science Curriculum
. We measure and compare the effects of changing the programming language in introductory level courses (Computer Science I and II) in undergraduate Computer Science (CS) curriculum. The study presents the example of University of Texas at Dallas (UTD) case, where we present the results of two approaches: Approach 1 where both CS I and CS II courses are taught in Java, and Aprroach 2 where CS I...
متن کاملMedical education ± beyond tomorrow ?
Against a background of the theoretical basis for the contextual approach to medical education, this paper examines and supports the changes that are occurring in undergraduate medical education throughout the world, before putting up for discussion the suggestion that the changes have not gone far enough. Consideration is given to a model of apprenticeship learning within undergraduate medical...
متن کامل