λͺ©λ‘πŸ“–/객체지ν–₯의 사싀과 μ˜€ν•΄ (6)

DevLog 😢

[객체지ν–₯μ˜μ‚¬μ‹€κ³Όμ˜€ν•΄] 06 - 객체 지도

βœ”οΈ 객체 지도 ν”„λ‘œκ·Έλž˜λ¨Έμ˜ κ°€μž₯ 큰 μˆ™μ œλŠ” 'λ³€ν™”ν•˜λŠ” μš”κ΅¬μ‚¬ν•­μ— μ–Όλ§ˆλ‚˜ 더 잘 λŒ€μ‘ν•  수 μžˆλŠ”κ°€?' 이닀. 예λ₯Ό λ“€μ–΄λ³΄μž. 고양이 μŠ€λ‚΅λ°”μ— μƒˆλ‘œμš΄ μ‹ μž… μ…°ν”„λƒ₯이 λ“€μ–΄μ™”λ‹€. μ‹ μž… μ…°ν”„λƒ₯은 아직 메뉴 μˆ™μ§€μ— λ―Έμˆ™ν•΄μ„œ λ ˆμ‹œν”Όλ₯Ό λ‹€ μ™Έμš°μ§€ λͺ»ν–ˆλ‹€. μ΄λ•Œ μ†λ‹˜λƒ₯이 μ•Œλ°”λƒ₯μ—κ²Œ 딸기라떼λ₯Ό μ£Όλ¬Έν–ˆκ³ , μ•Œλ°”λƒ₯은 μ‹ μž… μ…°ν”„λƒ₯μ—κ²Œ 딸기라떼λ₯Ό λ§Œλ“€λΌκ³  μ§€μ‹œν–ˆλ‹€. ν•˜μ§€λ§Œ μ‹ μž… μ…°ν”„λƒ₯은 딸기라떼 λ ˆμ‹œν”Όλ₯Ό λͺ°λΌμ„œ μ–΄λ–»κ²Œ ν•΄μ•Ό 할지 κ³ λ―Ό 쀑인 상황이라면, μ–΄λ–€ ν–‰μœ„λ₯Ό ν•  수 μžˆμ„κΉŒ? 1. μˆ˜μ„ μ…°ν”„λƒ₯μ—κ²Œ 딸기라떼 λ§Œλ“œλŠ” 방법 물어보기 2. λ ˆμ‹œν”Ό 뢁을 μ°Έκ³ ν•˜μ—¬ 딸기라떼 λ§Œλ“€κΈ° λ¨Όμ €, 첫 번째 λ°©λ²•μ˜ 경우, λ§Œμ•½ λ”ΈκΈ°λΌλ–Όμ˜ λ ˆμ‹œν”Όλ₯Ό 얻을 μˆ˜λŠ” μžˆμ§€λ§Œ, λ³€ν™”ν•˜λŠ” μš”κ΅¬μ‚¬ν•­μ— λŒ€μ‘ν•  수 μ—†λ‹€. λ§Œμ•½ μ†λ‹˜μ΄ μΆ”κ°€μ μœΌλ‘œ ‘μ—‡, 근데 딸기라떼..

[객체지ν–₯μ˜μ‚¬μ‹€κ³Όμ˜€ν•΄] 05 - μ±…μž„κ³Ό λ©”μ‹œμ§€

