Object Oriented Thought Process

Similar documents
Object-Oriented Systems Analysis and Design

How To Design Software

Object oriented design process

Specialized Programme on Web Application Development using Open Source Tools

Java Application Developer Certificate Program Competencies

CSCI 253. Object Oriented Programming (OOP) Overview. George Blankenship 1. Object Oriented Design: Java Review OOP George Blankenship.

Specialized Programme on Web Application Development using Open Source Tools

COURSE SYLLABUS EDG 6931: Designing Integrated Media Environments 2 Educational Technology Program University of Florida

CEC225 COURSE COMPACT

History OOP languages Year Language 1967 Simula Smalltalk

THE BCS PROFESSIONAL EXAMINATIONS Diploma. April 2006 EXAMINERS REPORT. Systems Design

Japan Communication India Skill Development Center

Concepts of Database Management Seventh Edition. Chapter 9 Database Management Approaches

MANAGEMENT INFORMATION SYSTEMS

A Software Engineering Process for Operational Space Weather Systems. S. Dave Bouwer, W. Kent Tobiska Space Environment Technologies

Japan Communication India Skill Development Center

Java (12 Weeks) Introduction to Java Programming Language

Modeling Web Applications Using Java And XML Related Technologies

U III 5. networks & operating system o Several competing DOC standards OMG s CORBA, OpenDoc & Microsoft s ActiveX / DCOM. Object request broker (ORB)

Multichoice Quetions 1. Atributes a. are listed in the second part of the class box b. its time is preceded by a colon. c. its default value is

Glossary of Object Oriented Terms

Computer Information Systems (CIS)

Server-Side Scripting and Web Development. By Susan L. Miertschin

Object Oriented Design

Borland Delphi 6 Product Certification. Study Guide. Version 1.0 Copyright 2001 Borland Software Corporation. All Rights Reserved.

MSc Information Technology - E521

MA-WA1920: Enterprise iphone and ipad Programming

Chapter 13 Computer Programs and Programming Languages. Discovering Computers Your Interactive Guide to the Digital World

Course Name: ADVANCE COURSE IN SOFTWARE DEVELOPMENT (Specialization:.Net Technologies)

Information Technology Career Field Pathways and Course Structure

Automatic generation of fully-executable code from the Domain tier of UML diagrams

Financial Management System

Qint Software - Technical White Paper

Short notes on webpage programming languages

XXI. Object-Oriented Database Design

Course Number: IAC-SOFT-WDAD Web Design and Application Development

INTERNET PROGRAMMING AND DEVELOPMENT AEC LEA.BN Course Descriptions & Outcome Competency

Fundamentals of Java Programming

KITES TECHNOLOGY COURSE MODULE (C, C++, DS)

El Dorado Union High School District Educational Services

COSC 3351 Software Design. Recap for the first quiz. Edgar Gabriel. Spring For the 1 st Quiz

601/8498/X IAO Level 3 Certificate in Web Design and Development (RQF)

Japan Communication India Skill Development Center

Service Oriented Architectures

Software Architecture

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53


Information Technology Website Programming

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: (Computer Programming 2).

Outline. CIW Web Design Specialist. Course Content

CS 487. Week 8. Reference: 1. Software engineering, roger s. pressman. Reading: 1. Ian Sommerville, Chapter 3. Objective:

Framework as a master tool in modern web development

San Joaquin County Office of Education Career & Technical Education Web Design ~ Course Outline CBEDS#: 4601

Tutorial on Client-Server Architecture

PHP FRAMEWORK FOR DATABASE MANAGEMENT BASED ON MVC PATTERN

MyCompany Professional Web Developer Certification Examination Specification

SOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems

CompuScholar, Inc. Alignment to Utah's Computer Programming II Standards

Abstract

Web Design Specialist

Information Technology Programming for Electronic Games

This document gives an outline of Tim Ward s work on mobile phone systems

LAMP [Linux. Apache. MySQL. PHP] Industrial Implementations Module Description

Efficiency Considerations of PERL and Python in Distributed Processing

Application Development,.NET

Japan Communication India Skill Development Center

Engineering Design. Software. Theory and Practice. Carlos E. Otero. CRC Press. Taylor & Francis Croup. Taylor St Francis Croup, an Informa business

Roulette: Inheritance Case Study

Course Name: Course in JSP Course Code: P5

Web Services. Copyright 2011 Srdjan Komazec

Skills for Employment Investment Project (SEIP)

WebObjects Web Applications Programming Guide. (Legacy)

Unit I Page No. 1 System Development Object Basics Development Life Cycle Methodologies Patterns Frameworks Unified Approach UML

Information Technology Programming

Motivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures

Automation of Library (Codes) Development for Content Management System (CMS)

IT6503 WEB PROGRAMMING. Unit-I

UNIFACE Component-based. Development Methodology UNIFACE V Revision 0 Dec 2000 UMET

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science

Software Design Specification

Object Relational Database Mapping. Alex Boughton Spring 2011

Enterprise Application Development In Java with AJAX and ORM

Data Modeling Basics

Architecture of the CORBA Component Model CORBA 3.0

Web Programming Languages Overview

10CS73:Web Programming

WORKSPACE WEB DEVELOPMENT & OUTSOURCING TRAINING CENTER

TYLER JUNIOR COLLEGE School of Continuing Studies 1530 SSW Loop 323 Tyler, TX

Mobile Web Design with HTML5, CSS3, JavaScript and JQuery Mobile Training BSP-2256 Length: 5 days Price: $ 2,895.00

