1 Java for ColdFusion Programmers Hal Helms halhelms.com.

Slides:



Advertisements
Similar presentations
4. Object-Oriented Programming Procedural programming Structs and objects Object-oriented programming Concepts and terminology Related keywords.
Advertisements

Overview of Data Structures and Algorithms
Solutions to Review Questions. 4.1 Define object, class and instance. The UML Glossary gives these definitions: Object: an instance of a class. Class:
Unified Modeling Language
Windows Programming 1 Part 1 dbg --- Getting Acquainted with Visual Studio.NET and C#
Classes & Objects Computer Science I Last updated 9/30/10.
Object-Oriented PHP (1)
1 CS1001 Lecture Overview Homework 3 Homework 3 Project/Paper Project/Paper Object Oriented Design Object Oriented Design.
Object Oriented System Development with VB .NET
Fall 2007ACS-1805 Ron McFadyen1 Programming Concepts Chapter 4 introduces more advanced OO programming techniques. Construction of a programs usually requires:
Object-oriented Programming Concepts
WEL COME PRAVEEN M JIGAJINNI PGT (Computer Science) MCA, MSc[IT], MTech[IT],MPhil (Comp.Sci), PGDCA, ADCA, Dc. Sc. & Engg.
Abstraction: Polymorphism, pt. 1 Abstracting Objects.
CSCI-383 Object-Oriented Programming & Design Lecture 15.
1 CS101 Introduction to Computing Lecture 19 Programming Languages.
Programming Paradigms Imperative programming Functional programming Logic programming Event-driven programming Object-oriented programming A programming.
Starting Chapter 4 Starting. 1 Course Outline* Covered in first half until Dr. Li takes over. JAVA and OO: Review what is Object Oriented Programming.
Overview-An Overview of Visual Basic.NET1 An Overview of Visual Basic.NET.
Using Classes Object-Oriented Programming Using C++ Second Edition 5.
Introduction to Object-oriented programming and software development Lecture 1.
BCS 2143 Introduction to Object Oriented and Software Development.
Sadegh Aliakbary Sharif University of Technology Fall 2011.
© 2005 course technology1 1 University Of Palestine UML for The IT Business Analyst A practical guide to Object Oriented Requirement Gathering Hoard Podeswa.
Recap (önemli noktaları yinelemek) from last week Paradigm Kay’s Description Intro to Objects Messages / Interconnections Information Hiding Classes Inheritance.
1 UML for The IT Business Analyst A practical guide to Object Oriented Requirement Gathering Hoard Podeswa Instructor: Mrs. Eman ElAjrami 2008 University.
Introduction To System Analysis and Design
Features of Object Oriented Programming Lec.4. ABSTRACTION AND ENCAPSULATION Computer programs can be very complex, perhaps the most complicated artifact.
Method Overriding Remember inheritance: when a child class inherits methods, variables, etc from a parent class. Example: public class Dictionary extends.
CS200 Algorithms and Data StructuresColorado State University Part 4. Advanced Java Topics Instructor: Sangmi Pallickara
Head First Object-Oriented Analysis and Design Introduction.
Object Oriented Programming Principles Lecturer: Kalamullah Ramli Electrical Engineering Dept. University of Indonesia Session-3.
Advanced Object- Oriented Programming Programming Right from the Start with Visual Basic.NET 1/e 14.
Object-Oriented Programming. An object is anything that can be represented by data in a computer’s memory and manipulated by a computer program.
Chapter 12 Support for Object oriented Programming.
CIS 112 Exam Review. Exam Content 100 questions valued at 1 point each 100 questions valued at 1 point each 100 points total 100 points total 10 each.
Object-oriented Design and Programming CS 2210: SW Development Methods Reading: Chapter 2 of MSD text – Section on UML: look at class diagrams but.
Object-Oriented Programming with Java Lecture 1: Introduction Autumn, 2007.
Abstraction ADTs, Information Hiding and Encapsulation.
1.
Programming with Java © 2002 The McGraw-Hill Companies, Inc. All rights reserved. 1 McGraw-Hill/Irwin Chapter 5 Creating Classes.
Ch- 8. Class Diagrams Class diagrams are the most common diagram found in modeling object- oriented systems. Class diagrams are important not only for.
Salman Marvasti Sharif University of Technology Winter 2015.
Software testing techniques Software testing techniques Object-oriented software testing Presentation on the seminar Kaunas University of Technology.
Overview.ppt Overview-An Overview of Visual Basic.NET An Overview of Visual Basic.NET.
Session 3 How to Approach the UML Written by Thomas A. Pender Published by Wiley Publishing, Inc. October 5, 2011 Presented by Kang-Pyo Lee.
Method Overriding Remember inheritance: when a child class inherits methods, variables, etc from a parent class. Example: public class Dictionary extends.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
OOPS CONCEPT.  OOPS  Benefits of OOPs  OOPs Principles  Class  Object Objectives.
OOP Basics Classes & Methods (c) IDMS/SQL News
CSCI 383 Object-Oriented Programming & Design Lecture 15 Martin van Bommel.
 The Object Oriented concepts was evolved for solving complex problems. Object- oriented software development started in the 1980s. Object-oriented design.
