A lecture for BSc students in Innopolis University.
The previous lecture in 2020 in MIPT (Moscow, Russia) is here: https://www.youtube.com/watch?v=aLaDDoT2v54
The slides are here: https://github.com/yegor256/painofoop (in LaTeX and PDF)
Buy my book about OOP: http://goo.gl/W2WVMk
Blog: https://www.yegor256.com
Books: https://www.yegor256.com/books.html
GitHub: https://github.com/yegor256 (don’t hesitate to follow in order to stay informed)
Telegram channel with recent news and updates: https://t.me/yegor256news (subscribe to not miss a thing)
Twitter with daily and weekly updates: https://twitter.com/yegor256 (follow me!)
iTunes: https://podcasts.apple.com/us/podcast/yegor256-podcast/id1150826721
SoundCloud: https://soundcloud.com/yegor256
Yandex Music podcast by yegor256: https://music.yandex.ru/album/31142286
0:00 Course description
2:51 Who started it
4:00 Objects, Classes and Inheritance. Simula-67
6:11 OOP term. Smalltalk
11:00 C++, Bjarne Stroustrup
16:48 Other languages
18:46 OOP features
26:48 Original idea
28:40 Abstraction
37:45 Data hiding
41:33 Behavior exposing
44:00 An object as a function
45:45 Identity, State, Behavior
52:52 Composition
55:25 Object Thinking vs. Algorithms. While-Do loop
59:33 Buffer abstraction
1:01:36 Loop abstraction
1:04:42 Object composition
1:09:12 Enemies of Object Thinking
1:13:15 How to Pass the Exam
1:15:04 Read and Watch