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