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
객체지향의 사실과오해 책 리뷰
Search
Len Kim
May 19, 2019
Programming
1
120
객체지향의 사실과오해 책 리뷰
책 읽고 리뷰 발표한 자료.
Len Kim
May 19, 2019
Tweet
Share
More Decks by Len Kim
See All by Len Kim
오늘도 여러분의 API 는 안녕하신가요? - 김정규(인프콘2023)
lenkim
0
220
Hands-on-Machine-Learning Book Review
lenkim
1
27
Other Decks in Programming
See All in Programming
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
200
ノイジーネイバー問題を解決する 公平なキューイング
occhi
0
110
Oxlint JS plugins
kazupon
1
1k
AIエージェントのキホンから学ぶ「エージェンティックコーディング」実践入門
masahiro_nishimi
6
660
FOSDEM 2026: STUNMESH-go: Building P2P WireGuard Mesh Without Self-Hosted Infrastructure
tjjh89017
0
180
高速開発のためのコード整理術
sutetotanuki
1
410
AIによる高速開発をどう制御するか? ガードレール設置で開発速度と品質を両立させたチームの事例
tonkotsuboy_com
7
2.4k
AIによる開発の民主化を支える コンテキスト管理のこれまでとこれから
mulyu
3
470
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6.1k
16年目のピクシブ百科事典を支える最新の技術基盤 / The Modern Tech Stack Powering Pixiv Encyclopedia in its 16th Year
ahuglajbclajep
5
1k
Oxlintはいいぞ
yug1224
5
1.4k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
610
Featured
See All Featured
Evolving SEO for Evolving Search Engines
ryanjones
0
130
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
Being A Developer After 40
akosma
91
590k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
SEO for Brand Visibility & Recognition
aleyda
0
4.2k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
42k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.3k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Transcript
r䟤ೱࢎपҗয়䞹s 䤠ೡ 䥣 䧗䢁
ӣӏ SFHVMBS -FO https://github.com/LenKIM !ӝࣿ
ܻח䟤ೱী೧ࢲ য٣өইחѦө SOLID? ङച? ഋࢿ? ୶࢚ച? OOP?
दցܳ ࢤпೞۄ. ח ࠗ࠙ ࠁ . - झ౭࠵ ࠺(Stephen R.
Covey) Ӓۢ ܻח৵䟤ೱਸ೧ঠغחо
ёೱ۽Ӓې߁ (Object-Oriented Programming) : ёೱۆ पࣁ҅ܳ Ҋ ҙਵ۽ ݽ؛݂ೡ ࣻ
ח ಁ۞ : ёೱۆ पࣁ҅ܳ Ҋ ҙਵ۽ ݽ؛݂ೡ ࣻ ח ಁ۞ 소프트웨어 시스템이 해결하려고 하는 실재는 잘해봐야 먼 친척밖에는 되지 않는다. - 버트란드 마이어(Bertrand Meyer) : ࢜۽ ࣁ࢚ਸ ହઑೞח Ѫ.
䟤ܳझझ۽ࢤпೞҊझझ۽Ѿೞח 䧔पࣁ҅ࢤݺী࠺ਬೞחਬח ࢚క৬೯ਤܳrङചsೞחࣗਝয৬䟤rਯࢿs ӒܻҊ 䧔पࣁ҅ࢎۈٜrঐޗੋডࣘҗݺदੋ҅ডsਸӝ߈ਵ۽䧗䢁ೞৈ ݾܳ׳ࢿ೧աоחҗrݫदsܳҊ߉ਵݴ ҕزݾܳ׳ࢿೞӝਤ೧r䧗䢁sೞח 䟤ٜҙ҅ܳ䣞ݺೞӝীೞӝೞݴ
पࣁ҅ࢎޛਸӝ߈ਵ۽ࣗਝয䟤ܳध߹ೞҊ ҳഅөযрחѐ䠺 䟤ೱࢸ҅೨बࢎ࢚ੋrোѾ৮䥅ࢿ TFBNMFTTOFTT sীೠౣ
ழೖਸ۽ٜযࠁ
$VTUPNFS $BTIFS #BSJTUFS
$VTUPNFS $BTIFS #BSJTUFS ழೖ ޙ ழೖ ઁઑ ழೖ ৮ࢿ ழೖ
৮ࢿ !䧗䢁 !࢚క৬೯زਸೣԋצਯੋ䟤 !䧗䢁җݫद !ݫࢲ٘৬ਯࢿ
$VTUPNFS $BTIFS #BSJTUFS ழೖ ޙ ழೖ ઁઑ ழೖ ৮ࢿ ழೖ
৮ࢿ ৈ۞ࢎۈزੌೠ䤠ೡਸࣻ೯ೡࣻ ࣚשੑী䞵न䟎ޙೠழೖח־оٜ࢚݅ٚҙ9 䤠ೡоמࢿਸೠ ࣚשੑী䞵நदযחоמ TVCTUJUVUBCMF 䥣ਸࣻ೯ೞחߑ䢲ਯਵ۽䣜ఖೡࣻ ਃਸ߉ࢎۈٜਃਸܻೞחߑ䢲ਸਬ܂ѱ䣜ఖೡࣻ ೠࢎۈزदীৈ۞䤠ೡਸࣻ೯ೡࣻ நदয৬߄ܻझఋۄחѐੋੋ䤠ೡਸਊ೧䧗䢁ҙ҅ܳޑࢎ೮݅ ೠࢎۈநदয৬߄ܻझఋ䤠ೡਸزदীࣻ೯ೞחѪоמ
Ӓېࢲ䟤ೱۆ 객체지향이란 시스템을 상호작용하는 자율적인 객체들의 공동체로 바라보고 객체를 이용해
시스템을 분할하는 방법. 자율적인 객체란 상태와 행위를 함께 지니며 스스로 자기 자신을 책임지는 개체를 의미 객체는 시스템의 행위를 구현하기 위해 다른 객체와 협력하며, 각 객체는 협력 내에서 정해진 역할을 수행하며 역할은 관련된 책임의 집합. 객체는 다른 객체와 협력하기 위해 메시지를 전송하고, 메시지를 수신한 객체는 메시지를 처리하는 데 적합한 메서드를 자율적으로 선택.
ഴܕೠёೱࢸ҅оغӝਤ೧Ѣঠೡߣ૩ب٘ܳחېझ ҙীࢲݫदܳҊ߉חёҙਵ۽ࢎҊबਸജೞחѪ ਃೠѪযڃېझоਃೠооইפۄযڃёٜযڃݫदܳҊ߉ਵ ݴഈ۱ೞחоېझחёٜഈ۱ҙ҅ܳ٘۽ӝחبҳীࠛҗೞ ېझחёೱࣁ҅بदࢸ
ࣚש ё ߄ܻझఋ ё ۄݮ ݃ఃইژ ё ীझۨࣗ ё ಹ֢
ё ইݫܻ֢ ё ইݫܻ֢ ё ಹ֢ ё ۄݮ ݃ఃইژ ё ীझۨࣗ ё ࣚש ݫ౸ীࢲ ழೖܳ ࢶఖೡ ࣻ . ࣚש ߄ܻझఋীѱ ழೖܳ ޙೠ. ழೖܳ ઁઑೠ. Menu
ࣚש ݫ౸ ݫ ೦ݾ 4 ߄ܻझఋ ߄ܻझఋ
ழೖܳ ޙೞۄ. ݫ ܴ ࣚש ݫ ೦ݾਸ ইۄ ݫ ܴ
ݫ ೦ݾ ݫ౸ ழೖܳ ઁઑೞۄ ழೖ ݫ ೦ݾ ߄ܻझఋ ழೖ ࢤࢿೞۄ
ழೖܳ ޙೞۄ. ݫ ܴ ݫ ೦ݾਸ ইۄ ݫ ܴ ࣚש
ݫ ೦ݾ ݫ౸ ழೖܳ ઁઑೞۄ ழೖ ݫ ೦ݾ ߄ܻझఋ ழೖ ࢤࢿೞۄ
ழೖܳ ޙೞۄ. ݫ ܴ ࣚש ݫ ೦ݾਸ ইۄ ݫ ܴ
ݫ ೦ݾ ݫ౸ ழೖ ࢤࢿೞۄ ழೖܳ ઁઑೞۄ ழೖ ݫ ೦ݾ ߄ܻझఋ
ઁ೩ૉৡਵ۽पणਸ೧ࠁ
order(menuName, menu, barista) Customer choose(name):MenuItem Menu name price MenuItem cost()
getName() makeCoffee(menuItem):Coffee Barista <<create>> name price Coffee Coffee(name, price)
٘חࣁоҙਸݽفઁҕ೧ঠೠ ѐ䠺ҙ ݺࣁҙ ҳഅҙ Customer, Menu, MenuItem, Barista, Coffee ېझ
$VTUPNFS .FOV .FOV*UFN #BSJTUB $PGGFFېझ ېझੋఠಕझ 䧗䢁җҙ҅غח ېझղࠗҳഅ FY ېझݫࢲ٘৬ࣘࢿ
ੋఠಕझ৬ҳഅਸܻ࠙ೞۄ ݺࣁҙҗҳഅҙٍࢴৈഒۆझۣѱٜ݅݃ۄ ݺࣁҙ䥈ېझউੋஏݶ⬆ ҳഅҙ䥈ېझࠛউೠஏݶ⬇ ѐ֛ੋҙҗݺࣁҙࢎחӒۧѱਃೞঋ҃о݆݅ ݺࣁҙҗҳഅҙਸܻ࠙ೞחѪݒਃೞ݃౯۞<GPXMFSC>
2"хࢎפ ҡଳਵݶ 䥣җݫࣁ ୶࢚ച