Object-Orientated Programming

Slides:



Advertisements
Similar presentations
Understand and appreciate Object Oriented Programming (OOP) Objects are self-contained modules or subroutines that contain data as well as the functions.
Advertisements

OBJECT ORIENTED PROGRAMMING M Taimoor Khan
C++ Training Datascope Lawrence D’Antonio Lecture 3 An Overview of C++
OOP Project Develop an Application which incorporates the following OO Mechanisms and Principals: – Classes Visibility Constructor(s) Class Variable (if.
CS 2511 Fall Features of Object Oriented Technology  Abstraction Abstract class Interfaces  Encapsulation Access Specifiers Data Hiding  Inheritance.
ASP.NET Programming with C# and SQL Server First Edition
CSCE 110 PROGRAMMING FUNDAMENTALS WITH C++
C++ fundamentals.
CIT241 Prerequisite Knowledge ◦ Variables ◦ Operators ◦ C++ Syntax ◦ Program Structure ◦ Classes  Basic Structure of a class  Concept of Data Hiding.
Object Oriented Programming CEN 221. Course Description Classes, objects, inheritance, polymorphism, graphical user interfaces, event handling, exception.
Programming Languages and Paradigms Object-Oriented Programming.
C++ Programming. Table of Contents History What is C++? Development of C++ Standardized C++ What are the features of C++? What is Object Orientation?
Chapter 11: Inheritance and Composition. Objectives In this chapter, you will: – Learn about inheritance – Learn about derived and base classes – Redefine.
C++ Code Analysis: an Open Architecture for the Verification of Coding Rules Paolo Tonella ITC-irst, Centro per la Ricerca Scientifica e Tecnologica
CIT241 Prerequisite Knowledge ◦ Variables ◦ Operators ◦ C++ Syntax ◦ Program Structure ◦ Classes  Basic Structure of a class  Concept of Data Hiding.
Object Oriented Design and Programming Alan Goude Room: Sheaf 9323.
Unified Modeling Language, Version 2.0
Web Scripting [PHP] CIS166AE Wednesdays 6:00pm – 9:50pm Rob Loy.
Engineering H192 - Computer Programming The Ohio State University Gateway Engineering Education Coalition Lect 24P. 1Winter Quarter C++ Lecture 24.
1 Life Cycle of Software Specification Design –Risk Analysis –Verification Coding Testing –Refining –Production Maintenance.
Software Development. Software Developers Refresher A person or organization that designs software and writes the programs. Software development is the.
OOP Class Lawrence D’Antonio Lecture 3 An Overview of C++
C++ History C++ was designed at AT&T Bell Labs by Bjarne Stroustrup in the early 80's Based on the ‘C’ programming language C++ language standardised in.
Data Structures Using C++1 Chapter 1 Software Engineering Principles and C++ Classes.
The development of common partnership and interuniversitary scientific research according to the principle of sustainable development TRAINING COURSE Romania,
1 IDLOOPC1998. Object-Oriented Programming Using C++ CLASS 1.
Midterm Study Guide COP 4331 and EEL4884 OO Processes for Software Development © Dr. David A. Workman School of EE and Computer Science University of Central.
Data Structures Using C++ 2E
1 OOP - An Introduction ISQS 6337 John R. Durrett.
Object Oriented Programming
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
CS-1030 Dr. Mark L. Hornick 1 Basic C++ State the difference between a function/class declaration and a function/class definition. Explain the purpose.
Principles of Object-Oriented Software Development The language C++
CS212: Object Oriented Analysis and Design Lecture 16: Runtime Polymorphism.
Chapter 11: Inheritance and Composition. Introduction Two common ways to relate two classes in a meaningful way are: – Inheritance (“is-a” relationship)
Presented by Ted Higgins, SQL Server DBA An Introduction to Object – Oriented Programming.
Singleton Academy, Pune. Course syllabus Singleton Academy Pune – Course Syllabus1.
Lecture 2 Intro. To Software Engineering and Object-Oriented Programming (2/2)
Exceptions and Handling
C++ General Characteristics: - Mixed typing system - Constructors and destructors - Elaborate access controls to class entities.
Industrial Group Project Introduction to Object Oriented Programming Adelina Basholli, February, 2016.
Mind Q Systems Leader s In Training /7, 2nd Floor, Srinivasa Nagar Colony (W) Above HDFC Bank, S.R. Nagar Hyderabad Tel: /92.
SAP ABAP OOPS ONLINE TRAINING. Sap abap oops content:  Introduction to Object-Oriented Programming  The Need for a Better Abstraction  Classes and.
CH 1-4 : INTRODUCTION ACKNOWLEDGEMENT: THE SLIDES ARE PREPARED FROM SLIDES PROVIDED WITH DATA STRUCTURES AND ALGORITHMS IN C++, GOODRICH, TAMASSIA AND.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
Inheritance Modern object-oriented (OO) programming languages provide 3 capabilities: encapsulation inheritance polymorphism which can improve the design,
Introduction to Computers Computer Generations
Sachin Malhotra Saurabh Choudhary
CSc 020: Programming Concepts and Methodology II
Object-Oriented Programming (OOP) Lecture No. 45
Systems Analysis and Design With UML 2
CSE687 - Object Oriented Design class notes Survey of the C++ Programming Language Jim Fawcett Spring 2004.
OOP What is problem? Solution? OOP
CS212: Object Oriented Analysis and Design
Review: Two Programming Paradigms
C++, OBJECT ORIENTED PROGRAMMING
About the Presentations
C++ History C++ was designed at AT&T Bell Labs by Bjarne Stroustrup in the early 80's Based on the ‘C’ programming language C++ language standardised in.
CMPE419 Mobile Application Development
CS360 Windows Programming
Support for Object-Oriented Programming in Ada 95
Object Oriented Programming
Parameter Passing Actual vs formal parameters
CIS601: Object-Oriented Programming in C++
CSE Object Oriented Programing
C++ Programming ㅎㅎ String OOP Class Constructor & Destructor.
Chapter 11: Inheritance and Composition
2.1 Introduction to Object-Oriented Programming
CMPE419 Mobile Application Development
Lecture 3 – Data collection List ADT
Presentation transcript:

Object-Orientated Programming Damian Gordon

Module Description This module develops the students' programming and problem solving skills, progressing from procedural to object-oriented programming. Topics include the principles, practices, and applications of programming in object-oriented environment with applications to business and scientifically oriented problems. The techniques and language features of object-oriented design are implemented in programming projects. Emphasis is placed upon development of well-designed, efficient, maintainable object-oriented software. The aim of this module is that the student become familiar with Object Oriented Programming concepts and implement these concepts in elementary object oriented programs.

Learning Outcomes On Completion of this module, the learner will be able to Demonstrate an understanding of the underlying principles and concepts of Object-Oriented Programming Use UML in the design of OOP programs Write programs using Object-Oriented programming language Extensively testing using debugging tools to remove runtime errors from a program Document an Object-Oriented program Demonstrate an understanding of the advanced principles and concepts of Object Oriented Programming Design and implement object oriented programs using advanced Object Oriented constructs and design patterns Persistent objects: Formatted file input and output, direct file input and output Construct Program Libraries.

Indicative Syllabus Comparison of Procedural Programming with OOP Review of procedural programming. Problems with procedural programming and the need for OOP Object-Oriented Principles and Concepts Introduction to class diagrams and OOP concepts. Relationships, Inheritance, Multiple Inheritance, Abstract Classes.

Indicative Syllabus Object Oriented Programming Language Constructs Abstract data types, classes, objects, messages, Instance variables, methods, encapsulation, private and public access, class variables, constructors, class interface, class implementation. Classes and objects, private and public class members, constructors, initialisation list, static data members, overloading, inline, separation of interface and implementation. Function overloading. Operator overloading. Destructors.

Indicative Syllabus Virtual functions and friend functions. Composition. Inheritance: Types of Inheritance, Construction, Destruction, Multiple Inheritance. Polymorphism. Abstract Classes. String class and character arrays. Pointers and dynamic memory. Generic Types, Static and Dynamic Binding, Polymorphism, Overloading.

Indicative Syllabus Exception handling. Streams and files. Templates: functions and classes. Genericity. Collections frameworks. Program Libraries. Testing techniques for object oriented programs.

Indicative Syllabus Assessment Type Weighting (%) Written Assessment 40 Continuous Assessment 60

Introduction to Object-Orientated Programming Damian Gordon

Up to now… Python program

Up to now… Python program

Up to now… Python program Method1 Method2 Method3

PROCEDURAL PROGRAMMING Up to now… Python program Method1 Method2 Method3

Object-orientated programming Method1 Method2 Method3

Object-orientated programming Method1 OBJECT Data Data Method2 Method3