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.6k
Лекция № 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
Tips for the Presentation - Lecture 2 - Advanced Topics in Big Data (4023256FNR)
signer
PRO
0
500
SSH公開鍵認証 / 02-b-ssh
kaityo256
PRO
0
110
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4019538FNR)
signer
PRO
0
3k
自己紹介 / who-am-i
yasulab
6
6.5k
Introduction - Lecture 1 - Next Generation User Interfaces (4018166FNR)
signer
PRO
2
4.5k
栃木県警サイバーセキュリティ研修会2026
nomizone
0
350
Blueprint for Strengthening Community Colleges Training Grant Success
territorium
PRO
0
150
次期バージョン 14.5.1 Early Access Program が始まりました
harunakano
1
120
Introduction - Lecture 1 - Information Visualisation (4019538FNR)
signer
PRO
0
5.3k
地区危機管理委員会 出前セミナー「ロータリーにおける危機管理」:膳所 和彦 氏(国際ロータリー第2720地区 パストガバナー・日田ロータリークラブ・医療法人恒心会ぜぜ医院 理事長):2720 Japan O.K. ロータリーEクラブ2026年2月16日卓話
2720japanoke
1
600
GOBUSATA紹介
chankawa919
0
130
LotusScript でエージェント情報を出力してみた
harunakano
0
150
Featured
See All Featured
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
210
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
260
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Tell your own story through comics
letsgokoyo
1
850
Measuring & Analyzing Core Web Vitals
bluesmoon
9
790
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
150
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
150
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
190
YesSQL, Process and Tooling at Scale
rocio
174
15k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
150
What's in a price? How to price your products and services
michaelherold
247
13k
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 Проектирование класса для линейной аппроксимации набора точек
КОНЕЦ ПЯТОЙ ЛЕКЦИИ