Download presentation
Presentation is loading. Please wait.
1
Objects and Design Summer 2002
Introduction to CS2340 Objects and Design Summer 2002
2
This Semester Instructor: Barbara Ericson,
3
Books this Semester Required Text Optional
Guzdial: Squeak: Object-oriented design with multimedia applications Optional Goldberg & Robson: Smalltalk-80: The Language (“Purple Book”) - Addison-Wesley Guzdial & Rose (Eds): Squeak, Open Personal Computing and Multimedia
4
Content of Class Focus on OOA, OOD, OOP
OOA: CRC Cards OOD: UML Class Diagrams OOP: Squeak User interfaces: Building, design, evaluation Cap of languages focus (follow-on to Languages and Translation)
5
Structure of Class You have a major, team-based project
Summer 2002: Build an objects-based drawing editor with ability to output and input a subset of Postscript Lectures are here to provide you with theory, examples, issues BUT DO COME! Huge differences in grades…
6
Grading Policy 25% Midterm 10% Quizzes (3) 30% Final
In-class, open-book, minutes 30% Final 35% Project Assignments (5 of them)
7
Resources CoWeb: http://coweb.cc.gatech.edu/cs2340/
Newsgroup: git.cc.class.2340 TAs hang out there No guarantee of 24-hour coverage, nor late night (nor early morning!) coverage
8
Where to get Squeak, lecture notes…
On the CoWeb… We’ll be using Squeak 3.2 (latest version, not what’s on your CD, but what’s on your CD should work.) Lecture notes are all on the book CD with updates loaded to CoWeb.
9
On the CoWeb… Definition of project
Milestones (Turn-ins) - ALL OF THEM Roughly every two weeks First one is individualized, all others are team-based First milestone: May 28 (DO IT YOURSELF!) First quiz: May 23 First team milestone: June 13 FAQs, links to external resources, etc. Cases page where any code can be reused without honor code violation! Strongly recommended: Who’s Who page
10
Project This Semester Drawing Editors
M1 (individual): Build a simple drawing editor M2 (team): Make a more powerful drawing editor: More tools, move/erase/resize M3: Design everything M4: Generate and input Postscript M5: Make it a web service
11
Philosophy of the Course
The course is on design, for novice designers If you know UML, Corba, COM, and XP already, great. Most people here don’t. But there’s a big focus on learning, not just lecturing at you. So you have to implement your designs — live in them. Figure out where they’re bad The course isn’t explicitly on programming in Squeak, but implicitly (to get you design feedback), it is. Quizzes will focus on Squeak programming
12
Why Squeak? Why not Java? Why not C++?
Marvin Minsky: “If you only know something in one way, you don’t know it at all.” Faculty agreed that you should see something not C-based Other reasons: Great for UI Different model for programming: Can’t use emacs All the sources are there for everything
13
Why this class can be aggravating
It’s not about job skills, per se No Delphi or Visual Basic here Few job postings for Squeak these days (but increasing number for Smalltalk) It’s about ways of thinking that are core to CS, about ways of designing programs About where the core ideas of computers today came from It’s about designing, critiquing designs, making tradeoffs, and making choices
14
Approach of Book (and elsewhere)
Concrete before Abstract Build things before design them Learning involves testing and failure You have to try things in Squeak Generation and Inquiry, over Transmission There is no Squeak API But there are lots of great tools for poking through the system We'll teach the tools to help you learn how to figure it out for yourself
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.