CIS 234: Object-Oriented Programming with Java
Inheritance Modern object-oriented (OO) programming languages provide 3 capabilities: encapsulation inheritance polymorphism which can improve the design,
Object-Oriented Design
Programming paradigms
JAVA By Waqas.
Object-oriented software testing
Table of Contents Class Objects.
Object-Oriented Programming
INTRODUCTION TO OBJECT-ORIENTED PROGRAMMING (OOP) & CONCEPTS
C++.
Object Oriented Analysis and Design
The Object-Oriented Thought Process Chapter 07
Basic Object Oriented Approach
Week 3 Object-based Programming: Classes and Objects
Workshop for Programming And Systems Management Teachers
Object Oriented Analysis and Design
Object-Oriented PHP (1)
Agenda Software development (SD) & Software development methodologies (SDM) Orthogonal views of the software OOSD Methodology Why an Object Orientation?
Presentation transcript:

1 Java for ColdFusion Programmers Hal Helms halhelms.com

2 What we'll cover Why OO? What is OO? Why Java?

3 Theory of Constraints According to the Theory of Constraints, any system has only one current constraint that hinders the system from producing Working on anything other than that is misdirected effort and can actually be worse than doing nothing

4 What's so great about OO? The greatest threat to software—to both successful deployment and maintenance—is complexity Object orientation offers us the best tools yet devised for managing that complexity

5 Food for thought "Any intelligent fool can make things bigger and more complex. It takes a touch of genius—and a lot of courage—to move in the opposite direction." -Einstein

6 What tools are available in OO for managing complexity? Encapsulation Polymorphism Inheritance

7 Fabulous prizes time List as many data types as you can

8 About data types The primary goal of a type system is to ensure language safety by ruling out all untrapped errors in all program runs. [The] declared goal of a type system is usually to ensure good behavior of all programs, by distinguishing between well typed and ill typed programs. —Cardelli

9 What is object orientation? Object orientation (OO) is a way of constructing software such that an simplified, idealized model of the world under consideration is created in software components that encapsulate the statefulness and behavior of the inventory of the world and that may change their state or perform some behavior in response to a message sent to them

10 What did he just say? "…simplified, idealized model of the world under consideration is created in software components that encapsulate the statefulness and behavior …" PackageDeliverer route: Route assignedTruck: Truck hourlyPayrate: numeric hoursWorked: numeric deliverPackages():boolean collectCOD(): void completeTimecard(): void getPayDue(): numeric

11 What did he just say? … that may change their state or perform some behavior in response to a message sent to them route assignedTruck hourlyPayrate hoursWorked doC() doD() doE() doF() doH() doG() getRoute() doB() obj.getRoute() obj.hoursWorked

12 Breathing life into models Defining classes is done at design time At run time, classes are instantiated, producing objects An OO application is nothing but a number of objects sending messages back and forth to on another

13 What's so great about Java? The power of Java lies in object orientation For most procedural programmers, OO takes time to penetrate When learning OO, it's very important to lay good foundations Java is simply a very good implementation of object orientation

14 Java: Encapsulation Data and behavior in a single software component: the class A class is like a blueprint or cookie cutter from which objects are created Class Objects

15 Encapsulation Encapsulation allows the details of a component to be hidden from users of the component. In place of exposing its internals, a well-encapsulated component exposes an interface or specification.

16 A specification The Cat class has, as part of its specification, a play() method. When called, each Cat object will carry out its play method. We know only what it will do, not how it will do it. I can play()

17 Encapsulation in Java Let's build a simple class, Cat The Cat class will have… properties name color methods get/setName() get/setColor() play() Remember that Cat is a blueprint. To create an actual Cat object, we'll use CatDemo.java

18 Polymorphism Polymorphism allows different objects to be treated as having the same specification and/or one object to be treated as belonging to different specifications I once knew a Greek girl named Polly Morphism but what you just said is Greek to me.

19 Treating different objects as having the same specification Java allows different objects to assume the same type Java allows the same object to assume different types

20 Polymorphism in Java Let's build a simple class, RobotDog The RobotDog class will have… properties voltage batteryLife methods get/setVoltage() get/setBatteryLife() play()

21 Interface A specification without implementation Acts as a data type An interface is like a role that an object can step into The object, joe, might be "born" as a Welder, but may also implement Father Son Voter PokerPlayer

22 Inheritance A special case of polymorphism in which one class is a specialized type of another class HourlyEmployee : Employee SportsCar : Car TypicalManager : CluelessDolt When one class inherits from another, it inherits all those properties and methods not declared to be private

23 Why is OO a big deal? If you're a programmer, you must know OO OO gives you, the programmer, better tools for dealing with changing requirements on current projects maintaining existing code team development

24 But why Java? So that you'll learn OO right Once you learn OO, you can then use CFCs C#.NET Visual Basic.NET Ruby Eiffel etc.

25 Food for thought "Students usually demand to be taught the language that they are most likely to use in the world outside. This is a mistake. A well taught student can easily pick up the languages of the world, and will be in a far better position to recognize their bad features as they encounter them." C. H. Lindsey

26 To learn more… Books Head First Java published by O'Reilly Java for ColdFusion Developers by Eben Hewitt Training/Mentoring Java for ColdFusion Programmers (halhelms.com)