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
0
120
АФТИ ООП 2013-2014. Лекция I/05
Oleg Dashevskii
October 07, 2013
Tweet
Share
More Decks by Oleg Dashevskii
See All by Oleg Dashevskii
Лекция № 13. Практическое руководство по разработке
be9
0
1.5k
Лекция № 12. Ещё о проектировании
be9
0
1.5k
Лекция № 11. Принцип отделения интерфейса. «Малое ООП»
be9
0
1.5k
Лекция № 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
小学校女性教員向け プログラミング教育研修プログラム「SteP」の実践と課題
codeforeveryone
0
110
AWSと共に英語を学ぼう
amarelo_n24
0
150
Human-AI Interaction - Lecture 11 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
520
Pythonパッケージ管理 [uv] 完全入門
mickey_kubo
23
24k
自己紹介 / who-am-i
yasulab
PRO
3
5.4k
理想の英語力に一直線!最高効率な英語学習のすゝめ
logica0419
6
390
みんなのコード 2024年度活動報告書/ 2025年度活動計画書
codeforeveryone
0
280
【Discordアカウント作成ガイド】
ainischool
0
100
バックオフィス組織にも「チームトポロジー」の考えが使えるかもしれない!!
masakiokuda
0
120
登壇未経験者のための登壇戦略~LTは設計が9割!!!~
masakiokuda
3
660
2026 g0v 零時政府年會啟動提案 / g0v Summit 2026 Kickstart
rschiang
0
260
Pydantic(AI)とJSONの詳細解説
mickey_kubo
0
190
Featured
See All Featured
Building Applications with DynamoDB
mza
96
6.6k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Become a Pro
speakerdeck
PRO
29
5.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Producing Creativity
orderedlist
PRO
347
40k
A designer walks into a library…
pauljervisheath
207
24k
Six Lessons from altMBA
skipperchong
28
4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
A better future with KSS
kneath
239
17k
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 Проектирование класса для линейной аппроксимации набора точек
КОНЕЦ ПЯТОЙ ЛЕКЦИИ