Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
객체지향의 사실과오해 책 리뷰
Search
Len Kim
May 19, 2019
Programming
130
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
객체지향의 사실과오해 책 리뷰
책 읽고 리뷰 발표한 자료.
Len Kim
May 19, 2019
More Decks by Len Kim
See All by Len Kim
오늘도 여러분의 API 는 안녕하신가요? - 김정규(인프콘2023)
lenkim
0
250
Hands-on-Machine-Learning Book Review
lenkim
1
40
Other Decks in Programming
See All in Programming
月間100万人のサービス刷新で、 技術選定をHonoに振り切った話
yutobara
8
6.7k
気持ちぃ〜角丸 Squircle
ryu1013
0
320
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Rails World 2026, Austin, Texas
marcoroth
0
220
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
270
コーディング自動化の次へ。人の介入をゼロにするファクトリーとサポートAIによる実践
timakin
5
4k
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
640
Atomic Design, Enforced: Scaling Mobile Design Systems (next.app devCon / droidCon Berlin 2026)
steliosf
PRO
0
170
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
750
Railsのためのパスキー実践入門 〜マルチテナントSaaSでの意思決定〜
utakaha
3
730
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
0
110
golang-bob.pdf
iwatsukayura
0
130
R8 の設定見直しでアプリサイズ削減
andpad
0
220
Featured
See All Featured
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
410
The agentic SEO stack - context over prompts
schlessera
0
970
Designing for Timeless Needs
cassininazir
1
530
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
280
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
630
Navigating Weather and Climate Data
rabernat
0
560
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8.1k
How GitHub (no longer) Works
holman
316
150k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
330
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
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"хࢎפ ҡଳਵݶ 䥣җݫࣁ ୶࢚ച