μ˜›λ‚ μ— μ±… μ½μœΌλ©΄μ„œ μž‘μ„±ν–ˆλ˜ 건데 μ˜€λžœλ§Œμ— κΈ€ 올릴 κ²Έ... μ‹œλ¦¬μ¦ˆ λ§ˆλ¬΄λ¦¬λŠ” ν•˜λ©΄ 쒋을 것 κ°™μ•„μ„œ 올리렀고 ν•œλ‹€ :D βœ”οΈ 자율적으둜 ν–‰λ™ν•˜λŠ” 객체 μ•žμ„  μ±•ν„°μ—μ„œ 늘 κ°•μ‘°ν–ˆλ˜ κ²ƒμ²˜λŸΌ, κ°μ²΄λŠ” 자율적으둜 행동이 κ°€λŠ₯ν•˜λ‹€. μ΄λ•Œ, 객체가 ν–‰λ™ν•˜λŠ” μœ μΌν•œ μ΄μœ λŠ”, λ‹€λ₯Έ κ°μ²΄λ‘œλΆ€ν„° μš”μ²­μ„ μˆ˜μ‹ ν–ˆκΈ° λ•Œλ¬Έμ΄λ‹€. μ—¬κΈ°μ„œ μš”μ²­μ„ μ²˜λ¦¬ν•˜κΈ° μœ„ν•΄ 객체가 μˆ˜ν–‰ν•˜λŠ” 행동을 ‘μ±…μž„’이라고 ν•˜λ©°, 자율적인 κ°μ²΄λž€ 슀슀둜의 μ˜μ§€μ™€ νŒλ‹¨μ— λ”°λΌμ„œ 각자 맑은 μ±…μž„μ„ μˆ˜ν–‰ν•˜λŠ” 객체λ₯Ό μ˜λ―Έν•œλ‹€. 객체가 μžμ‹ μ— μ˜μ§€μ— λ”°λΌμ„œ μ±…μž„μ„ 자율적으둜 μˆ˜ν–‰ν•œλ‹€λŠ” 게 무엇을 μ˜λ―Έν•˜λŠ” 걸까? μ‰½κ²Œ μƒκ°ν•˜κΈ° μœ„ν•΄ λ‹€μ‹œ 고양이 μŠ€λ‚΅λ°” 예제λ₯Ό κΊΌλ‚΄λ³΄μž. 고양이 μŠ€λ‚΅λ°”μ˜ 인기가 ν­λ°œν•˜λ©΄μ„œ μ•„μΉ¨λΆ€ν„° λ§Žμ€ 음료 제쑰 μš”μ²­μ΄ λ“€μ–΄μ™”λ‹€. μ΄λ•Œ μ•Œλ°”λƒ₯에 μ…°ν”„λƒ₯μ—κ²Œ ‘..

[객체지ν–₯μ˜μ‚¬μ‹€κ³Όμ˜€ν•΄] 04 - μ—­ν• , μ±…μž„, ν˜‘λ ₯

βœ”οΈ μ—­ν• , μ±…μž„, ν˜‘λ ₯ (κΈ°μ–΅μ—μ„œ μžŠν˜€μ‘Œκ² μ§€λ§Œ) 1μž₯μ—μ„œ μ–ΈκΈ‰ν•˜μ˜€λ˜ 예제λ₯Ό λ‹€μ‹œ κ°€μ Έμ™€λ³΄μž. μ†λ‹˜λƒ₯이 μΉ΄νŽ˜μ—μ„œ 컀피λ₯Ό μ£Όλ¬Έν•˜κΈ°κΉŒμ§€ λ‹€μŒκ³Ό 같은 μš”μ²­κ³Ό 응닡이 이루어진닀. 1. μ†λ‹˜λƒ₯은 μ•Œλ°”λƒ₯μ—κ²Œ 컀피λ₯Ό μš”μ²­ν•œλ‹€. 2. μ•Œλ°”λƒ₯은 μ…°ν”„λƒ₯μ—κ²Œ 컀피λ₯Ό λ§Œλ“€ 것을 μš”μ²­ν•œλ‹€. 3. μš”μ²­μ„ 받은 μ…°ν”„λƒ₯은 컀피λ₯Ό λ§Œλ“€κΈ° μ‹œμž‘ν•˜λ©΄μ„œ μ‘λ‹΅ν•œλ‹€. μ΄λŠ” μ†λ‹˜λƒ₯의 컀피 주문에 λŒ€ν•œ 응닡이기도 ν•˜λ‹€. 4. λ§Œλ“  컀피λ₯Ό μ•Œλ°”λƒ₯이 건넀받아 μ†λ‹˜λƒ₯μ—κ²Œ μ‘λ‹΅ν•œλ‹€. μ—¬κΈ°μ„œ μ…°ν”„λƒ₯이 컀피λ₯Ό λ§Œλ“€λΌλŠ” μš”μ²­μ„ 받을 수 μžˆλŠ” μ΄μœ κ°€ λ¬΄μ—‡μ΄μ—ˆμ„κΉŒ? μ…°ν”„λƒ₯은 λ°”λ¦¬μŠ€νƒ€ 자격증이 있기 λ•Œλ¬Έμ— 컀피λ₯Ό λ§Œλ“€λΌλŠ” μš”μ²­μ— λŒ€ν•΄ μ ν•©ν•˜κ²Œ λŒ€μ‘ν•  수 μžˆμ—ˆκΈ° λ•Œλ¬Έμ΄λ‹€. 객체지ν–₯ μ„Έκ³„μ—μ„œ μ–΄λ–€ 객체가 μ–΄λ–€ μš”μ²­μ— λŒ€λ‹΅ν•  수 μžˆκ±°λ‚˜ μ μ ˆν•œ 행동을 ν•  μ˜λ¬΄κ°€ μžˆλŠ” κ²½..

