OO Programming in Java
Class 1 Material
Contact Info
Tom Poliquin
poliquin@softcomp.com
Work - 831-462-8294
Grading
Homework 75%
Attendance 25%
Holiday Issue
TBD
Quick Class Poll
Name
Company
Why are you here
What you expect to get out of course
If someone woke you up in the middle of the
night what language would you program in.
What this course is
Practical OO
Java Threads
Java AWT
Design Patterns
Network Intro
Not Java Guruland
Individual Class Overview
Homework Review
New Material
Quiz
Quiz Review
Object Modeling in class
to prepare for homework coding.
Religious Material
Quick Definitions
Object Oriented Programming |
Data and Methods live together |
Class |
Objects with certain characteristics live together |
General OO
OO Benefits most often claimed
|
- Faster application development at a lower cost
- Decreased maintenance time
- Less complicated and faster customizsation of programs
- Higher quality code
|
Additional claimed benefits
|
- Enables the development of a common GUI across all platforms
- Handles the storage and manipulation of more complex data types.
- Provides the infrastructure for distrubuted applications
|
What is OO Programming
|
- OOP is a set of implementation techniques that can be done in any programming language and are very difficult
to do in most programming languages
|
General Agreement on OOP
|
- Strongly reflects software engineering ... information hiding and abstract data types
- Better vehicle for reusing code
- Produces more mailleable systems
- Keeps the programmer in touch with the problem
|
Some people say ....
|
- Demise of waterfall development.
- Don't bother unless you have an OO language for final implementation
- You can design and implement deep systems.
- I'll never go back to conventional programing.
|
OO Principles
Workinng definitions
|
- Object based - Objects only
- Class based - Objects and Classes
- Object oriented - Objects, Classes and Inheritance
|
3 ways to think of an object
|
- The state of memory is accessible through the operations and only through the operations
- Objects hava an inside and an outside
- Personified data, antropomorphism, little people
|
Can these be objects
|
- a bank account
- a stack
- an ADA package
- a fraction
|
Why an object based view
|
- Objects may resemble real world conterparts
- People often think first of a thing, then what it can do.
- Encapsulation facilitates enhancement
|
Classes are factories for new objects
|
- Whale
- BankAccount
- DialogBox
|
Quiz
Zoo Example
Homework