2/29/12 CSC 170 1/3www.augsburg.edu/home/compsci/crockett/170/ Meetings: 4-14 4-28 5-12 5-19 6-2 6-9 6-23 Description CSC 170 Introduction to Programming: A study of problem-solving, algorithm development, and programming using a high-level programming language. Narrative This is the second course in the computer science sequence and provides an introduction to programming in an object-oriented environment (OOP), in this case, the widely used language Java. Object-oriented programming is a dramatically new approach to programming that emphasizes objects and communication between objects as the way to solve problems, in contrast with the older approach. Instructor Larry Crockett (Ph.D., Minnesota) is Professor of Computer Science and directed the Honors Program for 16 years. He is also an avid motorcyclist and musician. Office: Sverdrup 203b; Office phone: 612-330-1060; Email: crockett@augsburg.edu. Course Requirements 1. Attendance and class participation: 20%. You are required to be at both plenary and lab sessions and to be active during class. Two absences can result in a grade reduction. You cannot pass the course if you miss three or more meetings. 2. Homeworks: 40% of the grade. Assignments should be read ahead of time. Homeworks, printed and stapled, are due before the day is over, which means you have time to work on problems that you did not successfully complete on your own. No late homeworks accepted, but the lowest homework will be dropped. 3. Quizzes: 40% of the grade. Each quiz is worth up to 20 points. There are no makeups, but the lowest quiz score will be dropped. Quizzes will be at 3:30 during the Lab time, after individual tutoriing time 1:15-3:15, except for the final quiz, which will be at 1 pm. Course Text Deitel and Deitel, Java: How to Program (9th edition). Earlier editions should work all right and are cheaper. Geraci, Apocalyptic AI: Visions of Heaven in Robotics, Artificial Intelligence, and Virtual Reality (Oxford University Press). This is our "fun text" for the term; used versions available. Java Glossary Date Topic, Reading, Resources (Please read text before class) Due, Activity 2/29/12 CSC 170 2/3www.augsburg.edu/home/compsci/crockett/170/ April 14 Introduction to Computers Object-Oriented Programming and Java Applications Deitel Chs. 1-2 Computing Overview; Class 1 Deitel Overhead; Java and the Internet Essay Question: What is the relation between networking and programming? 3 pages. April 28 Classes, Objects, Methods and Strings; Control Statements (First Pass) Deitel Class 2 Deitel(ch. 3); Class 2 Deitel (ch. 4) Exercises: 3.5-3.15 pages 100-101 and 4.10, 4.15, 4.17, and 4.21. Chs. 1-4, 20 items, multiple choice. 3:30 pm. May 12 Control Statements (Second Pass) Methods Deitel Class 3 Deitel (ch. 5); Class 3 Deitel (ch. 6) Program 3 (based on ch. 3) Program 4 (based on ch. 4) Deitel 5.12, 5.14 and 5.16 or make the PrimeNumber program fully OOP with the imperative part in a separate file and the user being able to specify the range of prime numbers to calculate, as in "100 to 500". Chs. 5-6, 20 items, multiple choice. May 19 Arrays, ArrayLists A Deeper Look at Classes and Objects Deitel Arrays (ch. 7); Classes and Objects (ch. 8) Program 5 (based on ch. 5) Program 6 (based on ch. 6) Java Arrays Homework (based on ch. 7) Chs. 7-8, 20 items, multiple choice. 3:30 pm. June 2 Object-Oriented Programming (Second Pass) Exception Handling Inheritance; Polymorphism Deitel Chs. 9.1-9.5; 10.1-10.4; 11.1-11.5 Bar Chart Homework Overloaded Rectangles Homework Sections for this day, 20 items, multiple choice. 3:30 pm. 2/29/12 CSC 170 3/3www.augsburg.edu/home/compsci/crockett/170/ June 9 GUIs, Graphs and 2D Programming Strings and Characters Deitel Chs. 14.1-14.11; 15; 16.1-16.4. Extending Java.Lang.Object Bulking Up the PolyMorphicAnimal Sections for this day, 20 items, multiple choice. 3:30 pm. June 23 Artificial Intelligence Geraci (entire). Components and Containers AugFrame ; 3-page essay: "Has Geraci Made His Case?" Comprehensive, 20 items, multiple choice. 1 pm.