From bill Wed Dec 19 18:07:16 2001 Date: Wed, 19 Dec 2001 18:07:13 -0500 (EST) From: Bill Moloney Message-Id: <200112192307.fBJN7Dq510350@saturn.cs.uml.edu> To: bill@cs.uml.edu, canning@cs.uml.edu, charlie@cs.uml.edu, giam@cs.uml.edu, grinstei@cs.uml.edu, gumb@cs.uml.edu, haim@cs.uml.edu, heines@cs.uml.edu, holly@cs.uml.edu, john@cs.uml.edu, kajal@cs.uml.edu, kdaniels@cs.uml.edu, kim@cs.uml.edu, lechner@cs.uml.edu, pkrolak@cs.uml.edu, tom@cs.uml.edu, wang@cs.uml.edu, williams@cs.uml.edu Subject: Re: C in the curriculum I assume in this discussion that you intend to use stream IO, and the new and delete operators in place of their functional counterparts (as opposed to eliminating IO and dynamic memory management from the C based courses). If you're introducing the C language and are constantly referencing the ideas of operators, the types of their operands and the value and types of their results, why would you possibly want to introduce operators like > and < using operands that the basic language doesn't allow, or operators like new, and delete which are not even in the basic language specification ? I don't even introduce stream IO in computing III until half way through the term; only after a thorough grounding in operator overloading and abstract data types. I simply don't believe that it's sensible to begin using stream IO components just because you claim to be introducing C++. The stdio components fit the functional paradigm we work so hard to develop in our first courses. They are familiar functions, with arguments set up by the caller and processed by the callee, and with return values delivered back to the caller. We spend much time in Computing 1, 2 and Assembly Language with the functional interface and the communication mechanisms used. I'm a believer in OOP and especially OOP with C++, but I think that introducing components which break the basic C language specification way before you're in a position to hope to explain what's going on makes little sense. These courses are supposed to provide foundation experiences. ... Bill From pm Wed Dec 19 18:51:17 2001 From: Bob Lechner Subject: Re: C in CompI-IV - I agree with Jim and Bill. To: john@cs.uml.edu (John Sieg) Date: Wed, 19 Dec 2001 18:51:13 -0500 (EST) Cc: faculty S)ubject: Re: C in CompI-IV - I agree with Jim and Bill. (until we put Java or C# first? :-) Maybe we need parallel concurrent HW and SW tracks? I suspect it would be easier to pursue two separate curriculum integration projects than one overarching one. With malloc and ptrs and printf covered in HW (the top-down RTIO side) and streams/new covered in SW (the objects-first, Design-by-Contract OOAD side). Of course, I wouldn't mind a little persistence and SQL thrown in :-) Many grad students lack knowledge about separating interface from implementation, and about Unix programming environments, which is frustrating, to say the least. BTWay, Merry Christmas and Happy New Year to all your families. I enjoy teaching OOAD even more these days, now that there's some time left over to improve my programming skills :-) Bob Lechner ------------------------------------------ > From john@cs.uml.edu Wed Dec 19 13:38:06 2001 > Subject: C in the curriculum > Date: Wed, 19 Dec 2001 13:37:51 -0500 > > Dear colleagues: > > Once again, the Undergrad. Committee is discussing the role of various > languages in Comp I-IV. One of the points of discussion is whether > the parts of C that aren't in C++ (e.g., C syntax for I/O, memory > allocation and deallocation) need to be covered. Please let me > know whether you depend on these parts of C in your upper-level courses. > > John Sieg > john@cs.uml.edu > (978)934-3625 > Olsen 227B, UMass Lowell > From pm Wed Dec 19 17:47:46 2001 From: Bob Lechner Subject: Re: migrating CS1 to Java (AP Exam starting 2003-04) - FYInfo To: faculty@tern.cs.uml.edu Ths rest of this 600 line message I saved in /usr/proj3/case/c++2javainComp1and2.011219 Bob Lechner Forwarded message: > From owner-sigcse.members@ACM.ORG Wed Dec 19 16:53:00 2001 > Message-Id: <200112192145.QAA20762@mail.acm.org> > Date: Wed, 19 Dec 2001 16:46:04 -0500 > Reply-To: "Stephen J. Hartley" > Sender: SIGCSE Member Forum > From: "Stephen J. Hartley" > Subject: Re: migrating CS1 to Java > To: SIGCSE.MEMBERS@ACM.ORG > > The following books, support software, and Web sites were recommended > in the replies. Many of the books and Web sites were recommended by > their authors. The items appear in no particular order. > > Recommended Java books for "objects early" approach > > Lewis & Loftus: Java Software Solutions > Hunt: Java for Pratitioners > Morelli: Java, Java, Java, Objected-Oriented Problem Solving > Poplawski: Objects Have Class > Winder & Roberts: Developing Java Software > Horstmann: Computing Concepts with Java 2 Essentials 2nd ed > Riley: The Object of Java > Dale, Headington & Weems: Introduction to Java and Software Design > Nino & Hosch: An Introduction to Programming and Object-Oriented Design > using Java > Wu: An Introduction to Object-Oriented Programming with Java > Mercer: Computing Fundamentals with Java > > Recommended support software > > BlueJ: http://www.bluej.org > JBuilder > > Recommended web sites > > http://www.ccs.neu.edu/teaching/EdGroup/JPT/ > http://www.cs.ucl.ac.uk/staff/G.Roberts/2000/1b11/index.html > http://www.math.uwaterloo.ca/~bwbecker/karel/index.html > http://www-cs101.ai.mit.edu/ipij > http://www.cs.williams.edu/~kim/eof/bookindex.html > http://www.cse.buffalo.edu/~alphonce/ > http://www.augustana.ca/~mohrj/courses/2001.winter/csc120/index.html > http://www.mathcs.carleton.edu/faculty/dmusican/cs117f01/ > http://www.cs.arizona.edu/classes/cs227/fall01/index.html > > Online papers > http://www.math.uwaterloo.ca/~bwbecker/papers/sigcse2001/TeachingWithJKarel.pdf > > ========================== original message =================================== > > Date: Sat, 1 Sep 2001 08:02:04 -0400 > From: "Stephen J. Hartley" > Subject: migrating CS1 to Java > To: SIGCSE.MEMBERS@ACM.ORG > > Rowan's Computer Science department has been using C++ in its CS1 course > for several years. Now that the College Board has decided to switch to > a subset of Java for the advanced placement exam in computer science, > effective with the 2003-2004 academic year, Rowan will migrate from > C++ to Java. I see this as an opportunity to place more emphasis > on object-oriented programming, object-oriented design, and software > engineering in Rowan's first programming course for computer science > majors, the "objects early" approach. > > Over the last few years, the number of Java introductory programming > text books has mushroomed, making it much harder to evaluate them and > choose an appropriate one for a Java "objects early" CS1 course. I am > soliciting experiences and advice from others teaching "objects early" > Java in their first programming course for majors, particularly text > book recommendations. I am also interested in Web pages and lists of > resources you use for this. > > Please send your responses to me and I will aggregate them for the > mailing list. If you wish your comments to be without attribution in > the summary, please let me know. > > Thanks for your help. > > Steve Hartley > > Stephen J. Hartley (856) 256-4500 ext. 3895 > Associate Professor hartley@elvis.rowan.edu > Computer Science Department > Rowan University > Glassboro, NJ 08028 > > ========================== replies ============================================ See /usr/proj3/case/c++2javainComp1and2.011219