[객체지ν–₯μ˜μ‚¬μ‹€κ³Όμ˜€ν•΄] 03 - νƒ€μž…κ³Ό 좔상화

βœ”οΈ 좔상화 🌱 μΆ”μƒν™”λž€, λͺ…ν™•ν•˜κ²Œ μ΄ν•΄ν•˜κΈ° μœ„ν•΄ νŠΉμ • μ ˆμ°¨λ‚˜ 물체λ₯Ό μ˜λ„μ μœΌλ‘œ μƒλž΅ν•˜κ±°λ‚˜ 감좀으둜 λ³΅μž‘λ„λ₯Ό κ·Ήλ³΅ν•˜λŠ” 방법이닀. λ³΅μž‘μ„±μ„ μ΄ν•΄ν•˜κΈ° μ‰¬μš΄ μˆ˜μ€€μœΌλ‘œ λ‹¨μˆœν™”ν•˜λŠ” 것이 λͺ©μ μ΄λ‹€. μ§€λ‚œ ν¬μŠ€νŒ…λΆ€ν„° 계속 μ–˜κΈ°ν•˜κ³  μžˆλŠ” '고양이 μŠ€λ‚΅λ°”'λΌλŠ” κ²Œμž„μ΄λ‹€. μœ„ μ΄λ―Έμ§€λŠ” μ‹€μ œλ‘œ κ²Œμž„μ„ ν”Œλ ˆμ΄ν•˜λŠ” μž₯면이닀. μœ„ κ·Έλ¦Όμ—μ„œ 무엇이 λ³΄μ΄λŠ”κ°€? 각각 μ†λ‹˜λƒ₯, μ•Œλ°”λƒ₯, μ…°ν”„λƒ₯이라고 λͺ…ν™•ν•˜κ²Œ μ‘΄μž¬ν•œλ‹€. κ·ΈλŸ¬λ‚˜, μ†λ‹˜λƒ₯도, μ•Œλ°”λƒ₯도, μ…°ν”„λƒ₯도 λͺ¨λ‘ 고양이닀. 그리고 λ™μ‹œμ— 객체라고 λ³Ό 수 μžˆλ‹€. 이와 같이 각각의 객체듀을 ‘고양이’라고 ν•œ λ²ˆμ— μ •μ˜λ‚΄λ¦¬λŠ” 것을 '좔상화'라고 ν•œλ‹€. κ³ μ–‘μ΄λŠ”, 곡톡점을 가진 객체듀을 포괄할 수 μžˆλŠ” κ°œλ…μ΄ λœλ‹€. 그리고, μ΄λŸ¬ν•œ ‘고양이’λΌλŠ” κ°œλ…μ„ μ μš©ν•˜μ—¬ λ‹€μ‹œ μ†λ‹˜λƒ₯, μ•Œλ°”λƒ₯, μ…°ν”„λƒ₯으..

[객체지ν–₯μ˜μ‚¬μ‹€κ³Όμ˜€ν•΄] 02 - μ΄μƒν•œ λ‚˜λΌμ˜ 객체

