Object Oriented Design

Slides:



Advertisements
Similar presentations
Requirements for a UI Test Framework Stanislaw Wozniak Bernie Miles.
Advertisements

Basic Concepts of Computer
Technical Architectures
1 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Quality Objects: Advanced Middleware for Large Scale Wide Area.
Distributed Information Systems - The Client server model
CW-V1 SDD 0201 Principals of Software Design and Development Introduction to Programming Languages.
ABSTRACT Zirous Inc. is a growing company and they need a new way to track who their employees working on various different projects. To solve the issue.
HW/SW/FW Allocation – Page 1 of 14CSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Allocation of Hardware, Software, and Firmware.
Legacy systems overview DT Legacy System definition “Legacy system is deficiency in a system in terms of its suitability to the business, its Platform.
02/10/2015 Page 1 R. Theeuws Siemens Atea Filename: CBD_ervaring Werkgroep Component Based Developments Ervaring CBD.
1 06/00 Questions 10/6/2015 QoS in DOS ECOOP 2000John Zinky BBN Technologies ECOOP 2000 Workshop on Quality of Service in Distributed Object Systems
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
Se Over the past decade, there has been an increased interest in providing new environments for teaching children about computer programming. This has.
CakePHP is an open source web development framework. It follows Model-View- Controller and is developed using PHP. IT is the basic for user to create.
Migrating From Relational To Object-Oriented Databases Masood Asif, Kenny Dunlop, Gerard Given & Grant Stalker.
Facade Introduction. Intent Provide a unified interface to a set of interfaces in a subsystem. Facade defines a higher-level interface that makes the.
Magnus
1 Introduction to Classes. 2 Terms and Concepts A class is... –The most important building block of any object- oriented system. –A description of a set.
Lecture VIII: Software Architecture
FlowLevel Client, server & elements monitoring and controlling system Message Include End Dial Start.
.NET and Webservices for Dummies Speaker: John J. Stark System Consultant, Integral Data Solutions.
The Structuring of Systems Using Upcalls By David D. Clark Presented by Samuel Moffatt.
Implementing RISC Multi Core Processor Using HLS Language - BLUESPEC Liam Wigdor Instructor Mony Orbach Shirel Josef Semesterial Winter 2013.
Object Oriented Programming Some Interesting Genes.
A Method for Improving Code Reuse System Prasanthi.S.
Presented by FACADE PATTERN
Now you don’t need to take any stress about the Cisco Exam
CSC 222: Object-Oriented Programming
Point-to-Point Protocol (PPP)
TCP/IP (Original) Application Transport Internet Network Access TCP/IP
Top 8 Best Programming Languages To Learn
Current Generation Hypervisor Type 1 Type 2.
N-Tier Architecture.
CHAPTER 5 GENERAL OOP CONCEPTS.
Introduction to parallel programming
The Mach System Sri Ramkrishna.
Chapter 1 Introduction to Computers, Programs, and Java
IS301 – Software Engineering Dept of Computer Information Systems
Direct Attached Storage and Introduction to SCSI
Introduction.
Software Design and Architecture
CSC 222: Object-Oriented Programming
CH#3 Software Designing (Object Oriented Design)
Practice PT - Design a Digital Scene 3 days
IT Systems Analysis & Design
Direct Attached Storage and Introduction to SCSI
Anne Pratoomtong ECE734, Spring2002
What is a network? A network consists of two or more entities, or objects, sharing resources and information. In a basic sense, sharing (giving or getting)
Component-Based Software Engineering: Technologies, Development Frameworks, and Quality Assurance Schemes X. Cai, M. R. Lyu, K.F. Wong, R. Ko.
Point-to-Point Protocol (PPP)
CSE 143 Goodbye, world!.
PROGRAMMING What is it?.
Figure 30.2 Layers in NextGen
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
CS 425/625 Software Engineering Architectural Design
Point-to-Point Protocol (PPP)
Practical Issues for Commercial Networks
Reference This talk is loosely based on the following
Training Module Introduction to the TB9100/P25 CG/P25 TAG Customer Service Software (CSS) Describes Release 3.95 for Trunked TB9100 and P25 TAG Release.
An Introduction to Software Architecture
Virtual LAN VLAN Trunking Protocol and Inter-VLAN Routing
SAMANVITHA RAMAYANAM 18TH FEBRUARY 2010 CPE 691
Outline Chapter 2 (cont) OS Design OS structure
Point-to-Point Protocol (PPP)
Quality Assurance for Component-Based Software Development
Chapter 5 Architectural Design.
Systems Development Jerry Post Copyright © 1997
Database System Architectures
Message Passing Systems Version 2
Message Passing Systems
Presentation transcript:

Object Oriented Design Programming Concepts

Introduction OO-Design is not Magic Important concepts that OO-Programming simplifies: Code Reusability Abstraction Layered Design Scalability

Code Reusability OO-Design simplifies Code Reusability. We can create a closed object and use it for other applications. Saving time and money for future applications in design and debugging.

Code Reusability (Example) Class with specific values Quick and easy to program. Code not Reusable. Build a generic class instead (configurable) Adds overhead Bounds Checking, Parsing etc. Takes more time to program. Code is Reusable.

Abstraction A very useful tool, OO languages make this possible. Different classes can be given a common interface. The objects created look the same to the outside world. Calling applications need not know the details.

Abstraction (Example) Connecting two Clients together LAN, WAN, serial, parallel etc. A communication class for each of the methods could be created. The application using these objects would not have to know the difference. The appropriate class is chosen.

Layered Design OO-Programming makes Layering very easy. Objects become the building blocks. Objects are broken down into closely related functions. Each layer only accesses the layers directly below it. This simplifies the application and enables multiple persons to program it.

Layered Design (Example) A simple communications program. It is broken down into layers. If I want to change a lower layer I can without effecting higher layers.

Scalability An important concept is Scalability and OO-Programming helps simplify this. Scalability leads to lower costs since changes are easy to implement. By breaking functions/data into objects, they can be reused to form a scalable solution to a problem. When you think about an application you need to look at how well we can make it scale or expand.

Scalability (Example) Basic View, lacks Scalability. If we need to upgrade, the changes are large. Big Picture = Scalable We now have all the hooks to do any size network.

Conclusion In OO-Design it is important to think about Reusability Abstraction Layered Design Scalability These Design practices in the long run will save time and money.