Admission
This course is essential for those interested to learn any of the object-oriented programming languages; such as Java, C++, C#, or Visual Basic .NET.
Object Oriented Programming Concepts
Exam # |
Duration |
Language |
Level |
Type |
Classroom |
Code |
Fees |
-- |
9 |
English |
Skills |
Course |
Classroom |
Cs118 |
0 LE |
Description :
Object-oriented programming is one of the most important programming methodologies. Nowadays, it has become the essential programming paradigm. Almost all of the known and commonly used large-scale software have been built using object-oriented programming tools. Without using this methodology it would have been almost impossible to create such software programs.
Objectives :
-
Getting to know the comparison between object-oriented programming and procedural programming
-
Understanding the meaning of an object
-
Recognizing the concept of a class
-
Learning the object-oriented programming main principles: abstraction, encapsulation, inheritance and polymorphism
-
Mastering the implementation of OOP main principles
-
Exploring the relations between classes
Topics :
Concepts of Object-Oriented Programming
-
Defining object-oriented programming
-
Pitfalls of traditional (procedural) programming
-
Major features of object-oriented programming
Principles of Object-Oriented Programming
-
Abstraction
-
Encapsulation
-
Inheritance
-
Polymorphism
Making the Paradigm Shift
-
Defining the object
-
Certain problems in action-oriented approach
-
Object-oriented thinking
What is Abstraction?
-
Defining abstraction
-
The importance of good abstraction
-
Implementing data abstraction
What is Encapsulation?
-
Defining encapsulation
-
The importance of encapsulation
-
Implementing encapsulation
Classes and Objects
-
Defining the class
-
Class vs. object
-
Building a class
Relations among Classes
-
The need for class relations
-
Finding class relations
-
Building class relations
What is Inheritance?
-
Defining inheritance
-
The importance of inheritance
-
Abstract class, concrete class, and interface
-
Method overloading
Applying Inheritance
-
Finding "is a" relationship
-
A review of abstraction
-
Building class hierarchy
What is Polymorphism?
-
Defining polymorphism
-
Method overriding
-
Abstract methods
Applying Polymorphism
-
Preliminary design, design & redesign
-
Go after polymorphism
-
Overloading vs. overriding
Aggregation
-
Big objects are composed of smaller objects
-
Making use of aggregation
Friend Classes
-
Defining "friendship"
-
Making use of the friendship
Nested Classes
-
Defining nested classes
-
Making use of nested classes
Some of the Most Famous OOP Languages
The Need for Software Engineering
-
Examples of software errors and failures
-
Economy
-
Maintenance
-
Clear Planning
Scope of Software Engineering
-
Relationship between software engineering and computer science
-
Team formation
-
Project planning
-
Development process
Software Creation Process
-
Requirements phase
-
Specification phase
-
Implementation phase
-
Maintenance phase
Software Life-Cycle Models
-
Waterfall model
-
Object-oriented models
Common Steps to Build an Object-Oriented Software System
-
Forming the work team
-
Selecting a methodology
-
Gathering requirements
-
Planning classes
-
Writing code
-
Documenting the project
-
Deployment
Object-Oriented Analysis and Design
-
Definition of analysis & design
-
The need for analysis & design
-
Object-oriented analysis & design techniques
Design Patterns
-
Definition of design patterns
-
A few examples of design patterns
Software Frameworks
-
Definition of software frameworks
-
The need for software frameworks
-
Examples of software frameworks
Component Programming
-
Definition of component programming
-
The need for component programming
Web Services
-
Definition of Web services
-
The need for Web services
Recommended Knowledge :
General knowledge of the fundamentals of programming
Recommended Course(s) :
Training Materials :
EnterCaps Official Courseware
Labs :
This course includes several labs to ensure you will gain the targeted skills and experience.
Credential :
Category :
Programming
The Instructor: