CSC152 2006S, Class 56! Course Wrapup and Evaluations Admin: * Last-minute EC * EC Con Brio, 7 pm, Younker Lounge * EC M&8 - 10 or 10:30 in Harris * EC Dance Show 8 pm in Harris * Rant about end-of-course evalutions linked from today's page Overview: * The subject matter of the course. * Evaluations. * Final statements. Almost all the lines on the EOC say * XXX helped me learn the subject matter of this course Subject matters of this course (in categories) * Programming in Java * Control structures: Loops, Methods, Conditionals * Exceptions * Parameterized Types * Java Sucks ; Precision is key to successful programming * Eclipse * Packages * Classes, Constructors * Inheritance * Write Javadoc * Static vs. class methods and variables * ... * Object-Oriented Design * Polymorphism: One method can be applied to multiple kinds of values * Inheritance: Classes can be defined in terms of others * Encapsulation: Hide the details from others * Algorithms * Particular algorithms: * Heap sort * Quicksort * Efficient way of exponentiation * Shortest path in graphs * Binary search * Approximate string matching * Minimizing change * ... * Asymptotic Analysis * Techniques for improving running time * Dynamic programming * Design principles * Divide-and-conquer * See the first line of "Techniques for improving running time" * Rely on probability * ADTs and Data Structures * PAMI * Philosophy * Applications * Methods * Implementation * ADTs * Priority Queue * Stacks * Dictionaries * Graphs * Lists * Vectors and Arrays * ... * DSs * Heap as implementation of Priority Queues * Hash tables as implementation of dictionaries * BSTrees * DS Design Principle * Rely on probability * Link nodes together * Use a Vector * General Programming or CS Issues * It is difficult to predict code length * Strive for clarity rather than conciseness * Using the console on Linux computers (command-line stuff) * Care more about the position of an error message than the particular words (but some error messages are helpful) * Minor details count * General Thinking Skills (and Other Important Lessons) * You need to be able to think and speak on your feet * Computers are sentient and malicious * It's okay to say "I don't know" when asked a question * Some of your professors care that other things happen in your life * Ask for help; You may not get it, but ask anyway * Certain combo books are SO DAMN WRONG YOU DESERVE A REFUND * Certain professors will NEVER LEARN TO PRONOUNCE YOUR NAME * Information can be found online * Pay attention! This means you Ian and Eryn * Push yourself * Have fun! * Care about your colleagues THANK YOU, YOUR RESPONSE IS GREATLY APPRECIATED