0% found this document useful (0 votes)
2 views29 pages

1 Introduction

The document outlines a course on Object Oriented Programming (OOP) at the Vietnam National University of HCMC, led by Dr. Le Thi Ngoc Hanh in Spring 2026. It covers the course structure, grading scheme, and key concepts of OOP such as classes, objects, encapsulation, inheritance, and polymorphism. The syllabus emphasizes the importance of understanding the limitations of procedural programming and encourages responsible academic conduct.

Uploaded by

Duy Tân
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views29 pages

1 Introduction

The document outlines a course on Object Oriented Programming (OOP) at the Vietnam National University of HCMC, led by Dr. Le Thi Ngoc Hanh in Spring 2026. It covers the course structure, grading scheme, and key concepts of OOP such as classes, objects, encapsulation, inheritance, and polymorphism. The syllabus emphasizes the importance of understanding the limitations of procedural programming and encourages responsible academic conduct.

Uploaded by

Duy Tân
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Vietnam National University of HCMC

International University
School of Computer Science and Engineering

Object Oriented Programming

Introduction
Instructor: Le Thi Ngoc Hanh, Ph.D
ltnhanh@[Link]
Semester – Spring 2026
VNU-HCM International University School of Computer Science and Engineering

Outline

 Introduction

 WHAT & WHY OOP

 Grading scheme

 Course policy

 Basics in OOP

Slide 2 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

References
 [R1] ] Paul J. Deitel (Author), Harvey Deitel (Author), Java
How To Program, 11th Edition, Prentice Hall, 2017

 [R2] Matt Weisfeld, The Object-Oriented Thought Process,


5th Edition, Addison-Wesley, 2019

 [R3] Erich Gamma, Richard Helm, Ralph Johnson and


John Vlissides, Design Patterns: Elements of Reusable
Object-Oriented Software, Addison-Wesley Professional,
1994

Slide 3 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

About me

[Link]

[Link]

Slide 4 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

About TAs

Slide 5 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

MS Team

Or join via code: ayftat2

Slide 6 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

Syllabus – Course page

[Link]

[Link]

Slide 7 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

Course Q&A
 Communication:

Email, MS Team, office hours - by an appointment @Room A1. 610

 Take attendance?

 Food?

 Zzz ….?

 Late submissions?

 Discussion is encouraged, but plagiarism is not allowed!


Do not use the codes on webpages without modification!
Slide 8 PPL – Spring 2026
VNU-HCM International University School of Computer Science and Engineering

Be Responsible for Yourself


 Cheating or plagiarism will result in zero score
 Final score = 0
 Under 50?
 See you next year ~

Slide 9 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

Grading Scheme
The final grade for the course will be determined as follows:

C1 – Attendance/in-class quiz: 10%

C2 – Assignments: 15%

C3 – Midterm test: 30%

C4 - Final exam: 40%

C5 - Extra credit will be granted periodically for clever or


creative solutions: 5%

Slide 10 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

Evaluation Methods

 Midterm exam: open a handwritten A4 note


 Final exam: open a handwritten notebook
 Project: per guidance (Lab session)

Slide 11 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

Everything Around You Is an Object

Slide 12 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

From Real World to Software

Slide 13 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

What Is an Object?
 An object is an entity that combines data and
behavior.

Slide 14 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

What Is OOP?
 OOP is a way of building programs by organizing
them around objects, not procedures.

Slide 15 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

Why
OOP?

Slide 16 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

How Programs Start?


Procedural Programming Characteristics
 Program = collection of functions
 Data is often global
 Data and functions are separated

Slide 17 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

When Programs Grow …


Scenario: 5 developers, 500 functions, 300 global
variables, ….

Slide 18 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

Core Problems
Problems with procedural style:
❑ No clear ownership of data
❑ Anyone can modify anything
❑ Hard to maintain
❑ Hard to scale

Slide 19 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

OOP as a Solution
OOP solves this by:
❑ Givingdata an owner (object)
❑ Controlling access
❑ Grouping responsibility

“In OOP, data is no longer homeless”


Slide 20 PPL – Spring 2026
VNU-HCM International University School of Computer Science and Engineering

Course Objective

 Understand limitations of procedural programming

 Explain what objects and classes are

 Understand encapsulation and data hiding

 Recognize inheritance, polymorphism, and composition

 Read basic UML class diagrams


Slide 21 PPL – Spring 2026
VNU-HCM International University School of Computer Science and Engineering

Basic OOP Concepts

Slide 22 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

Class vs Object
 Class = blueprint
 Object = real house

Slide 23 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

Class vs Object

Slide 24 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

Data Hiding
 Attributes should be private
 Access via methods

Slide 25 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

Object Communication
How objects interact:
 Objects send messages
 Message = method call

Slide 26 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

Inheritance (Is-a)
Concept: Reuse code & Specialization

Slide 27 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

Polymorphism
Polymorphism lets the same message trigger
different behavior depending on the object

Slide 28 PPL – Spring 2026


VNU-HCM International University School of Computer Science and Engineering

Composition (Has-a)
 Objects contain other objects

Has

Slide 29 PPL – Spring 2026

You might also like