Obj b e j c e t t Basic i s Chapter 2
|
|
- Gillian Harrison
- 7 years ago
- Views:
Transcription
1 Object Basics Chapter 2
2 Introduction If there is a motivation behind objectoriented system development, it is the desire to make the software development easier and more natural by rising the level of abstraction to the point where applications can be implemented in the same terms in which they are described by users.
3 Introduction Let us develop an notion of an object through an example. A car is an object,a real world entity, identifiably separate to with the surroundings. A car has a well-defined set ob attributes in relation to other objects such as color, manufacturer, cost, owner a well defined set of thing you would usually do with it drive, lock, carry passengers, etc.
4 Introduction In object orientation we call the attributes ad properties and actions as methods. Properties describe the state of an object. Methods define the behavior.
5 An Object- Oriented Philosophy Most of the programming languages provide programmers with the way of describing processes. Although most programming languages are computationally equivalent, the ease of description, reusability, extensibility, readability can vary depending upon the language used.
6 An Object- Oriented Philosophy A natural language or programming, provides its users a base set of constructs. Many programming derive their basic ideas from the underlying machine. The machine may understand types such as integers, floating point numbers and the programming language will represent them as structures.
7 An Object- Oriented Philosophy A fundamental characteristics of object oriented programming is that it allows the base concepts of the language to extend to include ideas and terms closer to those of its application. New data types can be defined in terms of existing data types. Using data abstraction mechanism, it is possible to create new higher-level and more specialized types.
8 An Object- Oriented Philosophy The fundamental difference between the object-oriented system and their traditional counterparts is the way in which you approach problems. Most traditional development methodologies are either algorithm-centric or data centric. In algorithm-centric methodology, you think of an algorithm that can accomplish the task, then build data structures for that algorithm to use.
9 An Object- Oriented Philosophy In data-centric methodology, you think how to structure the data, then build the algorithm around that structure. In Object-oriented system, however the algorithm and the data structure are packaged together as an object, which has a set of attributes and properties. The state of these attributes are reflected in values stored in its data structures.
10 An Object- Oriented Philosophy The object has collection of methods or procedures things it can do. The methods and attributes are equal and inseparable parts of the object; one cannot ignore one for the sake of other. Traditional programming tends to write lots of code to do all the things that have to be done.
11 An Object- Oriented Philosophy In summary, object oriented programming language bridge the semantic gap between the ideas of the application and those of the underlying machine, and objects represent the application data in a way that is not forced by hardware architecture.
12 Objects The term Object was first formally utilized in Simula language. The term object means a combination of data and logic that represents some real entity. In object-oriented system, everything is an object. Each of us deal with object daily.
13 Objects When developing object-oriented applications, two basic questions always arise: What objects does the application need? What functionality should those objects have?
14 Objects are grouped into classes It is fairly natural to partition the world into objects, properties and procedures. This is useful for classification Example: When a eagle flies over us we have no trouble in identifying it, as eagle and not airplane, even if we have not seen that bird before. Classes are used to distinguish one type of object from another.
15 Objects are grouped into classes In the context of object-oriented systems, a class is a set of objects that share a common structure and a common behavior. A single object is simply instance of a class. The chief role of a class is to define the properties and procedures.
16 Attributes : Object State and Properties Properties represent the state of an object. It is basically used to refer the description of an object. For Examples: Car has properties such as color, manufacturer, and cost. Properties could be represented in several ways in programming langugage
17 Attributes : Object State and Properties For Color, we could choose either String RED or an integer representing RED. Manufacturer could be represented by a name which is a reference in Manufacturer object. Cost could be a floating point number. The importance of distinction is that an object s abstract state can be independent of its physical state.
18 Object Behavior and Methods When we talk about an elephant or a car we can describe the set of things we can do with it or that it can do in its own. This refers to description of object s behavior. In OO object behavior is described in methods or procedures. A method implements a behavior of an object.
19 Object Behavior and Methods The object, called the receiver, is that on which the method operates. Methods encapsulates the behavior of the object. Methods are used to exclusively access and update the properties of the object. Objects can take responsibility of their own behavior. For ex: the Employee object know how to compute its own salary.
20 Objects Respond to Messages An object s capabilities are determined by the methods defined for it. Methods conceptually are equivalent to the function definitions used in procedural language. Objects perform operations in response to messages. For Ex: when you press the brake a pedal of the car, you send a stop message to the car object.
21 Objects Respond to Messages The car object knows how to respond to the stop message. Sending the stop message to other objects like tree will be meaning less and could lead to unanticipated response. Messages essentially are non specific function calls: We could send a draw message to a chart when we want to chart object to draw itself.
22 Objects Respond to Messages A message is different from a subroutine call, since different objects can respond to the same message in different ways. For example: car, motorcycle, and bicycle respond to a stop message, but actual operations performed are object specific. It is important to understand the difference between methods and messages.
23 Objects Respond to Messages Example: Say you.want to tell someone to make you a French Onion Soup, your instruction is the message and the way the soup is prepared is the method. In other words, the message is a instruction and the method is the implementation.
24 Encapsulation and Information Hiding Information hiding is the principle of concealing the internal data and procedures of an object and providing an interface to each object in such a way as to reveal as little as possible about its inner workings. In C++ there are very general encapsulation protection mechanism with public, private and protected members.
25 Encapsulation and Information Hiding Public members (member data and member functions) may be accessed from anywhere. Private members are accessible only from within the class. Protected members are only accessed from sub classes.
26 Encapsulation and Information Hiding Often an object is said to encapsulate the data and a program. This means that the user cannot see the inside of the object capsule, but can use the object by calling the object s methods. Encapsulation or information hiding is a design goal of an object-oriented system. Rather than allowing an object direct access to another object s data, a message is sent to the target object requesting information.
27 Encapsulation and Information Hiding Another issue is per-object or per-class protection. In per-class protection, the most common form( e.g., ADA, C++, Eiffel), class methods can access any object of that class and not just the receiver. In per-object protection, methods can access only the receiver.
28 Encapsulation and Information Hiding An important factor in achieving encapsulation is the design of different classes of objects that operate using a common protocol, or object s user interface. This means a program can send a generic message and leave the implementation up to the receiving object.
29 Class Hierarchy An object-oriented system organizes classes into a subclass-superclass hierarchy. At the top of the class hierarchy are the most general classes and at the bottom are the most specific. The sub class inherits all the properties and methods defined in its superclass.
30 Class Hierarchy
31 Inheritance Inheritance is a property of objectoriented systems that allows objects to be built from other objects. It takes the advantage from the commonality of objects when constructing new classes. Inheritance is the relationship between the classes where one is parent class of another (derived) class.
32 Inheritance Parent class is also known as super class or base class. The main advantage of this technique is that we can build on what we already have and more, important, reuse what we already have. Inheritance allows us to share and reuse the behaviors and attributes.
33 Inheritance Ford Mustang Taurus Thunderbird
34 Dynamic Inheritance Dynamic inheritance allows objects to change and evolve overtime. Since base classes provide properties and attributes for objects, changing the base classes changes the properties and attributes of a class. More specifically, dynamic inheritance refers to the ability to add, delete, or change parents from objects(or classes ) at runtime.
35 Multiple Inheritance Some object-oriented systems permit a class to inherit its state(attributes) and behaviors from more than one superclass. This kind of inheritance is referred to as multiple inheritance. Multiple inheritance can pose some difficulties
36 Multiple Inheritance Example: Several distinct parents can declare a member within a multiple inheritance hierarchy. One way of achieving benefits of multiple inheritance is to inherit appropriate class and then add an object of another class as an attribute.
37 Polymorphism Poly means many and morph means forms. It means objects that can take and assume many forms. Polymorphism means that the same operation may behave differently on different classes. For example, consider how driving an automobile with a manual transmission is different from driving a car with an automatic transmission.
38 Polymorphism It is the fundamental concept in OOS. Polymorphism allows us to write generic, reusable code more easily.
39 Object Relationships and Associations Association represents the relationship between objects and classes. For examples: A pilot can fly planes Here can fly is a relationship between a pilot and planes entities. Associations are bidirectional; that means they can be traversed in both directions, perhaps with different connotations.
40 Object Relationships and Associations A direction implied by a name is the forward direction ; the opposite direction is the inverse direction. Can fly connects a pilot to certain airplanes. The inverse of can fly could be called flown by.
41 Object Relationships and Associations Another important issue in association is cardinality, which specifies how many instances of one class may relate to a single instance of an associated class. Cardinality constraints the number of related objects and often is described as being one or many.
42 Consumer-Producer Association A special form of association is a consumer producer relationship, also known as a client server association or a use relationship. The consumer-producer relationship can be viewed as one way interaction: One object requests the service of another object.
43 Consumer-Producer Association The object that makes request is the client or consumer, and the object that receive request or provide service is the producer or server Print Server Request for service Item
44 Aggregation and object Containment All objects, except most basic ones, are composed of and may contain other objects. For example Car object is composed of engine and engine is still composed of shafts and valves. Breaking down the objects into the object from which they are composed is called decomposition.
45 Aggregation and object Containment Since each object has identity, one object can refer to other objects. This is known as aggregation, where attribute can be object itself.
46 Object and Identity A special feature of object-oriented systems is that every object has its own unique and immutable identity. An object identity comes into being when the object is created and continues to represent that object then on. The identity is never confused with another object s identity even if the object is deleted.
47 Object and Identity The identity name never changes even if the properties of the object change- its independent of the object s state. In object oriented systems, object identity is implemented through some kind of object identifier(oid) or unique identifier(uid). An OID guarantees uniqueness of every identifier.
48 Static and Dynamic binding The process of determining (dynamically) at runtime which function to invoke is termed dynamic binding. Making this determination earlier, at compile time, is called static binding. Static binding optimizes the calls. Dynamic binding occurs when polymorphism calls are issued.
49 Object persistence Object have lifetime. They are explicitly created and can exist for a period of time that, traditionally, has been the duration of the process in which they were created. From language perspective this characteristics is called persistence.
50 Meta Classes Information about classes is called meta class.
How To Design Software
The Software Development Life Cycle: An Overview Presented by Maxwell Drew and Dan Kaiser Southwest State University Computer Science Program Last Time The design process and design methods Design strategies
More informationQuotes from Object-Oriented Software Construction
Quotes from Object-Oriented Software Construction Bertrand Meyer Prentice-Hall, 1988 Preface, p. xiv We study the object-oriented approach as a set of principles, methods and tools which can be instrumental
More informationProgramming Languages
Programming Languages Programming languages bridge the gap between people and machines; for that matter, they also bridge the gap among people who would like to share algorithms in a way that immediately
More informationJava (12 Weeks) Introduction to Java Programming Language
Java (12 Weeks) Topic Lecture No. Introduction to Java Programming Language 1 An Introduction to Java o Java as a Programming Platform, The Java "White Paper" Buzzwords, Java and the Internet, A Short
More informationFunctional Decomposition Top-Down Development
Functional Decomposition Top-Down Development The top-down approach builds a system by stepwise refinement, starting with a definition of its abstract function. You start the process by expressing a topmost
More informationCSCI 253. Object Oriented Programming (OOP) Overview. George Blankenship 1. Object Oriented Design: Java Review OOP George Blankenship.
CSCI 253 Object Oriented Design: Java Review OOP George Blankenship George Blankenship 1 Object Oriented Programming (OOP) OO Principles Abstraction Encapsulation Abstract Data Type (ADT) Implementation
More information11 November 2015. www.isbe.tue.nl. www.isbe.tue.nl
UML Class Diagrams 11 November 2015 UML Class Diagrams The class diagram provides a static structure of all the classes that exist within the system. Classes are arranged in hierarchies sharing common
More informationA terminology model approach for defining and managing statistical metadata
A terminology model approach for defining and managing statistical metadata Comments to : R. Karge (49) 30-6576 2791 mail reinhard.karge@run-software.com Content 1 Introduction... 4 2 Knowledge presentation...
More informationFundamentals of Java Programming
Fundamentals of Java Programming This document is exclusive property of Cisco Systems, Inc. Permission is granted to print and copy this document for non-commercial distribution and exclusive use by instructors
More informationa. Inheritance b. Abstraction 1. Explain the following OOPS concepts with an example
1. Explain the following OOPS concepts with an example a. Inheritance It is the ability to create new classes that contain all the methods and properties of a parent class and additional methods and properties.
More informationUnit I Page No. 1 System Development Object Basics Development Life Cycle Methodologies Patterns Frameworks Unified Approach UML
Unit I Page No. 1 System Development Object Basics Development Life Cycle Methodologies Patterns Frameworks Unified Approach UML System Development (SD) : - o SD refers to all activities that go into producing
More informationDESIGN, IMPLEMENTATION, AND MANAGEMENT DO NOT COPY PETER ROB CARLOS CORONEL
DATABASE SYSTEMS DESIGN, IMPLEMENTATION, AND MANAGEMENT PETER ROB CARLOS CORONEL ALL RIGHTS RESERVED. No part of this work covered by the copyright hereon may be reproduced or used in any form or by any
More informationObject Oriented Design
Object Oriented Design Kenneth M. Anderson Lecture 20 CSCI 5828: Foundations of Software Engineering OO Design 1 Object-Oriented Design Traditional procedural systems separate data and procedures, and
More informationChapter 1 Fundamentals of Java Programming
Chapter 1 Fundamentals of Java Programming Computers and Computer Programming Writing and Executing a Java Program Elements of a Java Program Features of Java Accessing the Classes and Class Members The
More informationManaging Variability in Software Architectures 1 Felix Bachmann*
Managing Variability in Software Architectures Felix Bachmann* Carnegie Bosch Institute Carnegie Mellon University Pittsburgh, Pa 523, USA fb@sei.cmu.edu Len Bass Software Engineering Institute Carnegie
More informationObject Oriented Databases. OOAD Fall 2012 Arjun Gopalakrishna Bhavya Udayashankar
Object Oriented Databases OOAD Fall 2012 Arjun Gopalakrishna Bhavya Udayashankar Executive Summary The presentation on Object Oriented Databases gives a basic introduction to the concepts governing OODBs
More informationJava Application Developer Certificate Program Competencies
Java Application Developer Certificate Program Competencies After completing the following units, you will be able to: Basic Programming Logic Explain the steps involved in the program development cycle
More informationChapter 5 Names, Bindings, Type Checking, and Scopes
Chapter 5 Names, Bindings, Type Checking, and Scopes Chapter 5 Topics Introduction Names Variables The Concept of Binding Type Checking Strong Typing Scope Scope and Lifetime Referencing Environments Named
More informationSoftware development life cycle. Software Engineering - II ITNP92 - Object Oriented Software Design. Requirements. Requirements. Dr Andrea Bracciali
Software development life cycle Software life cycle: Software Engineering - II ITNP92 - Object Oriented Software Design Dr Andrea Bracciali Module Co-ordinator 4B86 abb@cs.stir.ac.uk Spring 2014 (elicitation)
More informationIntroduction to Software Paradigms & Procedural Programming Paradigm
Introduction & Procedural Programming Sample Courseware Introduction to Software Paradigms & Procedural Programming Paradigm This Lesson introduces main terminology to be used in the whole course. Thus,
More informationGlossary of Object Oriented Terms
Appendix E Glossary of Object Oriented Terms abstract class: A class primarily intended to define an instance, but can not be instantiated without additional methods. abstract data type: An abstraction
More informationCSC 742 Database Management Systems
CSC 742 Database Management Systems Topic #4: Data Modeling Spring 2002 CSC 742: DBMS by Dr. Peng Ning 1 Phases of Database Design Requirement Collection/Analysis Functional Requirements Functional Analysis
More informationJava 6 'th. Concepts INTERNATIONAL STUDENT VERSION. edition
Java 6 'th edition Concepts INTERNATIONAL STUDENT VERSION CONTENTS PREFACE vii SPECIAL FEATURES xxviii chapter i INTRODUCTION 1 1.1 What Is Programming? 2 J.2 The Anatomy of a Computer 3 1.3 Translating
More informationCharacteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming
Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming Java has become enormously popular. Java s rapid rise and wide acceptance can be traced to its design
More informationService-Oriented Architecture and Software Engineering
-Oriented Architecture and Software Engineering T-86.5165 Seminar on Enterprise Information Systems (2008) 1.4.2008 Characteristics of SOA The software resources in a SOA are represented as services based
More informationCompiling Object Oriented Languages. What is an Object-Oriented Programming Language? Implementation: Dynamic Binding
Compiling Object Oriented Languages What is an Object-Oriented Programming Language? Last time Dynamic compilation Today Introduction to compiling object oriented languages What are the issues? Objects
More information4. Incorporate Lessons Learned with SDLC
131 4. Incorporate Lessons Learned with SDLC In today s world, there are lots of Software Development Life Cycle Models. We have seen some of them earlier. We have seen the analytical study of these models
More informationSoftware Engineering
Software Engineering Lecture 06: Design an Overview Peter Thiemann University of Freiburg, Germany SS 2013 Peter Thiemann (Univ. Freiburg) Software Engineering SWT 1 / 35 The Design Phase Programming in
More informationAgent Languages. Overview. Requirements. Java. Tcl/Tk. Telescript. Evaluation. Artificial Intelligence Intelligent Agents
Agent Languages Requirements Overview Java Tcl/Tk Telescript Evaluation Franz J. Kurfess, Cal Poly SLO 211 Requirements for agent Languages distributed programming large-scale (tens of thousands of computers)
More informationSoftware Paradigms (Lesson 1) Introduction & Procedural Programming Paradigm
Software Paradigms (Lesson 1) Introduction & Procedural Programming Paradigm Table of Contents 1 Introduction... 2 1.1 Programming Paradigm... 2 1.2 Software Design Paradigm... 3 1.2.1 Design Patterns...
More informationConcepts of Database Management Seventh Edition. Chapter 9 Database Management Approaches
Concepts of Database Management Seventh Edition Chapter 9 Database Management Approaches Objectives Describe distributed database management systems (DDBMSs) Discuss client/server systems Examine the ways
More informationJava EE Web Development Course Program
Java EE Web Development Course Program Part I Introduction to Programming 1. Introduction to programming. Compilers, interpreters, virtual machines. Primitive types, variables, basic operators, expressions,
More informationEngineering Process Software Qualities Software Architectural Design
Engineering Process We need to understand the steps that take us from an idea to a product. What do we do? In what order do we do it? How do we know when we re finished each step? Production process Typical
More informationLecture 9. Semantic Analysis Scoping and Symbol Table
Lecture 9. Semantic Analysis Scoping and Symbol Table Wei Le 2015.10 Outline Semantic analysis Scoping The Role of Symbol Table Implementing a Symbol Table Semantic Analysis Parser builds abstract syntax
More informationImplementation Aspects of OO-Languages
1 Implementation Aspects of OO-Languages Allocation of space for data members: The space for data members is laid out the same way it is done for structures in C or other languages. Specifically: The data
More informationFrom Object-Oriented Programming to Component Software
From Object-Oriented Programming to Component Software OO Languages: Ada, Smalltalk, Java, C++ Class versus Object: Express existence of objects directly in code Code is more expressive, easier to develop,
More informationMotivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures
Part I EAI: Foundations, Concepts, and Architectures 5 Example: Mail-order Company Mail order Company IS Invoicing Windows, standard software IS Order Processing Linux, C++, Oracle IS Accounts Receivable
More informationCACHÉ: FLEXIBLE, HIGH-PERFORMANCE PERSISTENCE FOR JAVA APPLICATIONS
CACHÉ: FLEXIBLE, HIGH-PERFORMANCE PERSISTENCE FOR JAVA APPLICATIONS A technical white paper by: InterSystems Corporation Introduction Java is indisputably one of the workhorse technologies for application
More informationA Comparative Analysis of Structured and Object-Oriented Programming Methods ASAGBA, PRINCE OGHENEKARO; OGHENEOVO, EDWARD E. CPN, MNCS.
JASEM ISSN 1119-8362 All rights reserved Full-text Available Online at www.bioline.org.br/ja J. Appl. Sci. Environ. Manage. December, 2008 Vol. 12(4) 41-46 A Comparative Analysis of Structured and Object-Oriented
More informationLecture 1: Introduction
Programming Languages Lecture 1: Introduction Benjamin J. Keller Department of Computer Science, Virginia Tech Programming Languages Lecture 1 Introduction 2 Lecture Outline Preview History of Programming
More informationInfrastructure that supports (distributed) componentbased application development
Middleware Technologies 1 What is Middleware? Infrastructure that supports (distributed) componentbased application development a.k.a. distributed component platforms mechanisms to enable component communication
More informationAP Computer Science A - Syllabus Overview of AP Computer Science A Computer Facilities
AP Computer Science A - Syllabus Overview of AP Computer Science A Computer Facilities The classroom is set up like a traditional classroom on the left side of the room. This is where I will conduct my
More informationThe Java Series. Java Essentials I What is Java? Basic Language Constructs. Java Essentials I. What is Java?. Basic Language Constructs Slide 1
The Java Series Java Essentials I What is Java? Basic Language Constructs Slide 1 What is Java? A general purpose Object Oriented programming language. Created by Sun Microsystems. It s a general purpose
More informationLecture 7 Notes: Object-Oriented Programming (OOP) and Inheritance
Introduction to C++ January 19, 2011 Massachusetts Institute of Technology 6.096 Lecture 7 Notes: Object-Oriented Programming (OOP) and Inheritance We ve already seen how to define composite datatypes
More informationSoftware Engineering. System Models. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering System Models Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain why the context of a system should be modeled as part of the RE process To describe
More informationUmbrello UML Modeller Handbook
2 Contents 1 Introduction 7 2 UML Basics 8 2.1 About UML......................................... 8 2.2 UML Elements........................................ 9 2.2.1 Use Case Diagram.................................
More informationObject-Oriented Databases Course Review
Object-Oriented Databases Course Review Exam Information Summary OODBMS Architectures 1 Exam Session examination Oral exam in English Duration of 15 minutes 2 Exam Basic Skills: Why, What, How Explain
More informationInformation and Communications Technology Courses at a Glance
Information and Communications Technology Courses at a Glance Level 1 Courses ICT121 Introduction to Computer Systems Architecture This is an introductory course on the architecture of modern computer
More informationJohannes Sametinger. C. Doppler Laboratory for Software Engineering Johannes Kepler University of Linz A-4040 Linz, Austria
OBJECT-ORIENTED DOCUMENTATION C. Doppler Laboratory for Software Engineering Johannes Kepler University of Linz A-4040 Linz, Austria Abstract Object-oriented programming improves the reusability of software
More informationHow To Develop Software
Software Engineering Prof. N.L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture-4 Overview of Phases (Part - II) We studied the problem definition phase, with which
More informationDescription of Class Mutation Mutation Operators for Java
Description of Class Mutation Mutation Operators for Java Yu-Seung Ma Electronics and Telecommunications Research Institute, Korea ysma@etri.re.kr Jeff Offutt Software Engineering George Mason University
More informationIntroduction to Object-Oriented Programming
Introduction to Object-Oriented Programming Objects and classes Abstract Data Types (ADT) Encapsulation and information hiding Aggregation Inheritance and polymorphism OOP: Introduction 1 Pure Object-Oriented
More informationComputer Information Systems (CIS)
Computer Information Systems (CIS) CIS 113 Spreadsheet Software Applications Prerequisite: CIS 146 or spreadsheet experience This course provides students with hands-on experience using spreadsheet software.
More informationTopics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives
Introduction to Programming and Algorithms Module 1 CS 146 Sam Houston State University Dr. Tim McGuire Module Objectives To understand: the necessity of programming, differences between hardware and software,
More informationButton, Button, Whose got the Button?
,, Whose got the?,, Whose got the? (Patterns for breaking client/server relationships) By Robert C. Martin Introduction How many design patterns does it take to turn on a table lamp? This question was
More informationUsing UML Part One Structural Modeling Diagrams
UML Tutorials Using UML Part One Structural Modeling Diagrams by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page 1 Trademarks Object Management Group, OMG, Unified Modeling Language,
More informationChapter 3 Simulation Software. Simulation Modeling and Analysis Chapter 3 Simulation Software Slide 1 of 13
Chapter 3 Simulation Software Simulation Modeling and Analysis Chapter 3 Simulation Software Slide 1 of 13 3.1 Introduction CONTENTS 3.2 Comparison of Simulation Packages with Programming Languages 3.3
More informationTECHNOLOGY Computer Programming II Grade: 9-12 Standard 2: Technology and Society Interaction
Standard 2: Technology and Society Interaction Technology and Ethics Analyze legal technology issues and formulate solutions and strategies that foster responsible technology usage. 1. Practice responsible
More informationObject-Oriented Design Lecture 4 CSU 370 Fall 2007 (Pucella) Tuesday, Sep 18, 2007
Object-Oriented Design Lecture 4 CSU 370 Fall 2007 (Pucella) Tuesday, Sep 18, 2007 The Java Type System By now, you have seen a fair amount of Java. Time to study in more depth the foundations of the language,
More informationIntroduction to Programming Block Tutorial C/C++
Michael Bader Master s Program Computational Science and Engineering C/C++ Tutorial Overview From Maple to C Variables, Operators, Statements Functions: declaration, definition, parameters Arrays and Pointers
More informationObject-Oriented Databases
Object-Oriented Databases based on Fundamentals of Database Systems Elmasri and Navathe Acknowledgement: Fariborz Farahmand Minor corrections/modifications made by H. Hakimzadeh, 2005 1 Outline Overview
More informationAlgorithms, Flowcharts & Program Design. ComPro
Algorithms, Flowcharts & Program Design ComPro Definition Algorithm: o sequence of steps to be performed in order to solve a problem by the computer. Flowchart: o graphical or symbolic representation of
More informationPatterns in. Lecture 2 GoF Design Patterns Creational. Sharif University of Technology. Department of Computer Engineering
Patterns in Software Engineering Lecturer: Raman Ramsin Lecture 2 GoF Design Patterns Creational 1 GoF Design Patterns Principles Emphasis on flexibility and reuse through decoupling of classes. The underlying
More informationChapter 8 The Enhanced Entity- Relationship (EER) Model
Chapter 8 The Enhanced Entity- Relationship (EER) Model Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 8 Outline Subclasses, Superclasses, and Inheritance Specialization
More informationHistory OOP languages Year Language 1967 Simula-67 1983 Smalltalk
History OOP languages Intro 1 Year Language reported dates vary for some languages... design Vs delievered 1957 Fortran High level programming language 1958 Lisp 1959 Cobol 1960 Algol Structured Programming
More informationComp 411 Principles of Programming Languages Lecture 34 Semantics of OO Languages. Corky Cartwright Swarat Chaudhuri November 30, 20111
Comp 411 Principles of Programming Languages Lecture 34 Semantics of OO Languages Corky Cartwright Swarat Chaudhuri November 30, 20111 Overview I In OO languages, data values (except for designated non-oo
More informationComputer Science 281 Binary and Hexadecimal Review
Computer Science 281 Binary and Hexadecimal Review 1 The Binary Number System Computers store everything, both instructions and data, by using many, many transistors, each of which can be in one of two
More informationClient/Server Computing Distributed Processing, Client/Server, and Clusters
Client/Server Computing Distributed Processing, Client/Server, and Clusters Chapter 13 Client machines are generally single-user PCs or workstations that provide a highly userfriendly interface to the
More informationHandout 1. Introduction to Java programming language. Java primitive types and operations. Reading keyboard Input using class Scanner.
Handout 1 CS603 Object-Oriented Programming Fall 15 Page 1 of 11 Handout 1 Introduction to Java programming language. Java primitive types and operations. Reading keyboard Input using class Scanner. Java
More informationKarunya University Dept. of Information Technology
PART A Questions 1. Mention any two software process models. 2. Define risk management. 3. What is a module? 4. What do you mean by requirement process? 5. Define integration testing. 6. State the main
More informationTHE EVOLVING ROLE OF DATABASE IN OBJECT SYSTEMS
THE EVOLVING ROLE OF DATABASE IN OBJECT SYSTEMS William Kent Database Technology Department Hewlett-Packard Laboratories Palo Alto, California kent@hpl.hp.com 1990 CONTENTS: ABSTRACT 1 INTRODUCTION...
More informationCourse Title: Software Development
Course Title: Software Development Unit: Customer Service Content Standard(s) and Depth of 1. Analyze customer software needs and system requirements to design an information technology-based project plan.
More informationServer-Side Scripting and Web Development. By Susan L. Miertschin
Server-Side Scripting and Web Development By Susan L. Miertschin The OOP Development Approach OOP = Object Oriented Programming Large production projects are created by teams Each team works on a part
More informationJava CPD (I) Frans Coenen Department of Computer Science
Java CPD (I) Frans Coenen Department of Computer Science Content Session 1, 12:45-14:30 (First Java Programme, Inheritance, Arithmetic) Session 2, 14:45-16:45 (Input and Programme Constructs) Materials
More informationCase studies: Outline. Requirement Engineering. Case Study: Automated Banking System. UML and Case Studies ITNP090 - Object Oriented Software Design
I. Automated Banking System Case studies: Outline Requirements Engineering: OO and incremental software development 1. case study: withdraw money a. use cases b. identifying class/object (class diagram)
More informationThe EMSX Platform. A Modular, Scalable, Efficient, Adaptable Platform to Manage Multi-technology Networks. A White Paper.
The EMSX Platform A Modular, Scalable, Efficient, Adaptable Platform to Manage Multi-technology Networks A White Paper November 2002 Abstract: The EMSX Platform is a set of components that together provide
More informationManaging a Class Hierarchy with SQL in Matisse
Managing a Class Hierarchy with SQL in Matisse A Technical Brief Matisse Software Inc. 2003 MATISSE SOFTWARE INC., ALL RIGHTS RESERVED. Matisse is a registered trademark of Matisse software Inc. Other
More informationPart 7: Object Oriented Databases
Part 7: Object Oriented Databases Junping Sun Database Systems 7-1 Database Model: Object Oriented Database Systems Data Model = Schema + Constraints + Relationships (Operations) A logical organization
More informationOKLAHOMA SUBJECT AREA TESTS (OSAT )
CERTIFICATION EXAMINATIONS FOR OKLAHOMA EDUCATORS (CEOE ) OKLAHOMA SUBJECT AREA TESTS (OSAT ) FIELD 081: COMPUTER SCIENCE September 2008 Subarea Range of Competencies I. Computer Use in Educational Environments
More informationDesign by Contract beyond class modelling
Design by Contract beyond class modelling Introduction Design by Contract (DbC) or Programming by Contract is an approach to designing software. It says that designers should define precise and verifiable
More informationUNIVERSITY OF SURREY. BSc Programmes in Computing. Level 1 Examination. CS183: Systems Analysis and Design. Time allowed: 2 hours Spring Semester 2006
CS/183/17/SS06 UNIVERSITY OF SURREY BSc Programmes in Computing Level 1 Examination CS183: Systems Analysis and Design Time allowed: 2 hours Spring Semester 2006 Answer ALL questions in Section A and TWO
More informationABET General Outcomes. Student Learning Outcomes for BS in Computing
ABET General a. An ability to apply knowledge of computing and mathematics appropriate to the program s student outcomes and to the discipline b. An ability to analyze a problem, and identify and define
More informationBusiness Rule Standards -- Interoperability and Portability
Rule Standards -- Interoperability and Portability April 2005 Mark H. Linehan Senior Technical Staff Member IBM Software Group Emerging Technology mlinehan@us.ibm.com Donald F. Ferguson IBM Fellow Software
More informationCSE 307: Principles of Programming Languages
Course Organization Introduction CSE 307: Principles of Programming Languages Spring 2015 R. Sekar Course Organization Introduction 1 / 34 Topics 1. Course Organization Info and Support Course Description
More informationThe Rules 1. One level of indentation per method 2. Don t use the ELSE keyword 3. Wrap all primitives and Strings
Object Calisthenics 9 steps to better software design today, by Jeff Bay http://www.xpteam.com/jeff/writings/objectcalisthenics.rtf http://www.pragprog.com/titles/twa/thoughtworks-anthology We ve all seen
More informationObject Oriented Software Design II
Object Oriented Software Design II Introduction to C++ Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa February 20, 2012 G. Lipari (Scuola Superiore Sant Anna) C++ Intro February
More informationHow to simplify software development with high level programming languages? Pierre-Alexandre Voye - ontologiae@gmail.com
How to simplify software development with high level programming languages? Pierre-Alexandre Voye - ontologiae@gmail.com Projects structures - Both in proprietary and open source project, steps are the
More informationSOACertifiedProfessional.Braindumps.S90-03A.v2014-06-03.by.JANET.100q. Exam Code: S90-03A. Exam Name: SOA Design & Architecture
SOACertifiedProfessional.Braindumps.S90-03A.v2014-06-03.by.JANET.100q Number: S90-03A Passing Score: 800 Time Limit: 120 min File Version: 14.5 http://www.gratisexam.com/ Exam Code: S90-03A Exam Name:
More informationCS 111 Classes I 1. Software Organization View to this point:
CS 111 Classes I 1 Software Organization View to this point: Data Objects and primitive types Primitive types operators (+, /,,*, %). int, float, double, char, boolean Memory location holds the data Objects
More informationProgramming Language Constructs as Basis for Software Architectures
Programming Language Constructs as Basis for Software Architectures 1 From individual parts to components In the 50s: Machine/Assembler programs: bound to specific hardware In the 60s-70s: Higher programming
More informationConcepts and terminology in the Simula Programming Language
Concepts and terminology in the Simula Programming Language An introduction for new readers of Simula literature Stein Krogdahl Department of Informatics University of Oslo, Norway April 2010 Introduction
More informationMany applications consist of one or more classes, each containing one or more methods. If you become part of a development team in industry, you may
Chapter 1 Many applications consist of one or more classes, each containing one or more methods. If you become part of a development team in industry, you may work on applications that contain hundreds,
More informationChapter 13 Computer Programs and Programming Languages. Discovering Computers 2012. Your Interactive Guide to the Digital World
Chapter 13 Computer Programs and Programming Languages Discovering Computers 2012 Your Interactive Guide to the Digital World Objectives Overview Differentiate between machine and assembly languages Identify
More informationThe Phases of an Object-Oriented Application
The Phases of an Object-Oriented Application Reprinted from the Feb 1992 issue of The Smalltalk Report Vol. 1, No. 5 By: Rebecca J. Wirfs-Brock There is never enough time to get it absolutely, perfectly
More informationOOP? What is OOP? Why? OOP in a nutshell. Stéphane Ducasse 2.1
OOP? What is OOP? Why? OOP in a nutshell Stéphane Ducasse 2.1 Reality on Software Development Analyze Maintain Design Construct Test What is important? maintainability extensibility understandability Stéphane
More informationThe Clean programming language. Group 25, Jingui Li, Daren Tuzi
The Clean programming language Group 25, Jingui Li, Daren Tuzi The Clean programming language Overview The Clean programming language first appeared in 1987 and is still being further developed. It was
More informationCo-Creation of Models and Metamodels for Enterprise. Architecture Projects.
Co-Creation of Models and Metamodels for Enterprise Architecture Projects Paola Gómez pa.gomez398@uniandes.edu.co Hector Florez ha.florez39@uniandes.edu.co ABSTRACT The linguistic conformance and the ontological
More informationInstructional Design Framework CSE: Unit 1 Lesson 1
Instructional Design Framework Stage 1 Stage 2 Stage 3 If the desired end result is for learners to then you need evidence of the learners ability to then the learning events need to. Stage 1 Desired Results
More information