Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
АФТИ ООП 2013-2014. Лекция I/05
Search
Oleg Dashevskii
October 07, 2013
Education
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
АФТИ ООП 2013-2014. Лекция I/05
Oleg Dashevskii
October 07, 2013
More Decks by Oleg Dashevskii
See All by Oleg Dashevskii
Лекция № 13. Практическое руководство по разработке
be9
0
1.6k
Лекция № 12. Ещё о проектировании
be9
0
1.5k
Лекция № 11. Принцип отделения интерфейса. «Малое ООП»
be9
0
1.6k
Лекция № 10. Графическая нотация. Принципы LSP и DIP
be9
0
1.6k
Лекция № 9. Отношения между классами. Принцип открытия-закрытия
be9
0
1.5k
Лекция № 8. Хорошие и плохие ОО-программы
be9
0
1.5k
Лекция № 7. algorithm. Исключения
be9
1
1.5k
Лекция № 6. Стандартная библиотека C++. Часть 2
be9
0
1.6k
Лекция № 5. Стандартная библиотека C++. Часть 1
be9
0
1.6k
Other Decks in Education
See All in Education
Visionary Initiative: Future Intelligence — Laying the foundations for the future of science, intelligence, and society | Science Tokyo
sciencetokyo
PRO
0
180
Gitがない時代 インターネットがない時代の 開発話
sapi_kawahara
0
340
[2026前期火5] 論理学(京都大学文学部 前期 第3回)「形式言語と四つのキーワード:メタ・構成・意味論・ハーモニー」
yatabe
0
610
教育現場から見た Ruby on Rails
yasslab
PRO
0
220
輻射安全管理系統2.0暨輻防e++學園平台說明會
aecrp
0
1.9k
AI-Based Speaking Assessment of a Short-Term Study Abroad Program
uranoken
0
390
Where Data Meets Storytelling
georgesinnott
0
140
2026年度春学期 統計学 第11回 分布の「型」を考える - 確率分布モデルと正規分布 (2026. 6. 11)
akiraasano
PRO
0
150
AIってなぁに?
kenichiota0711
0
280
BITCOIN : Les fondamentaux !
rlifchitz
0
200
解決策を教えても次期リーダーは育たない ─ 器の発達に伴走するために / Partnering with leaders in their vertical development
matsu0228
1
590
焦燥を平穏に変えるエンジニアのための哲学
ichimichi
7
6.3k
Featured
See All Featured
Building an army of robots
kneath
306
46k
The Language of Interfaces
destraynor
162
27k
Practical Orchestrator
shlominoach
191
11k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Believing is Seeing
oripsolob
1
180
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
230
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.5k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
340
From π to Pie charts
rasagy
0
240
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Transcript
ОБЪЕКТНО- ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ Лекция № 5 07.10.2013 г.
ООП Техника Культура «Как?» «Что?» «Зачем?» Синтаксис Биты в памяти
Машинный код и т.д.
ПРИНЦИП ОДНОЙ ЗОНЫ ОТВЕТСТВЕННОСТИ • Single responsibility principle (SRP). •
Должна существовать только одна причина, которая может привести к изменению класса.
Класс Rectangle double area(); // calculate area void draw(); //
draw rectangle
Класс Rectangle double area(); // calculate area void draw(); //
draw rectangle Зона ответственности 1. Вычисление площади
Класс Rectangle double area(); // calculate area void draw(); //
draw rectangle Зона ответственности 1. Вычисление площади Зона ответственности 2. Отрисовка прямоугольника
Класс Rectangle Класс GuiRectangle // calculate area double area(); //
draw rectangle void draw(); Rectangle *rect; Разделяем на два класса и используем композицию
ДИАГРАММЫ КЛАССОВ Наследник Базовый Наследование «Хозяин» «Имущество» Агрегация «Владелец» «Раб»
Композиция Класс1 Класс2 Ассоциация
ЗАДАЧА 1 Объектная ориентация stdio.h
ЗАДАЧА 2 Проектирование класса для линейной аппроксимации набора точек
КОНЕЦ ПЯТОЙ ЛЕКЦИИ