|
![]() |
![]() |
![]() |
![]() |
|
![]() |
Introductory Programming in JavaIn the autumn of 2000, the CSE faculty officially approved a policy of converting the introductory programming courses (CSE 142 and CSE 143) to use the Java language. This decision followed more than two years of discussion and planning, including consultation with community colleges as well as various educational units within the University. The change in being made to improve the pedagogy of the introductory courses. Standard classes, a clean execution model, and a powerful memory management system allow students to understand programming at an altogether higher level of abstraction. This shift will afford us an increased focus on the concepts of programming as opposed to the details of machine-level implementation and execution. As before, our intention is to teach problem solving, and Java will help us do this better. Students will still learn many of the same concepts that they learned in 142/143 when it was taught in C/C++. The difference is that they will be less burdened by language idiosyncracies as they do so. For example, in the old 142, C's complexities forced us to give only a limited treatment of data structures, drastically skewing students' model of programming, while Java allows us to manipulate data structures throughout the quarter. As another example: object-oriented programming, today's dominant paradigm, is developed starting early in the new 142, rather than waiting until the latter half of the old 143. It is impossible to create competent programmers in a mere 10 weeks -- the best we can hope for is to give students an understanding of programming concepts, patterns, and tools with a minimum of clutter. The switch to Java will allow us to do that more effectively. Students who have learned Java will find switching to other mainstream languages such as C and C++ relatively straightforward. Planned Transition Schedule
Transition IssuesThe change in language will have a number of impacts. Students should take CSE 142 and 143 in the same language if possible, to avoid needing to make a transition between languages while in the middle of the sequence. We will work with community colleges on the transfer issues associated with the language change. As new policies and information are developed, we will update our Web information for community college instructors and students. Contact Craig Chambers (chambers@cs.washington.edu) for more information. |
![]() |
Department of Computer Science & Engineering University of Washington Box 352350 Seattle, WA 98195-2350 (206) 543-1695 voice, (206) 543-2969 FAX [comments to cse142-webmaster] |