Difference between revisions of "Object Orientated Programming"

From TRCCompSci - AQA Computer Science
Jump to: navigation, search
(Quiz)
 
(7 intermediate revisions by the same user not shown)
Line 5: Line 5:
 
:The world or any problem can be viewed as a collection of interacting objects. Each object is responsible for its own data and the operations it can perform on this data. Each object is created from a blueprint for that type of object called a class. The object will interact using the operations the class definition provides.
 
:The world or any problem can be viewed as a collection of interacting objects. Each object is responsible for its own data and the operations it can perform on this data. Each object is created from a blueprint for that type of object called a class. The object will interact using the operations the class definition provides.
  
==Videos==
+
==Overview==
  
 
<youtube>https://www.youtube.com/watch?v=37cXZnli3RE&index=2&list=PLCiOXwirraUAJPwNTW5gxfJK6Ej18fDP9</youtube>
 
<youtube>https://www.youtube.com/watch?v=37cXZnli3RE&index=2&list=PLCiOXwirraUAJPwNTW5gxfJK6Ej18fDP9</youtube>
Line 11: Line 11:
 
https://www.youtube.com/watch?v=37cXZnli3RE&index=2&list=PLCiOXwirraUAJPwNTW5gxfJK6Ej18fDP9
 
https://www.youtube.com/watch?v=37cXZnli3RE&index=2&list=PLCiOXwirraUAJPwNTW5gxfJK6Ej18fDP9
  
<youtube>https://www.youtube.com/watch?v=oIU7GBse_yU&index=3&list=PLCiOXwirraUAJPwNTW5gxfJK6Ej18fDP9</youtube>
+
===OOP Terms===
 +
<youtube>https://www.youtube.com/watch?v=ZO4B8W73FBc</youtube>
  
https://www.youtube.com/watch?v=oIU7GBse_yU&index=3&list=PLCiOXwirraUAJPwNTW5gxfJK6Ej18fDP9
+
https://www.youtube.com/watch?v=ZO4B8W73FBc
 +
 
 +
===OOP Writing Classess===
 +
<youtube>https://www.youtube.com/watch?v=2waO--Luh4M</youtube>
 +
 
 +
https://www.youtube.com/watch?v=2waO--Luh4M
  
 
==Key Terms==
 
==Key Terms==
Line 24: Line 30:
 
[[Polymorphism]]
 
[[Polymorphism]]
  
[[Composition Aggregation| Composition]]
+
[[Aggregation & Composition]]
  
[[Association Aggregation| Aggregation]]
+
[[Abstract - Virtual - Static]]
  
[[Abstract - Virtual - Static]]
+
[[Private - Protected - Public]]
  
 
==Skills==
 
==Skills==
Line 36: Line 42:
  
 
[[OOP Design Principles]]
 
[[OOP Design Principles]]
 
=='''Quiz'''==
 
To see if you remember what you have learned about OOP, take this quick test either by yourself, or with friends: https://play.kahoot.it/#/?quizId=c73f52df-7d6d-4145-bc2f-7b5cc7d2767c
 

Latest revision as of 08:46, 23 August 2023

General Concept (Definition)

Object Oriented Programming (which will henceforth be refered to as OOP), is a programming paradigm which works in parallel (or in certain cases unison) with functional based programming which divides complex, repetitive problems into smaller callable methods. OOP Programs emulate real world 'Objects' and the hirearchal nature of their relations with each other. In a programming sense this concept is realized through inheritance...

Alternative Definition

The world or any problem can be viewed as a collection of interacting objects. Each object is responsible for its own data and the operations it can perform on this data. Each object is created from a blueprint for that type of object called a class. The object will interact using the operations the class definition provides.

Overview

https://www.youtube.com/watch?v=37cXZnli3RE&index=2&list=PLCiOXwirraUAJPwNTW5gxfJK6Ej18fDP9

OOP Terms

https://www.youtube.com/watch?v=ZO4B8W73FBc

OOP Writing Classess

https://www.youtube.com/watch?v=2waO--Luh4M

Key Terms

Encapsulation

Instantiation

Inheritance

Polymorphism

Aggregation & Composition

Abstract - Virtual - Static

Private - Protected - Public

Skills

Inheritance Diagrams

Class Definitions

OOP Design Principles