Part 1: Introduction. Course Contents. Books. Goals. Sources for Slides (Acknowledgements) Webpage. The course web page is at
|
|
- Liliana Norma Barnett
- 5 years ago
- Views:
Transcription
1 1 Course Contents 2 Part 1: Introduction Difference between conventional and objectoriented programming Introduction to object-oriented programming with Java lots of Java details aimed at producing and maintaining medium sized software systems. Goals 3 Books 4 Sound knowledge of programming principles Sound knowledge of object-orientation Able to critically assess the quality of small and medium software systems Able to implement a medium-sized software systems in Java Java How to program Deitel & Deitel, Prentice Hall Objects First with Java A Practical Introduction using BlueJ David J. Barnes & Michael Kölling, Pearson Education, 2003 ISBN Object-Oriented Software Construction Bertrand Meyer (Pearson 1997), ISBN Sources for Slides (Acknowledgements) 5 Webpage 6 David J. Barnes & Michael Kölling Sigi Benkner, University of Vienna, Inst. f. Software Science Donald Bell, California State Polytechnic University, Pomona Deitel & Deitel, Prentice Hall T. Fahringer, Inst. of Computer Science, UIBK The course web page is at dps.uibk.ac.at/~tf/lehre/ss04/seii/vorlesung.html There is also a mailing list for this course. Please check them regularly. They will be used for announcements and distribution of material.
2 Course overview (1) 7 Software Engineering 8 Introduction to Computer Introduction to Java Applications Introduction to Java Applets Control Structures Arrays Object Oriented Programming Inheritance Polymorphism Exception Handling and much more Software Engineering should help to reach similar quality levels for large software systems as achieved for classical engineering disciplines. Goals: cost-effective software development high quality meet all time constraints Example: Erroneous Software 22. Juli 1962, Cape Canaveral/Florida: Start of the 1st US Venus satellite Mariner 1. Excerpt of a Fortran program to control the carrier rocket Atlas-Agena B (NASA):... IF (TVAL. LT. 0.2E-2) GOTO 40 DO 40 M = 1, 3 WO = (M-1) *0,5... DO 5 K = 1. 3 T (K) = WO Z = 1.0/(X**2) *B1** E-4*BO**2 D (K) = 3.076E-2*2.0*(1.0/X*BO*B E-4(BO**2-X*BO**2-X*BO*B1))/Z E (K) = H**2* *WO/SIN (WO)*Z H = D (K) E (K) 5 CONTINUE 10 CONTINUE Y = H/WO-1 40 CONTINUE 9 Definition: Software Engineering F.L. Bauer (NATO Konferenz, 1968) The establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficently on real machines. Standard Glossar IEEE (1983)... Is the systematic approach to the development, operation, maintenance, and retirement of software. 10 Main Task of Software Development 11 Software 12 Development The term software comprises a set of artifacts: programs documents data Quality Assurance Maintenance Management Software products are developed for a certain customer (custom software) or for the general market (generic software).
3 Costs and Complexity of Software 13 Traditional Software Development 14 COST EFFORT LINES OF Products (US million) (Man Year) CODE Lotus V Space Shuttle CitiBank Teller Waterfall model Dominated software development for a long time Widely applied through many different variations Requirement Analysis Design Implementation Test Maintenance A paramount problem of software development is the handling of complexity. Trend towards more and more complex software: Distributed applications (Internet, Grid, Mobile Computing,...) Multimedia Real time applications Main problems: Strict classification of software projects Discrete transition among phases Late discovery of design errors (late design breakage) Late appearance of actual code Risk not to meet requirements Impedance mismatches Impedance mismatches 15 Traditional Software Development (1) 16 Structured Analysis and Design (SA/SD) As Management requested it. As the Project Leader defined it. As Systems designed it. Basis are analysis techniques developed between 1965 u Center: Modeling of processes through functions. Widely applied (conventional software development) Main focus: Implementation and Test Complex maintenance Aufwand As Programming developed it. As Operations installed it. What the user wanted. (Pre-1970 cartoon; origin unknown) Requirement Analysis Design Implementation Test Traditional Software Development (2) Software Errors during Design and Implementation 17 Costs of Error Correction % of errors found before release x Coding 36% 64% Analyse/Design 1, 5-6 x 1 x Defintion Development After release 30% of errors found before release
4 Object-Oriented Software Development At the end of the 80s a change of paradigm in software engineering occurred: object orientation Object-oriented Analysis and Design (OOA/OOD) Based on OO technology (starting in 1985) Object models are central (union of data and process models) centric: analysis and design Simplified maintenance Aufwand 19 Object-oriented versus Procedural Object-oriented Paradigm Data and Operations (Methods) define unit Class Center issue: What Smalltalk, C++, Java,... In contrast: procedural programming Separation of data and methods (procedures) Center issue: How Pascal, C, Fortran, Requirement Analysis Design Implementation Test OOA/OOD versus SA/SD 21 Introduction to Objects 22 Library Information System Object-Oriented A/D Structured A/D Catalog Book Librarian Library OOA/OOD Classification based on concepts (objects) Record Loans System Add Resources Report Fines SA/SD Classification based on processes (functions) What are Objects? To a child they are something perceptible by one or more of the senses. To an IT professional they are a software packets that abstract important features of a real object. Porsche
5 25 26 Los Angeles Alan Kay (Customer) Versateller 1. Things Porsche 2. Places Los Angeles 3. Roles Alan Kay 4. Systems Versateller Real objects have characteristics: 29 Real objects also have behaviors: Porsches Top Speed 2. Los Angeles Population 3. Customers d Owed 4. Versatellers Amount on Hand 1. Porsches Accelerate 2. Los Angeles Tax 3. Customers Purchase 4. Versatellers Dispense Cash
6 31 32 Objekts have characteristics and behavior Porsche Top Speed, Accelerate Los Angeles Population, Tax Alan Kay Amount Owed, Purchase Versateller Amount on Hand, Dispense Cash Key 1 Key2 Key 3 A software object has both characteristics (variables) and behavior (methods) encapsulated in it. Software objects communicate by messages. Software objects can inherit characteristics and behavior just like many real objects. Key one: Characteristics are encapsulated by the objects behavior Greeting 33 Key two: Objects communicate by messages 34 Bank Location Call Bank Call Bank Location Dispense Money $100 Key two (also): Messages are polymorphic (mean different things to different objects) 35 Key three: Objects can be classified into classes 36 triangle.redraw() ellipse.redraw() rectangle.redraw() Classes are a template that is used to manufacture objects (instances) (Note that instance is a synonym of object) Polymorphism means different implementations can be hidden behind a common interface.
7 Key three (also): Classes contain the behavior called methods while the instances contain the characteristics called variables Interest Withdraw 37 Key three (also): Each class can inherit both variables and methods ACCOUNT Account# Open Deposit 38 SAVINGS Minimum Withdrawal CHECKING Service Charge Check Key three (also): 39 Object 40 Methods and variables can override their parents (CD Deposit overrides Account Deposit) ACCOUNT Account# Open Deposit A software packet that abstracts the salient behavior and characteristics of a real object into a software package that simulates the real object. CD Rate Due Date Renew Deposit SAVINGS Minimum Withdrawal CHECKING Service Charge Check Encapsulation Message The containment of the data behind a software membrane consisting of methods. The data can only be accessed through the encapsulated behavior. A signal from a client object requesting services from a server object. The message may contain arguments. The server object may return a response.
8 Class 43 Instance 44 A template for defining new object instances. It is sometimes called an object class. The methods reside in the object class. A term used to refer to an actual object. Sometimes called an object instance. Inheritance A technique to allow classes to use a parent classes methods and data. Inheritance can have many levels 45 Polymorphism A request handling mechanism that selects a method depending on the message and the target object. Thus the message means different things to different objects. 46 Overriding 47 Method 48 Where an overloaded method is chosen from the child class instead of from the parent class. The actual computer code that is encapsulated in the object class.
9 49 Summary 50 Subclass A class that has a parent class to inherit from. Object technology is the current modern paradigm OO can enable reuse of system design and coding effort (and consequently save a lot of time and money) Systems built with object technology should be able to be built faster, be more reliable, and be more maintainable Use of object technology requires a different way of thinking than does traditional programming
Part 1: Introduction. Course Contents. Goals. Books. Difference between conventional and objectoriented
1 Course Contents 2 Part 1: Introduction Difference between conventional and objectoriented programming Introduction to object-oriented programming with Java lots of Java details aimed at producing and
More informationObjects First with Java A Practical Introduction using BlueJ
Objects First with Java A Practical Introduction using BlueJ David J. Barnes Michael Kölling Extensions by H.-J. Bungartz and T. Neckel 2.1 Course Contents Introduction to object-oriented programming with
More informationObjects First with Java A Practical Introduction using BlueJ
Objects First with Java A Practical Introduction using BlueJ David J. Barnes Michael Kölling Extensions by H.-J. Bungartz, T. Neckel and M. Roderus 2.1 Course Contents Introduction to object-oriented programming
More informationObject-Oriented and Classical Software Engineering
Slide 1.1 CHAPTER 1 Slide 1.2 Object-Oriented and Classical Software Engineering Eighth Edition, WCB/McGraw-Hill, 2011 THE SCOPE OF SOFTWARE ENGINEERING Stephen R. Schach Outline Slide 1.3 Outline (contd)
More informationObject-Oriented and Classical Software Engineering
Object-Oriented and Classical Software Engineering Slide 1.1 Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach srs@vuse.vanderbilt.edu CHAPTER 1 Slide 1.2 THE SCOPE OF SOFTWARE ENGINEERING 1 Outline
More informationIntroduction to Computers and Programming Languages. CS 180 Sunil Prabhakar Department of Computer Science Purdue University
Introduction to Computers and Programming Languages CS 180 Sunil Prabhakar Department of Computer Science Purdue University 1 Objectives This week we will study: The notion of hardware and software Programming
More informationAdvanced Database Applications. Object Oriented Database Management Chapter 13 10/29/2016. Object DBMSs
Object Oriented Database Chapter 13 1 Object DBMSs Underlying concepts: Freely sharing data across processing routines creates unacceptable data dependencies All software should be constructed out of standard,
More informationTIM 50 - Business Information Systems
TIM 50 - Business Information Systems Lecture 15 UC Santa Cruz Nov 10, 2016 Class Announcements n Database Assignment 2 posted n Due 11/22 The Database Approach to Data Management The Final Database Design
More informationObject-Oriented Programming in C++/Handout 01 Page 1 of 8
Object-Oriented Programming in C++/Handout 01 Page 1 of 8 Table of Contents Table of Contents... 1 Learning Objectives... 2 Object-Oriented Approach... 2 Advantages of Object-Oriented Approach... 2 Principles
More informationOOSE2 Vererbung und Polymorphie mit BlueJ
OOSE2 Vererbung und Polymorphie mit BlueJ Lehrstuhl Softwaretechnologie, Dr. Birgit Demuth Sommersemester 2016 Erweiterung von HelloLibrary (U02) SS 2016 OOSE 2 2 BlueJ SS 2016 OOSE 2 3 HelloLibrary (U02):
More information1. Write two major differences between Object-oriented programming and procedural programming?
1. Write two major differences between Object-oriented programming and procedural programming? A procedural program is written as a list of instructions, telling the computer, step-by-step, what to do:
More informationCPS122 Lecture: Course Intro; Introduction to Object-Orientation
Objectives: CPS122 Lecture: Course Intro; Introduction to Object-Orientation 1. To introduce the course requirements and procedures. 2. To introduce fundamental concepts of OO: object, class Materials:
More informationObjects First with Java
^ Objects First with Java A Practical Introduction using BlueJ David J. Barnes and Michael Kolling Second edition PEARSON Prentice Hall Harlow, England London New York Boston San Francisco Toronto Sydney
More informationIntroduction to Java and OOP. Hendrik Speleers
Introduction to Java and OOP Hendrik Speleers Introduction to Java Additional course material Thinking in JAVA (4th edition) by Bruce Eckel Free download of older editions: http://mindview.net/books/tij4
More informationInheritance and Encapsulation. Amit Gupta
Inheritance and Encapsulation Amit Gupta Project 1 How did it go? What did you like about it? What did you not like? What can we do to help? Suggestions Ask questions if you don t understand a concept
More informationLecture Notes on Programming Languages
Lecture Notes on Programming Languages 85 Lecture 09: Support for Object-Oriented Programming This lecture discusses how programming languages support object-oriented programming. Topics to be covered
More informationObject oriented programming Concepts
Object oriented programming Concepts Naresh Proddaturi 09/10/2012 Naresh Proddaturi 1 Problems with Procedural language Data is accessible to all functions It views a program as a series of steps to be
More informationData Entry Oracle FLEXCUBE Universal Banking Release [May] [2011] Oracle Part Number E
Data Entry Oracle FLEXCUBE Universal Banking Release 11.3.0 [May] [2011] Oracle Part Number E51511-01 Table of Contents Data Entry 1. ABOUT THIS MANUAL... 1-1 1.1 INTRODUCTION... 1-1 1.1.1 Audience...
More informationCompulsory course in Computer Science
Compulsory course in Computer Science University of Macau Faculty of Science and Technology Department of Computer and Information Science SFTW241 Programming Languages Architecture I Syllabus 2 nd Semester
More informationOverview. OOP: model, map, reuse, extend. Examples of objects. Introduction to Object Oriented Design
Overview Introduction to Object Oriented Design Understand Classes and Objects. Understand some of the key concepts/features in the Object Oriented paradigm. Benefits of Object Oriented Design paradigm.
More informationA STUDY OF OBJECT ORIENTED ANALYSIS AND DESIGN
A STUDY OF OBJECT ORIENTED ANALYSIS AND DESIGN GARJE RAKESH RAMESHRAO RESEARCH SCHOLAR, DEPT. OF COMPUTER SCIENCE CMJ UNIVERSITY, SHILLONG, MEGHALAYA INTRODUCTION Object-oriented Analysis and Design is
More informationOBJECTS FIRST WITH JAVA 5TH EDITION PDF
OBJECTS FIRST WITH JAVA 5TH EDITION PDF ==> Download: OBJECTS FIRST WITH JAVA 5TH EDITION PDF OBJECTS FIRST WITH JAVA 5TH EDITION PDF - Are you searching for Objects First With Java 5th Edition Books?
More informationObject Oriented Programming
Unit 19: Object Oriented Unit code: K/601/1295 QCF Level 4: BTEC Higher National Credit value: 15 Aim To provide learners with an understanding of the principles of object oriented programming as an underpinning
More informationPC204. Lecture 5 Programming Methodologies. Copyright 2000 by Conrad Huang and the Regents of the University of California. All rights reserved.
PC204 Lecture 5 Programming Methodologies Copyright 2000 by Conrad Huang and the Regents of the University of California. All rights reserved. Programming Paradigms Software Engineering Exploratory Programming
More informationUML diagrams. Software artifacts include: SRS, SDS, test cases, source code, technical/user manual, software architecture, etc.
UML Modeling UML diagrams UML (Unified Modeling Language) is a general purpose visual modeling language that provides different types of diagrammatic techniques and notations to specify, visualize, analyze,
More informationREVIEW OF THE BASIC CHARACTERISTICS OF OBJECT ORIENTATION
c08classandmethoddesign.indd Page 282 13/12/14 2:57 PM user 282 Chapter 8 Class and Method Design acceptance of UML as a standard object notation, standardized approaches based on work of many object methodologists
More information1st Semester MTCE 601A COMPUTER SYSTEM SOFTWARE
1st Semester MTCE 601A COMPUTER SYSTEM SOFTWARE LECTURE-1 Syllabus Introduction 1.1 Introduction to Object Oriented 1.2 Introduction to UML 1.3 Software Process and OOA&D 1.4 Component and CBSD 1.5 Patterns
More information1. BlueJ bank example with subclasses of BankAccount 2. Transparency of UML diagram for BankAccount class hierarchy
CS112 Lecture: Fundamental Concepts of Object-Oriented Software Development Last revised 1/13/04 Objectives: 1. To review/introduce key concepts of object-orientation: object, class, data members (class
More informationInheritance. EEC 521: Software Engineering. Dealing with Change. Polymorphism. Software Design. Changing requirements Code needs to be flexible
Inheritance EEC 521: Software Engineering Software Design Design Patterns: Decoupling Dependencies 10/15/09 EEC 521: Software Engineering 1 Inheritance is the mechanism by which one class can acquire properties/responsibilities
More informationBasics of Object Oriented Programming FCITR MAGAZINE DR. SHAKEEL AHMAD
Basics of Object Oriented Programming FCITR MAGAZINE DR. SHAKEEL AHMAD FACULTY OF COMPUTING AND INFORMATION TECHNOLOGY AT RABIGH KING ABDULAZIZ UNIVERSITY KINGDOM SAUDI ARABIA Introduction Objects are
More informationChapter 10 :: Data Abstraction and Object Orientation
Chapter 10 :: Data Abstraction and Object Orientation Programming Language Pragmatics, Fourth Edition Michael L. Scott Copyright 2016 Elsevier Chapter10_Data_Abstraction_and_Object_Orientation_4e 1 Object-Oriented
More informationLecture 09. Ada to Software Engineering. Mr. Mubashir Ali Lecturer (Dept. of Computer Science)
Lecture 09 Ada to Software Engineering Mr. Mubashir Ali Lecturer (Dept. of dr.mubashirali1@gmail.com 1 Summary of Previous Lecture 1. ALGOL 68 2. COBOL 60 3. PL/1 4. BASIC 5. Early Dynamic Languages 6.
More informationObjectives: 1. Introduce the course. 2. Define programming 3. Introduce fundamental concepts of OO: object, class
CS112 Lecture: Course Introduction Last revised 1/3/06 Objectives: 1. Introduce the course. 2. Define programming 3. Introduce fundamental concepts of OO: object, class Materials: 1. Questionnaire 2. Syllabi
More informationChapter 9 :: Data Abstraction and Object Orientation
Chapter 9 :: Data Abstraction and Object Orientation Programming Language Pragmatics Michael L. Scott Control or PROCESS abstraction is a very old idea (subroutines!), though few languages provide it in
More informationTIM 50 - Business Information Systems
TIM 50 - Business Information Systems Lecture 15 UC Santa Cruz May 20, 2014 Announcements DB 2 Due Tuesday Next Week The Database Approach to Data Management Database: Collection of related files containing
More informationBASIC CONCEPT OF OOP
Chapter-6 BASIC CONCEPT OF OOP Introduction: Object oriented programmingg is the principle of design and development of programs using modular approach. Object oriented programmingg approach provides advantages
More informationData Structures (list, dictionary, tuples, sets, strings)
Data Structures (list, dictionary, tuples, sets, strings) Lists are enclosed in brackets: l = [1, 2, "a"] (access by index, is mutable sequence) Tuples are enclosed in parentheses: t = (1, 2, "a") (access
More informationObject Orientated Analysis and Design. Benjamin Kenwright
Notation Part 2 Object Orientated Analysis and Design Benjamin Kenwright Outline Review What do we mean by Notation and UML? Types of UML View Continue UML Diagram Types Conclusion and Discussion Summary
More informationJAVA: A Primer. By: Amrita Rajagopal
JAVA: A Primer By: Amrita Rajagopal 1 Some facts about JAVA JAVA is an Object Oriented Programming language (OOP) Everything in Java is an object application-- a Java program that executes independently
More informationINSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad
INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad - 500 043 Course Title Course Code Regulation COMPUTER SCIENCE AND ENGINEERING COURSE DESCRIPTION FORM JAVA PROGRAMMING A40503 R15-JNTUH
More informationCITS2210. Object-Oriented Programming. Topic 1. Introduction and Fundamentals: Thinking Object-Oriented
CITS2210 Object-Oriented Programming Topic 1. Introduction and Fundamentals: Thinking Object-Oriented Summary: This topic considers the fundamental concepts behind object orientation, and why they are
More informationObject Oriented Design: Identifying Objects
Object Oriented Design: Identifying Objects Review What did we do in the last lab? What did you learn? What classes did we use? What objects did we use? What is the difference between a class and an object?
More informationOverview of OOP. Dr. Zhang COSC 1436 Summer, /18/2017
Overview of OOP Dr. Zhang COSC 1436 Summer, 2017 7/18/2017 Review Data Structures (list, dictionary, tuples, sets, strings) Lists are enclosed in square brackets: l = [1, 2, "a"] (access by index, is mutable
More informationIntroduction To Programming Using Java: An Object- Oriented Approach (2nd Edition) By David Arnow, Scott Dexter
Introduction To Programming Using Java: An Object- Oriented Approach (2nd Edition) By David Arnow, Scott Dexter Second edition Practical Software Development using UML and Java. Second.. in the formal
More informationObject-Oriented Design. Module UFC016QM. and Programming. Objects and Classes. O-O Design Unit 2: Faculty of Computing, Engineering
Module UFC016QM Object-Oriented Design and Programming O-O Design Unit 2: Objects and Classes Faculty of Computing, Engineering and Mathematical Sciences Schedule Quick recap on Use Case diagrams UWE Flix
More informationIntroduction to Computers and Java. Objectives. Outline. Harald Gall, Prof. Dr. Institut für Informatik Universität Zürich.
Introduction to Computers and Java Harald Gall, Prof. Dr. Institut für Informatik Universität Zürich http://seal.ifi.uzh.ch 2008 W. Savitch, F.M. Carrano, Pearson Prentice Hall Objectives! Overview computer
More informationIntroduction to Computers and Java
Introduction to Computers and Java Harald Gall, Prof. Dr. Institut für Informatik Universität Zürich http://seal.ifi.uzh.ch 2008 W. Savitch, F.M. Carrano, Pearson Prentice Hall Objectives! Overview computer
More informationObject-Oriented Analysis, Design and Implementation. Case Study Part II
Object-Oriented Analysis, Design and Implementation Case Study Part II Assoc. Prof. Marenglen Biba MSc in Computer Science, UoG-UNYT Foundation Programme (C) 2010 Pearson Education, Inc. All 3-1 Further
More informationSpring 2003 Instructor: Dr. Shahadat Hossain. Administrative Matters Course Information Introduction to Programming Techniques
1 CPSC2620 Advanced Programming Spring 2003 Instructor: Dr. Shahadat Hossain 2 Today s Agenda Administrative Matters Course Information Introduction to Programming Techniques 3 Course Assessment Lectures:
More informationJava: How To Program, 9th Edition (Deitel) By Harvey Deitel, Paul Deitel READ ONLINE
Java: How To Program, 9th Edition (Deitel) By Harvey Deitel, Paul Deitel READ ONLINE Java. How to Program, 9th Edition (early objects) It's very expensive and I.com/t/93473/Book-Reviews/Java-Program-Harvey-Deitel-Paul
More informationCHAPTER 5 GENERAL OOP CONCEPTS
CHAPTER 5 GENERAL OOP CONCEPTS EVOLUTION OF SOFTWARE A PROGRAMMING LANGUAGE SHOULD SERVE 2 RELATED PURPOSES : 1. It should provide a vehicle for programmer to specify actions to be executed. 2. It should
More informationIntroduction to Computers and Java
Introduction to Computers and Java Harald Gall, Prof. Dr. Institut für Informatik Universität Zürich http://seal.ifi.uzh.ch 2008 W. Savitch, F.M. Carrano, Pearson Prentice Hall Objectives Overview computer
More informationPROGRAMMING LANGUAGE PARADIGMS & THE MAIN PRINCIPLES OF OBJECT-ORIENTED PROGRAMMING
PROGRAMMING LANGUAGE PARADIGMS & THE MAIN PRINCIPLES OF OBJECT-ORIENTED PROGRAMMING JAN BARTONÍČEK This paper's goal is to briefly explain the basic theory behind programming languages and their history
More informationIntroduction to Computers and Java
Introduction to Computers and Java Chapter 1 Objectives Overview of computer hardware and software, programs and compilers Introduce program design and objectoriented programming Overview of the Java programming
More informationBack to ObjectLand. Contents at: Chapter 5. Questions of Interest. encapsulation. polymorphism. inheritance overriding inheritance super
korienekch05.qxd 11/12/01 4:06 PM Page 105 5 Back to ObjectLand Contents at: Chapter 5 #( encapsulation polymorphism inheritance overriding inheritance super learning the class hierarchy finding classes
More information2. COURSE DESIGNATION: 3. COURSE DESCRIPTIONS:
College of San Mateo Official Course Outline 1. COURSE ID: CIS 278 TITLE: (CS1) Programming Methods: C++ C-ID: COMP 122 Units: 4.0 units Hours/Semester: 48.0-54.0 Lecture hours; 48.0-54.0 Lab hours; and
More informationCoordination Patterns
Coordination Patterns 1. Coordination Patterns Design Patterns and their relevance for Coordination Oscar Nierstrasz Software Composition Group Institut für Informatik (IAM) Universität Bern oscar@iam.unibe.ch
More informationMore on Design. CSCI 5828: Foundations of Software Engineering Lecture 23 Kenneth M. Anderson
More on Design CSCI 5828: Foundations of Software Engineering Lecture 23 Kenneth M. Anderson Outline Additional Design-Related Topics Design Patterns Singleton Strategy Model View Controller Design by
More informationIntroduction to Computers and Java. Objectives. Outline. Harald Gall, Prof. Dr. Institut für Informatik Universität Zürich.
Introduction to Computers and Java Harald Gall, Prof. Dr. Institut für Informatik Universität Zürich http://seal.ifi.uzh.ch 2008 W. Savitch, F.M. Carrano, Pearson Prentice Hall Objectives Overview computer
More informationObject-Oriented and Classical Software Engineering
Slide 1.1 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach srs@vuse.vanderbilt.edu CHAPTER 1 Slide 1.2 SCOPE OF SOFTWARE ENGINEERING Outline Slide
More informationPrinciples of Software Construction: Objects, Design, and Concurrency
Principles of Software Construction: Objects, Design, and Concurrency Designing (sub-) systems Responsibility assignment Charlie Garrod Michael Hilton School of Computer Science 1 Administrivia Reading
More informationObject Oriented Programming
Binnur Kurt kurt@ce.itu.edu.tr Istanbul Technical University Computer Engineering Department 1 Version 0.1.2 About the Lecturer BSc İTÜ, Computer Engineering Department, 1995 MSc İTÜ, Computer Engineering
More informationSoftware Architectures. Lecture 6 (part 1)
Software Architectures Lecture 6 (part 1) 2 Roadmap of the course What is software architecture? Designing Software Architecture Requirements: quality attributes or qualities How to achieve requirements
More informationIntroduction to Computers and Java
Walter Savitch Frank M. Carrano Introduction to Computers and Java Chapter 1 Objectives Overview computer hardware and software Introduce program design and objectoriented programming Overview the java
More informationGoals of Lecture. Lecture 27: OO Design Patterns. Pattern Resources. Design Patterns. Cover OO Design Patterns. Pattern Languages of Programming
Goals of Lecture Lecture 27: OO Design Patterns Cover OO Design Patterns Background Examples Kenneth M. Anderson Object-Oriented Analysis and Design CSCI 6448 - Spring Semester, 2001 April 24, 2001 Kenneth
More informationIntroduction To Software Development CSC Spring 2019 Howard Rosenthal
Introduction To Software Development CSC 295-01 Spring 2019 Howard Rosenthal Course References Materials for this course have utilized materials in the following documents. Additional materials taken from
More informationBCS Higher Education Qualifications. Diploma in IT. Object Oriented Programming Syllabus
BCS Higher Education Qualifications Diploma in IT Object Oriented Programming Syllabus Version 3.0 December 2016 This is a United Kingdom government regulated qualification which is administered and approved
More informationIntroduction to Object-Oriented Programming
Introduction to Object-Oriented Programming Objects and classes Abstract Data Types (ADT). Encapsulation OOP: Introduction 1 Pure Object-Oriented Languages Five rules [Source: Alan Kay]: Everything in
More informationObjects First With Java: A Practical Introduction Using BlueJ (5th Edition) By David J. Barnes, Michael Kolling
Objects First With Java: A Practical Introduction Using BlueJ (5th Edition) By David J. Barnes, Michael Kolling Michael Kölling is a German computer scientist, best known for the development of the BlueJ
More informationComp 249 Programming Methodology
Comp 249 Programming Methodology Chapter 7 - Inheritance Part A Dr. Aiman Hanna Department of Computer Science & Software Engineering Concordia University, Montreal, Canada These slides has been extracted,
More informationProgramming In Java Prof. Debasis Samanta Department of Computer Science Engineering Indian Institute of Technology, Kharagpur
Programming In Java Prof. Debasis Samanta Department of Computer Science Engineering Indian Institute of Technology, Kharagpur Lecture 01 Introduction First of all I wish like to welcome you all to the
More informationChapter 13. Object Oriented Programming
Chapter 13. Object Oriented Programming Byoung-Tak Zhang TA: Hanock Kwak Biointelligence Laboratory School of Computer Science and Engineering Seoul National University http://bi.snu.ac.kr Computer Programming
More informationSoftware Development 2
Software Development 2 Course Map This module introduces some of the techniques programmers use to create applications and programs. Introduction Computer Principles and Components Software Development
More informationUnit - IV CHAPTER - 13 INTRODUCTION TO OOP WITH C++ Part 1 Choose the best answer
Unit - IV CHAPTER - 13 INTRODUCTION TO OOP WITH C++ Part 1 Choose the best answer 1. The term is used to describe a programming approach based on classes and objects is (A) OOP (B) POP (C) ADT (D) SOP
More informationObject Oriented Programming
Object Oriented Programming 1. Course Overview 2. Concepts and paradigms in OOP OOP1 - T.U. Cluj - M. Joldos 1 Who, what Who, what Marius.Joldos@cs.utcluj.ro lectures,laboratory Ion.Giosan@cs.utcluj.ro
More informationIntroduction to Computers and Java
Introduction to Computers and Java Chapter 1 Chapter 1 1 Objectives overview computer hardware and software introduce program design and object-oriented programming overview the Java programming language
More informationDomain Engineering And Variability In The Reuse-Driven Software Engineering Business.
OBM 7 -draft 09/02/00 1 Domain Engineering And Variability In The Reuse-Driven Software Engineering Business. Martin L. Griss, Laboratory Scientist, Hewlett-Packard Laboratories, Palo Alto, CA. Effective
More informationProgramming 2. Outline (112) Lecture 0. Important Information. Lecture Protocol. Subject Overview. General Overview.
Programming 2 (112) Lecture 0 College of Computer Science and Engineering Taibah University S2, 1439 Outline Important Information Lecture Protocol Subject Overview General Overview Course Objectives Studying
More informationWhat is Object-Oriented Programming
www.eazynotes.com Nikhil Tibdewal Page No. 1 What is Object-Oriented Programming Object-Oriented Programming (OOP) is different from procedural programming languages (C, Pascal etc.) in several ways. Everything
More informationLecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page:
Lecturer: Sebastian Coope Ashton Building, Room G.18 E-mail: coopes@liverpool.ac.uk COMP 201 web-page: http://www.csc.liv.ac.uk/~coopes/comp201 Lecture 17 Concepts of Object Oriented Design Object-Oriented
More informationBCS THE CHARTERED INSTITUTE FOR IT. BCS Higher Education Qualifications BCS Level 6 Professional Graduate Diploma in IT EXAMINERS' REPORT
BCS THE CHARTERED INSTITUTE FOR IT BCS Higher Education Qualifications BCS Level 6 Professional Graduate Diploma in IT March 2015 EXAMINERS' REPORT Programming Paradigms General comments on candidates'
More informationObject Oriented Programming
Object Oriented Programming Course Code: CS 212 Semester: 2 nd Credit Hours: 3+1 Prerequisite Codes: CS-110: Fundamentals of Computer Programming Instructor: Shamyl Bin Mansoor Class: BESE-5 AB Office:
More informationSuggested answers are provided below. These answers are presented top-down, left to right.
Answers to Key Terms Suggested answers are provided below. These answers are presented top-down, left to right. 5. Actor 16. Concrete class 39. Use case 13. Class-scope attribute 40. Use-case diagram 2.
More informationMulti-Paradigm Approach for Teaching Programming
Multi-Paradigm Approach for Teaching Laxmi P Gewali* and John T Minor School of Computer Science University of Nevada, Las Vegas 4505 Maryland Parkway, Las Vegas Nevada 89154 Abstract: Selecting an appropriate
More informationi-power Transaction Error Corrections & Reversals Last Revised: 9/12/16 Version:
i-power Transaction Error Corrections & Reversals Last Revised: 9/12/16 Version: 5.2.0.49 EPL, Inc. 22 Inverness Parkway Suite 400 Birmingham, Alabama 35242 (205) 408-5300 / 1-800-243-4EPL (4375) www.eplinc.com
More informationCHAPTER 5: PRINCIPLES OF DETAILED DESIGN
CHAPTER 5: PRINCIPLES OF DETAILED DESIGN SESSION II: STRUCTURAL AND BEHAVIORAL DESIGN OF COMPONENTS Software Engineering Design: Theory and Practice by Carlos E. Otero Slides copyright 2012 by Carlos E.
More informationAppendix A - Glossary(of OO software term s)
Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component
More informationChapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects,
Chapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects, Classes, Class Diagrams Values and Attributes Operations
More informationModule Outline. What is Object-Oriented? Some Possible Definitions. Why Object-oriented? Fundamentals of Object Orientation
Module Outline Fundamentals of Object Positioning Object Oriented Analysis Fundamentals of Object 1. Encapsulation 2. Abstraction 3. Inheritance 4. Polymorphism The need of Modeling Unified modeling language
More information9/11/08 (c) 2008 Matthew J. Rutherford Class (c) 2008 Matthew J. Rutherford Class
1 2 3 4 5 6 Walter Savitch Frank M. Carrano Introduction to Computers and Java Chapter 1 ISBN 0136130887 2007 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved 7 Hardware and Software
More informationQUESTIONS FOR AVERAGE BLOOMERS
MANTHLY TEST JULY 2017 QUESTIONS FOR AVERAGE BLOOMERS 1. How many types of polymorphism? Ans- 1.Static Polymorphism (compile time polymorphism/ Method overloading) 2.Dynamic Polymorphism (run time polymorphism/
More informationJAVA METHODS OBJECT ORIENTED PROGRAMMING AND DATA STRUCTURES
page 1 / 5 page 2 / 5 java methods object oriented pdf Object-oriented programming is more than just classes and objects; it's a whole programming paradigm based around objects (data structures) that contain
More information(C) 2010 Pearson Education, Inc. All rights reserved. Dr. Marenglen Biba
Dr. Marenglen Biba In Chapters 12 13, you design and implement an object-oriented automated teller machine (ATM) software system. Concise, carefully paced, complete design and implementation experience.
More informationLecturer: William W.Y. Hsu. Programming Languages
Lecturer: William W.Y. Hsu Programming Languages Chapter 9 Data Abstraction and Object Orientation 3 Object-Oriented Programming Control or PROCESS abstraction is a very old idea (subroutines!), though
More informationComputer Science II. OO Programming Classes Scott C Johnson Rochester Institute of Technology
Computer Science II OO Programming Classes Scott C Johnson Rochester Institute of Technology Outline Object-Oriented (OO) Programming Review Initial Implementation Constructors Other Standard Behaviors
More informationHistory of object-oriented approaches
Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr http://www.yildiz.edu.tr/~naydin Object-Oriented Oriented Systems Analysis and Design with the UML Objectives: Understand the basic characteristics of object-oriented
More informationCMPT Data and Program Organization
CMPT-201 - Data and Program Organization Professor: Bill Havens Office: APSC-10828 Lectures: MWF 2:30pm - 3:20pm Venue: C-9002 WWW: http://www.cs.sfu.ca/coursecentral/201 Office Hours: Monday @3:30pm January
More informationSTUDY NOTES UNIT 1 - INTRODUCTION TO OBJECT ORIENTED PROGRAMMING
OBJECT ORIENTED PROGRAMMING STUDY NOTES UNIT 1 - INTRODUCTION TO OBJECT ORIENTED PROGRAMMING 1. Object Oriented Programming Paradigms 2. Comparison of Programming Paradigms 3. Basic Object Oriented Programming
More informationIntroduction to Software Engineering p. 1 The Scope of Software Engineering p. 3 Historical Aspects p. 4 Economic Aspects p. 7 Maintenance Aspects p.
Preface p. xv Introduction to Software Engineering p. 1 The Scope of Software Engineering p. 3 Historical Aspects p. 4 Economic Aspects p. 7 Maintenance Aspects p. 8 Specification and Design Aspects p.
More informationInheritance. Like father, like son
Inheritance Like father, like son Inheritance : Motivation Let s define a saving account class Data : account number, balance interest rate Process: withdraw, deposit pay_interest It is clear that: Saving
More information