Among Computer Science educators, hardly any topic inspires more heated debate than the choice of programming language in the introductory sequence. In the late 80s, the uniformly accepted choice was Pascal, but since then, a host of alternatives have come into use. C++ seems to have emerged as the winner, while Pascal, C, Ada, Scheme, and Modula-3 split most of the remaining market.
There appear to be two overriding reasons for C++’s emergence. First, principles such as encapsulation and information hiding, that are important to teach in the CS I/II curriculum, are easily demonstrated in C++. Much of the ugliness associated with C is easily avoided in C++ by the use of a tiny set of classes: About all that is needed is a String and Vector class. Second, C++ has become an industry standard (even though C++ is itself not yet standardized). Many universities are finding that they must teach C++ at some point, and given limitations on the number of courses that can be offered, they are finding it most convenient to teach it early. C++, however, has its share of problems; some of these problems will be discussed later. Java is the new alternative to C++. It can be presented as a simpler C++ that fixes many of C++’s bad features and provides a primitive, but useful, GUI toolkit. One argument for teaching Java early is that it is better to use an alreadydefined language rather than attempt to subset a complex language. While C++ is arguably the most complex language ever to be widely adopted, it appears that Java is easily the most hyped language.
The Data Structures course at our University is a bit unusual. The vast majority of our students are upper-level transfers from community college. As a result, most come to us with much of their non-CS courses complete, and have taken an introductory programming course, typically in Pascal. The first course taken at XXX is formally entitled Intermediate Programming. It is taught somewhere between CS-1 and CS-2; we call it CS-1.5. Since 1990, the course has been taught in Ada. Data Structures follows Intermediate Programming. However, we also offer a course called Advanced Programming; it discusses C, C++, and object-oriented concepts.
Download pdf Experiences Teaching Data Structures With Java
Related Searches: introductory programming course, computer science educators, data structures with java, hyped language, vector class
RSS feed for comments on this post · TrackBack URI
Leave a reply