cis 280 object-oriented programming professor zavodnik
TRANSCRIPT
CIS 280 Object-Oriented Programming
Professor Zavodnik
Welcome!
Course Objectives
• Apply what you learned in OOAD to OOP. This means everything from use-cases to Java code from UML
• Learn the basics of OOP
Some OOP Basics
• Separate GUI from business logic
• Prepare for Change/Exension
• Program to an Interface
• Use Design Patterns in your program.
• Learn distributed architecture (RMI)
Advanced Java Features
• Double Dispatch
• Wrapping classes
• MVC setup
• Packaging and compilation
Main Objective
• Write an OOP application of medium complexity (20 + classes) of your choice
• Practice on a tiered application with Java code “answers.”
Prerequisite
• Ability to program in Java
• Some knowledge of SW Engineering, e.g. requirements analysis and use-cases.
Grading Policy
• 2 quizes 15%
• Class participation 6%
• Practice project 13%
• Project 25%
• Homework 6%
• Final 35%
Essentials
• See 274 Discussion
Office Hours
• See 274 Discussion
Textbook
• Budd, Tim. Introduction to OOP using Java
• Lecture Notes by Barry Levine
• Both required by CIS department
Recommended
• Horstmann, Kai. Advanced Core Java Programming, V II (for RMI)
• Deitel & Deitel. Advanced Java with J2EE
• Larman, Craig. Object Oriented Analysis with UML
• Gamma, et al. Design Patterns
Note on API
• NetBeans and Eclipse are available.
• You are responsible also for what goes on behind the scenes, e.g. compilation options, class libraries, jar files, etc.
• Batch files are often useful
Let’s talk about the project