🌱 λ“€μ–΄κ°€κΈ° μ „ λ³Έ μ±…μ—μ„œλŠ” μ΄μƒν•œ λ‚˜λΌμ˜ μ•¨λ¦¬μŠ€ 이야기와 객체의 κ°œλ…μ„ μ ‘λͺ©μ‹œμΌœ μ„€λͺ…ν•œλ‹€. μ•¨λ¦¬μŠ€λ„ 쒋은 μ˜ˆμ œμ§€λ§Œ, μ§€λ‚œ μ‹œκ°„μ— μ†Œκ°œν–ˆλ˜ "고양이 μŠ€λ‚΅λ°”" κ²Œμž„μ— λ§žμΆ°μ„œ 이번 챕터도 ν’€μ–΄λ‚˜κ°ˆ μ˜ˆμ •μ΄λ‹€. βœ”οΈ 객체의 행동과 μƒνƒœ 고양이 μŠ€λ‚΅λ°” κ²Œμž„μ—μ„œ, 각각의 λƒ₯λƒ₯이듀은 μ½”μŠ€νŠ¬μ„ μž…μ„ 수 μžˆλ‹€. 그리고 μ–΄λ–€ μ½”μŠ€νŠ¬μ„ μž…λŠ”μ§€μ— λ”°λΌμ„œ 얻을 수 μžˆλŠ” νš¨κ³Όκ°€ 달라진닀. λ§Œμ•½, μ•Œλ°”λƒ₯이 μ–΄ν₯ 슈트λ₯Ό μž…μ—ˆλ‹€κ³  μƒκ°ν•΄λ³΄μž. μ•Œλ°”λƒ₯은 μ–΄ν₯ 슈트λ₯Ό μž…μŒμœΌλ‘œμ„œ 생산속도가 μ¦κ°€ν•˜κ²Œ λœλ‹€. μ•Œλ°”λƒ₯의 κΈ°μ‘΄ 생산 μ†λ„λŠ” 10이라고 κ°€μ •ν–ˆμ„ λ•Œ, μ–΄ν₯ 슈트λ₯Ό μž…μœΌλ©΄ 생산 속도가 20이 λ˜λŠ” 것이닀. 이런 μ‹μœΌλ‘œ μ•Œλ°”λƒ₯의 생산 μ†λ„λŠ” μ–΄λ–€ μ½”μŠ€νŠ¬μ„ μž…λŠλƒμ— λ”°λΌμ„œ 달라진닀. = 즉, μ•Œλ°”λƒ₯이 μ–΄λ–€ 행동을 ν•˜λŠ”μ§€μ— λ”°λΌμ„œ μ•Œλ°”λƒ₯의 ..

[객체지ν–₯μ˜μ‚¬μ‹€κ³Όμ˜€ν•΄] 01 - ν˜‘λ ₯ν•˜λŠ” κ°μ²΄λ“€μ˜ 곡동체

🌱 λ“€μ–΄κ°€κΈ° μ „ κ°μ‚¬μ˜€, 일λͺ… 토끼책이라고 λΆˆλ¦¬λŠ” 책이닀. 레벨 1이 λλ‚˜κΈ° 전에 읽고 μ‹Άμ—ˆλŠ”λ° 그러질 λͺ»ν•΄μ„œ λ°©ν•™ κΈ°κ°„ λ™μ•ˆ κ°„λ‹¨ν•˜κ²Œ 읽고 μ •λ¦¬ν•΄λ³΄μ•˜λ‹€. 객체지ν–₯에 λŒ€ν•΄ κ³΅λΆ€ν•˜κΈ° μ „μ—λŠ” ‘λ‚΄κ°€ μ™œ 객체지ν–₯적으둜 μ½”λ“œλ₯Ό μž‘μ„±ν•΄μ•Ό ν•˜μ§€…? μ™œ μΊ‘μŠν™” 이런 κ±Έ μ§€μΌœμ•Ό ν•˜μ§€?’λΌλŠ” 생각을 많이 ν–ˆμ—ˆλŠ”λ°, 객체지ν–₯적 섀계가 μ™œ μ½”λ“œμ˜ μœ μ§€λ³΄μˆ˜μ„±μ„ μ¦κ°€μ‹œν‚€λŠ”μ§€, μ–΄λ–€ μΈ‘λ©΄μ—μ„œ 쒋은지 λ‚΄ λ‚˜λ¦„λŒ€λ‘œ λ¨Έλ¦Ώμ†μ—μ„œ μ •μ˜κ°€ λ˜λŠ” 것 κ°™μ•„μ„œ μž¬λ°Œλ‹€. μžλ°” κ°œλ°œμžλ‘œμ„œ λͺ¨λ“  μ„€κ³„μ˜ 기본은 객체지ν–₯에 λŒ€ν•œ 이해가 μ•„λ‹κΉŒ… λΌλŠ” 생각이 λ“€μ—ˆλ‹€! 각 μž₯에 λŒ€ν•΄μ„œ λ‚΄ λ‚˜λ¦„μ˜ 견해λ₯Ό λ‹΄μ•„ μ •λ¦¬ν•΄λ³΄κ³ μž ν•œλ‹€. βœ”οΈ ν˜‘λ ₯ 관계 ν”νžˆ 객체지ν–₯ 세계λ₯Ό 말할 λ•Œ 싀세계λ₯Ό λͺ¨λ°©ν•˜κΈ° μœ„ν•¨μ΄λΌκ³  λ§Žμ΄λ“€ λ‹΅ν•œλ‹€. (λ‚˜ μ—­μ‹œ 이 책을 읽기 전에 κ·Έλž¬λ‹€) ..