STATEMENT OF PURPOSE

Modern Databases. Database Systems Lecture 18 Natasha Alechina

How To Understand The Software Development Lifecycle

Building Views and Charts in Requests Introduction to Answers views and charts Creating and editing charts Performing common view tasks

B.Sc. (Computer Science) First Year

New Web Application Development Tool and Its MDA-Based Support Methodology

Total Exploration & Production: Field Monitoring Case Study

THE BCS PROFESSIONAL EXAMINATIONS Certificate in IT. October Examiners Report. Information Systems

Books-by-Users Web Development with SAS by Example (Third Edition) Frederick E. Pratter

Reporting and Visualization of Healthcare Data Using Open Source Technology. Virgil Dodson, Actuate

Transcription:

Object Oriented Thought Process 1. Introduction to Object-Oriented Concepts Procedural Versus OO Programming Moving from Procedural to Object-Oriented Development Procedural Programming OO Programming What Exactly Is an Object? Object Data Object Behaviors What Exactly Is a Class? Classes Are Object Templates Attributes Methods Messages Using UML to Model a Class Diagram Encapsulation and Data Hiding Interfaces Implementations A Model of the Interface/Implementation Paradigm Inheritance Super classes and Subclasses Abstraction Is-a Relationships Polymorphism Composition Abstraction Has-a Relationships 2. How to Think in Terms of Objects Knowing the Difference Between the Interface and the Implementation The Interface The Implementation An Interface/Implementation Example Using Abstract Thinking When Designing Interfaces Giving the User the Minimal Interface Possible Determining the Users Object Behavior

Environmental Constraints Identifying the Public Interfaces Identifying the Implementation 3. Advanced Object-Oriented Concepts Constructors The Default Constructor When Is a Constructor Called? What s Inside a Constructor? The Default Constructor Using Multiple Constructors The Design of Constructors Error Handling Ignoring the Problem Checking for Problems and Aborting the Application Checking for Problems and Attempting to Recover Throwing an Exception The Concept of Scope Local Attributes Object Attributes Class Attributes Operator Overloading Multiple Inheritance Object Operations 4. The Anatomy of a Class The Name of the Class Comments Attributes Constructors Accessors Public Interface Methods Private Implementation Methods 5. Class Design Guidelines Modeling Real World Systems Identifying the Public Interfaces The Minimum Public Interface Hiding the Implementation Designing Robust Constructors (and Perhaps Destructors)

Designing Error Handling into a Class Documenting a Class and Using Comments Building Objects with the Intent to Cooperate Designing with Reuse in Mind Documenting a Class and Using Comments Designing with Extensibility in Mind Making Names Descriptive Abstracting Out Non-portable Code Providing a Way to Copy and Compare Objects Keeping the Scope as Small as Possible A Class Should Be Responsible for Itself Designing with Maintainability in Mind Using Iteration Testing the Interface Using Object Persistence Serializing and Marshaling Objects 6. Designing with Objects Design Guidelines Performing the Proper Analysis Developing a Statement of Work > Gathering the Requirements Developing a Prototype of the User Interface Identifying the Classes Determining the Responsibilities of Each Class Determining How the Classes Collaborate with Each Other Creating a Class Model to Describe the System Case Study Identifying the Classes Responsibilities UML Use-Cases: Identifying the Collaborations UML Class Diagrams: The Object Model Prototyping the User Interface 7. Mastering Inheritance and Composition Reusing Objects Inheritance Generalization and Specialization Design Decisions Composition

Representing Composition with UML Why Encapsulation Is Fundamental to OO How Inheritance Weakens Encapsulation A Detailed Example of Polymorphism Object Responsibility 8.Frameworks and Reuse: Designing with Interfaces and Abstract Classes Code: To Reuse or Not to Reuse? What Is a Framework? What Is a Contract? Abstract Classes Interfaces The Compiler Proof Making a Contract System Plug-in-Points An E-Business Example The Non-Reuse Approach An E-Business Solution The UML Object Model 9. Building Objects Composition Relationships Building in Phases Types of Composition Aggregations Associations Using Associations and Aggregations Together Avoiding Dependencies Cardinality Multiple Object Associations Optional Associations 10. Creating Object Models with UML What Is UML? The Structure of a Class Diagram Attributes and Methods Access Designations Inheritance Interfaces

Composition Aggregations Associations Cardinality 11. Objects and Portable Data: XML Portable Data The Extensible Markup Language (XML) XML Versus HTML XML and Object-Oriented Languages Sharing Data Between Two Companies Validating the Document with the Document Type Definition (DTD) Integrating the DTD into the XML Document Using Cascading Style Sheets 12. Persistent Objects: Serialization and Relational Databases Persistent Objects Basics Saving the Object to a Flat File Serializing a File Implementation and Interface Revisited What About the Methods? Using XML in the Serialization Process Writing to a Relational Database Accessing a Relational Database Loading the Driver Making the Connection The SQL Statements 13. Objects and the Internet Evolution of Distributed Computing Object-Based Scripting Languages A JavaScript Validation Example Objects in a Web Page JavaScript Objects Web Page Controls Sound Players Movie Players Flash

Distributed Objects and the Enterprise The Common Object Request Broker Architecture (CORBA) Web Services Definition 14. Objects and Client/Server Applications Client/Server Approaches Proprietary Approach Serialized Object Code Client Code Server Code Running the Proprietary Client/Server Example Nonproprietary Approach Object Definition Code Client Code Server Code Running the Nonproprietary Client/Server Example