μ—…λ°μ΄νŠΈ:

1. Spring μ΄λž€?

image

Spring 은 νŠΉμ •ν•œ ν•˜λ‚˜λ₯Ό λœ»ν•˜λŠ”κ²Œ μ•„λ‹ˆλΌ, μ—¬λŸ¬ κΈ°μˆ λ“€μ˜ λͺ¨μŒμ΄λΌκ³  λ³Ό 수 μžˆλ‹€. Ex) μŠ€ν”„λ§ ν™ˆνŽ˜μ΄μ§€

μŠ€ν”„λ§ ν”„λ ˆμž„μ›Œν¬, μŠ€ν”„λ§ λΆ€νŠΈλ₯Ό ν¬ν•¨ν•˜μ—¬, ν”„μŠ€ν•„ 데이터, μŠ€ν”„λ§ μ„Έμ…˜, μŠ€ν”„λ§ μ‹œνλ¦¬ν‹° λ“±..을 ν¬ν•¨ν•œλ‹€.

κ°€μž₯ 큰 핡심은 μŠ€ν”„λ§ ν”„λ ˆμž„μ›Œν¬μ΄κ³  ,이λ₯Ό νŽΈλ¦¬ν•˜κ²Œ μ“Έ 수 μžˆλ„λ‘ ν•˜λŠ”κ²Œ μŠ€ν”„λ§ λΆ€νŠΈμ΄λ‹€.

μš”μ¦˜μ€ μŠ€ν”„λ§ λΆ€νŠΈλ₯Ό 주둜 ν™œμš©ν•΄μ„œ μŠ€ν”„λ§ ν”„λ ˆμž„μ›Œν¬λ₯Ό μ‚¬μš©ν•œλ‹€κ³  ν•œλ‹€.



Spring ν”„λ ˆμž„ μ›Œν¬ κΈ°λŠ₯λ“€

  • 핡심 기술: μŠ€ν”„λ§ DI μ»¨ν…Œμ΄λ„ˆ, AOP, 이벀트, 기타
  • μ›ΉκΈ°μˆ : μŠ€ν”„λ§ MVC, μŠ€ν”„λ§ WebFlux
  • 데이터 μ ‘κ·Ό 기술: νŠΈλžœμž­μ…˜, JDBC, ORM 지원, XML 지원
  • 기술 톡합: μΊμ‹œ, 이메일, 원격 μ ‘κ·Ό, μŠ€μΌ€μ€„λ§
  • ν…ŒμŠ€νŠΈ: μŠ€ν”„λ§ 기반 ν…ŒμŠ€νŠΈ 지원
  • μ–Έμ–΄: μ½”ν‹€λ¦°, 그루비



μŠ€ν”„λ§ λΆ€νŠΈλŠ” μ›Ή μ„œλ²„λ₯Ό λ‚΄μž₯ν•˜κ³  있기 λ•Œλ¬Έμ— λ”°λ‘œ μ›Ήμ„œλ²„λ₯Ό μ„€μΉ˜ μ•Šμ•„λ„ λ˜λŠ” μž₯점이 μžˆλ‹€.

λ˜ν•œ starterκ°€ μ™ΈλΆ€ λΌμ΄λΈŒλŸ¬λ¦¬λ„ λ‹€ μ•Œμ•„μ„œ λŒμ–΄μ™€μ£Όλ©° μ™ΈλΆ€ 라이브러리 버전 μ΅œμ ν™”κ°€ λ˜μ–΄μžˆκ³ , λ©”νŠΈλ¦­ λͺ¨λ‹ˆν„°λ§λ“±μ„ μ§€μ›ν•΄μ€€λ‹€λŠ” μž₯점이 μžˆμ–΄μ„œ μ΅œκ·Όμ— 기본으둜 μ‚¬μš© λœλ‹€κ³  ν•œλ‹€.


ν•˜μ§€λ§Œ, μŠ€ν”„λ§ λΆ€νŠΈλ₯Ό μ‚¬μš©ν•œλ‹€λŠ” 뜻이 μŠ€ν”„λ§ λΆ€νŠΈμ™€ μŠ€ν”„λ§ ν”„λ ˆμž„μ›Œν¬μ™€ λ³„λ„λ‘œ μ‚¬μš©ν•œλ‹€λŠ” 뜻이 μ•„λ‹ˆλ‹€.

μŠ€ν”„λ§ λΆ€νŠΈλ₯Ό λ„μ™€μ£ΌλŠ” ν”„λ‘œκ·Έλž¨μ΄λΌκ³  μƒκ°ν•˜λ©΄ λœλ‹€!


κ·Έλ ‡λ‹€λ©΄ μŠ€ν”„λ§μ„ μ™œ λ§Œλ“€μ—ˆμ„κΉŒ?

Spring은 μžλ°” μ–Έμ–΄ 기반의 ν”„λ ˆμž„μ›Œν¬λ‘œ, 객체지ν–₯ μ–Έμ–΄κ°€ 가진 κ°•λ ₯ν•œ νŠΉμ§•μ„ μ‚΄λ €λ‚΄λŠ” ν”„λ ˆμž„ μ›Œν¬μ΄λ‹€.

즉, 쒋은 객체 지ν–₯ μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ„ κ°œλ°œν•  수 μžˆλ„λ‘ λ„μ™€μ£ΌλŠ” ν”„λ ˆμž„μ›Œν¬μ΄λ‹€!


기술의 ν•΅μ‹­ 컨셉은 항상 λ‹¨μˆœν•˜κ²Œ μ‹œμž‘ν•˜λŠ” 것이닀. 이 컨셉이 μ’‹μœΌλ©΄ 점점 살이 λΆ™μœΌλ©΄μ„œ μ»€μ§€λŠ” 것이닀.

Spring은 λ‘œλ“œ 쑴슨의 3λ§Œμ€„μ—μ„œ μ‹œμž‘λ˜μ—ˆλ‹€βœ¨




2. 쒋은 객체 지ν–₯ ν”„λ‘œκ·Έλž˜λ°?

객체 지ν–₯ ν”„λ‘œκ·Έλž˜λ°

β‡’ κ°μ²΄λ“€μ˜ λͺ¨μž„μœΌλ‘œ ν”„λ‘œκ·Έλž¨μ„ μ΄ν•΄ν•˜λŠ” 것. 즉 객체듀이 μ„œλ‘œ 메세지, 데이터 λ₯Ό μ£Όκ³  λ°›κ³  ν˜‘λ ₯을 ν•˜λŠ” 것

β‡’ μœ μš©ν•˜κ³  변경이 μš©μ΄ν•œ μž₯점이 μžˆλ‹€.

β‡’ λΆ€ν’ˆμ„ κ°ˆμ•„λΌμš°λ“―μ΄ ν”„λ‘œκ·Έλž˜λ°μ„ ν•  수 μžˆλ‹€λŠ” 것@!


λ‹€ν˜•μ„±(Polymorphism)

  • μ‹€μ„Έκ³„μ˜ μžλ™μ°¨λ₯Ό 예둜 λ“€μ–΄λ³΄μž.

    μš΄μ „μžμ™€ μžλ™μ°¨κ°€ μžˆμ„ λ•Œ, 주인이 μžλ™μ°¨λ₯Ό 바꾸더라도 μš΄μ „μ„ ν•˜λŠ”λ° λ¬Έμ œκ°€ μ—†λ‹€.

    μ—¬κΈ°μ„œ μžλ™μ°¨λ₯Ό λ°”κΎΈλŠ” 게 λ‹€ν˜•μ„±μ΄ μ˜λ―Έν•˜λŠ” 것이닀.


    β‡’ μžλ™μ°¨ μ—­ν• μ˜ μΈν„°νŽ˜μ΄μŠ€κ°€ μ •ν•΄μ Έμžˆκ³  이것에 따라 λ§Œλ“€μ—ˆκΈ° λ•Œλ¬Έμ—, ν΄λΌμ΄μ–ΈνŠΈκ°€ λ‚΄λΆ€ ꡬ쑰λ₯Ό μ•Œ ν•„μš”κ°€ μ—†κ³  객체가 μžμ‹ μ˜ 역할을 ν•˜κ³  μžˆλ‹€λ©΄ λ¬Έμ œκ°€ μ—†λ‹€.

    β‡’ 즉, μ—­ν• κ³Ό κ΅¬ν˜„μœΌλ‘œ 세상을 κ΅¬λΆ„ν–ˆκΈ° λ•Œλ¬Έμ—, μƒˆλ‘œμš΄ μžλ™μ°¨κ°€ λ‚˜μ™€λ„ ν΄λΌμ΄μ–ΈνŠΈλŠ” μš΄μ „μ„ μƒˆλ‘œ λ°°μš°μ§€ μ•Šμ•„λ„ λœλ‹€.

    β‡’ μžλ™μ°¨μ˜ 세계λ₯Ό λ¬΄ν•œνžˆ ν™•μž₯ κ°€λŠ₯ν•œ 것이닀.

    β‡’ ν΄λΌμ΄μ–ΈνŠΈμ—κ²Œ 영ν–₯을 주지 μ•Šκ³  μƒˆλ‘œμš΄ κΈ°λŠ₯을 제곡 ν•  수 μžˆλŠ” 것이닀!


    λ‹€λ₯Έ μ˜ˆμ‹œ ex) 곡연 λ¬΄λŒ€(각 주인곡이 자기 μ—­ν• λ§Œ μ œλŒ€λ‘œ μ†Œν™”ν•˜λ©΄ μƒλŒ€λ°©μ΄ λˆ„κ΅¬λ“  λ¬Έμ œκ°€ μ—†λ‹€.), ν‚€λ³΄λ“œ, 마우슀 λ“±λ“±


  • μ—­ν• κ³Ό κ΅¬ν˜„μ„ 뢄리

    • 세상이 λ‹¨μˆœν•΄μ§€κ³ ,μœ μ—°ν•΄μ§€λ©° 변경도 νŽΈλ¦¬ν•΄μ§„λ‹€.

    • ν΄λΌμ΄μ–ΈνŠΈλŠ” λŒ€μƒμ˜ μ—­ν• (μΈν„°νŽ˜μ΄μŠ€)만 μ•Œλ©΄ λœλ‹€.

    • ν΄λΌμ΄μ–ΈνŠΈλŠ” κ΅¬ν˜„ λŒ€μƒμ˜ λ‚΄λΆ€ ꡬ쑰λ₯Ό λͺ°λΌλ„ λœλ‹€.

    • ν΄λΌμ΄μ–ΈνŠΈλŠ” κ΅¬ν˜„ λŒ€μƒμ˜ λ‚΄λΆ€ ꡬ쑰가 λ³€κ²½λ˜μ–΄λ„ 영ν–₯을 받지 μ•ŠλŠ”λ‹€.

    • ν΄λΌμ΄μ–ΈνŠΈλŠ” κ΅¬ν˜„ λŒ€μƒ 자체λ₯Ό 변경해도 영ν–₯을 받지 μ•ŠλŠ”λ‹€.


이걸 μžλ°”μ— 적용 ν•˜λ©΄ μ•„λž˜μ™€ 같이 μ •μ˜κ°€ κ°€λŠ₯ν•˜λ‹€.

  • μ—­ν•  = μΈν„°νŽ˜μ΄μŠ€
  • κ΅¬ν˜„ = μΈν„°νŽ˜μ΄μŠ€λ₯Ό κ΅¬ν˜„ν•œ 클래슀, κ΅¬ν˜„ 객체


ν”„λ‘œκ·Έλž¨μ€ 객체의 ν˜‘λ ₯μ΄λΌλŠ” 관계뢀터 생각해야 ν•œλ‹€.

혼자 μžˆλŠ” κ°μ²΄λŠ” μ—†κ³ , 수 λ§Žμ€ 객체 ν΄λΌμ΄μ–ΈνŠΈμ™€ 객체 μ„œλ²„λŠ” μ„œλ‘œ ν˜‘λ ₯ 관계λ₯Ό 가진닀.

κ΅¬ν˜„λ³΄λ‹€ μΈν„°νŽ˜μ΄μŠ€κ°€ 먼저이고, ν˜‘λ ₯μ΄λΌλŠ” κ΄€κ³„μ—μ„œ μ‹œμž‘ν•˜λŠ” 것이 λ‹€μš©μ„±μ˜ λ³Έμ§ˆμ΄λ‹€!


μ •λ¦¬ν•˜μžλ©΄, μ—­ν• κ³Ό κ΅¬ν˜„μ„ 뢄리 ν•˜λŠ” 것은

μž₯점

  • μ‹€μ„Έκ³„μ˜ 역할와 κ΅¬ν˜„μ΄λΌλŠ” νŽΈλ¦¬ν•œ 컨셉을 λ‹€ν˜•μ„±μ„ 톡해 객체 μ„ΈμƒμœΌλ‘œ κ°€μ Έμ˜¬ 수 있음
  • μœ μ—°ν•˜κ³ , 변경이 용이
  • ν™•μž₯ κ°€λŠ₯ν•œ 섀계
  • ν΄λΌμ΄μ–ΈνŠΈμ— 영ν–₯을 주지 μ•ŠλŠ” 변경이 κ°€λŠ₯
  • μΈν„°νŽ˜μ΄μŠ€λ₯Ό μ•ˆμ •μ μœΌλ‘œ 잘 μ„€κ³„ν•˜λŠ” 것이 μ€‘μš”!

ν•œκ³„

  • μ—­ν• (μΈν„°νŽ˜μ΄μŠ€)μžμ²΄κ°€ λ³€ν•˜λ©΄, ν΄λ¦¬μ•„μ–ΈνŠΈ, μ„œλ²„ λͺ¨λ‘μ— 큰 변경이 λ°œμƒ


μΈν„°νŽ˜μ΄μŠ€λ₯Ό μ œλŒ€λ‘œ 섀계 ν•˜λŠ”κ²Œ κ°€μž₯ μ€‘μš”ν•˜λ‹€.

이후에 κ°€μž₯ 크게 λ³€ν•˜μ§€ μ•Šκ³  κΈ°λŠ₯ μ—…λ°μ΄νŠΈ 및 μΆ”κ°€ κ°€λŠ₯ν•˜κΈ° λ•Œλ¬Έμ΄λ‹€.

객체 지ν–₯의 꽃은 λ‹€ν˜•μ„±μ΄κ³ , μŠ€ν”„λ§μ€ 이λ₯Ό κ·ΉλŒ€ν™” ν•  수 μžˆλ„λ‘ λ„μ™€μ£ΌλŠ” 것이닀.




3. 쒋은 κ°μ œμ§€ν–₯ μ„€κ³„μ˜ 5가지 원칙(SOLID)


SOLD : 클린 μ½”λ“œλ‘œ 유λͺ…ν•œ λ‘œλ²„νŠΈ λ§ˆν‹΄μ΄ 쒋은 객체 지ν–₯ μ„€κ³„μ˜ 5가지 원칙을 정리

  • SRP: 단일 μ±…μž„ 원칙(single responsibility principle)

  • OCP: 개방-폐쇄 원칙 (Open/closed principle)

  • LSP: λ¦¬μŠ€μ½”ν”„ μΉ˜ν™˜ 원칙 (Liskov substitution principle)

  • ISP: μΈν„°νŽ˜μ΄μŠ€ 뢄리 원칙 (Interface segregation principle)

  • DIP: μ˜μ‘΄κ΄€κ³„ μ—­μ „ 원칙 (Dependency inversion principle)

    *μ•žκΈ€μžλ₯Ό λ”°μ„œ λ§Œλ“¬


πŸ“ SRP: 단일 μ±…μž„ 원칙

  • ν•œ ν΄λž˜μŠ€λŠ” ν•˜λ‚˜μ˜ μ±…μž„λ§Œ κ°€μ Έμ•Ό ν•œλ‹€. (λ¬Έλ§₯κ³Ό 상황에 따라 λ‹€λ₯΄λ‹€)

  • μ€‘μš”ν•œ 기쀀은 변경이닀. 변경이 μžˆμ„ λ•Œ νŒŒκΈ‰ νš¨κ³Όκ°€ 적으면 단일 μ±…μž„ 원칙을 잘 λ”°λ₯Έ 것

    β‡’ κΈ°λŠ₯이 μ—…λ°μ΄νŠΈ, μΆ”κ°€ λ λ•Œ μ–Όλ§ˆλ‚˜ 변경이 적게 ν•„μš”ν•œμ§€κ°€ μ€‘μš” 포인트

  • Ex) UI λ³€κ²½, 객체의 생성과 μ‚¬μš©μ„ 뢄리 β‡’ μ μ ˆν•˜κ²Œ μ‘°μ ˆν•˜λŠ”κ²Œ λ¬˜λ―Έμ΄λ‹€.


πŸ“ OCP: 개방-폐쇄 원칙 βœ”οΈμ€‘μš”

  • μ†Œν”„νŠΈμ›¨μ–΄ μš”μ†ŒλŠ” ν™•μž₯에 μ—΄λ € μžˆμ§€λ§Œ λ³€κ²½μ—λŠ” λ‹«ν˜€ μžˆμ–΄μ•Ό ν•œλ‹€.

  • κ΅¬ν˜„ 객체λ₯Ό λ³€κ²½ν•˜λ €λ©΄ ν΄λΌμ΄μ–ΈνŠΈμ˜ μ½”λ“œλ₯Ό λ³€κ²½ν•΄μ•Ό ν•˜λŠ” κ²½μš°κ°€ 생긴닀.

    μ΄λŸ΄λ•ŒλŠ” λ‹€ν˜•μ„±μ„ ν™œμš©ν•΄μ•Ό ν•œλ‹€! β‡’ 객체λ₯Ό μƒμ„±ν•˜κ³  연관관계λ₯Ό λ§Ίμ–΄μ£ΌλŠ” λ³„λ„μ˜ 쑰립, μ„€μ •μžκ°€ ν•„μš”ν•˜λ‹€.


πŸ“ LSP: λ¦¬μŠ€μ½”ν”„ μΉ˜ν™˜ 원칙

  • κ°„λ‹¨νžˆ λ§ν•˜μžλ©΄, μ–΄λ–€ μΈν„°νŽ˜μ΄μŠ€κ°€ 있고 κ΅¬ν˜„μ²΄κ°€ μžˆλ‹€λ©΄ μΈν„°νŽ˜μ΄μŠ€μ˜ μ˜λ„μ™€ 같이 λ§Œλ“€μ–΄μ•Ό ν•œλ‹€.

    즉, κΈ°λŠ₯적으둜 보μž₯을 ν•΄μ•Ό ν•˜λŠ” 것이닀.

    β‡’ μžλ™μ°¨μ˜ 엑셀을 밟으면 λ’€λ‘œ κ°€λŠ”κ²Œ μ•„λ‹ˆλΌ μ•žμœΌλ‘œ κ°€μ•Όν•œλ‹€. λŠλ¦¬λ”λΌλ„ μ•žμœΌλ‘œ κ°€λŠ”κ²Œ λ§žλŠ” 것!


πŸ“ ISP: μΈν„°νŽ˜μ΄μŠ€ 뢄리 원칙

  • κ°„λ‹¨νžˆ λ§ν•˜μžλ©΄ μΈν„°νŽ˜μ΄μŠ€λ₯Ό μž‘κ²Œ λ‚˜λˆ„λŠ” 것이라 λ³Ό 수 μžˆλ‹€.

    μžλ™μ°¨ μΈν„°νŽ˜μ΄μŠ€ β†’ μš΄μ „ μΈν„°νŽ˜μ΄μŠ€, μ •λΉ„ μΈν„°νŽ˜μ΄μŠ€λ‘œ 뢄리

    μžλ™μ°¨κ°€ μΈν„°νŽ˜μ΄μŠ€ ν•˜λ‚˜κ°€ λ„ˆλ¬΄ ν¬λ‹ˆκΉ μš΄μ „μ΄λž‘ μ •λΉ„λ‘œ λ”°λ‘œ λ‚˜λˆ„λŠ” 것이닀.

    그럼 μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€λ„ λ‚˜λˆŒ 수 μžˆλ‹€!

    μΈν„°νŽ˜μ΄μŠ€κ°€ λͺ…확해지고 λŒ€μ²΄ κ°€λŠ₯성이 높아진닀.


πŸ“ DIP: μ˜μ‘΄κ΄€κ³„ μ—­μ „ 원칙 βœ”οΈμ€‘μš”

  • μ‰½κ²Œ λ§ν•˜λ©΄ ν΄λΌμ΄μ–ΈνŠΈ μ½”λ“œκ°€ κ΅¬ν˜„ 클래슀λ₯Ό 바라보지 말고 μΈν„°νŽ˜μ΄μŠ€λ§Œ λ°”λΌλ³΄μžλΌλŠ” 것이닀.
  • μ—­ν• κ³Ό κ΅¬ν˜„μ„ μ² μ €ν•˜κ²Œ λΆ„λ¦¬ν•΄μ„œ μ‹œμŠ€ν…œμ„ μ–Έμ œκ°€ κ°ˆμ•„ 끼울 수 μžˆλ„λ‘ λ§Œλ“œλŠ” 것이닀.
  • μ—­ν• (Role)에 μ˜μ‘΄ν•΄μ•Ό ν•œλ‹€. ν΄λΌμ΄μ–ΈνŠΈκ°€ μΈν„°νŽ˜μ΄μŠ€μ— μ˜μ‘΄ν•΄μ•Ό ν•œλ‹€.


μ—¬κΈ°κΉŒμ§€ 정리,

  • 객체 지ν–₯의 핡심은 λ‹€ν˜•μ„±
  • λ‹€ν˜•μ„± λ§ŒμœΌλ‘œλŠ” μ‰½κ²Œ λΆ€ν’ˆμ„ κ°ˆμ•„ λΌμš°λ“―μ΄ κ°œλ°œν•  수 μ—†λ‹€.
  • λ‹€ν˜•μ„± λ§ŒμœΌλ‘œλŠ” κ΅¬ν˜„ 객체λ₯Ό λ³€κ²½ν•  λ•Œ ν΄λΌμ΄μ–ΈνŠΈ μ½”λ“œλ„ ν•¨κ»˜ λ³€κ²½λœλ‹€.
  • λ‹€ν˜•μ„± λ§ŒμœΌλ‘œλŠ” OCP, DIPλ₯Ό 지킬 수 μ—†λ‹€.

κ·Έλ ‡λ‹€λ©΄ μ–΄λ–»κ²Œ ν•΄μ•Όν•˜λŠ”κ°€?




4. 객체 지ν–₯ 섀계와 μŠ€ν”„λ§

μŠ€ν”„λ§μ΄μ•ΌκΈ°μ— μ™œ 객체 지ν–₯ 이야기가 λ‚˜μ˜€λŠ”κ°€?

  • μŠ€ν”„λ§μ€ λ‹€μŒ 기술둜 λ‹€ν˜•μ„± + OCP, DIPλ₯Ό κ°€λŠ₯ν•˜κ²Œ 지원
  • DI(Dependency Injection): μ˜μ‘΄κ΄€κ³„, μ˜μ‘΄μ„± μ£Όμž…
  • DI μ»¨ν…Œμ΄λ„ˆ 제곡
  • ν΄λΌμ΄μ–ΈνŠΈ μ½”λ“œμ˜ λ³€κ²½ 없이 κΈ°λŠ₯ ν™•μž₯
  • μ‰½κ²Œ λΆ€ν’ˆμ„ κ΅μ²΄ν•˜λ“―μ΄ 개발


κ·Έλ ‡κΈ° λ•Œλ¬Έμ— μŠ€ν”„λ§μ„ μ‚¬μš© ν•˜λŠ” 것이닀!



5. μ΅œμ’… 정리

  • λͺ¨λ“  섀계에 μ—­ν• κ³Ό κ΅¬ν˜„μ„ λΆ„λ¦¬ν•˜μž.
  • μžλ™μ°¨, κ³΅μ—°μ˜ 예λ₯Ό λ– μ˜¬λ €λ³΄μž.
  • μ• ν”Œλ¦¬μΌ€μ΄μ…˜ 섀계도 곡연을 섀계 ν•˜λ“―μ΄ λ°°μ—­λ§Œ λ§Œλ“€μ–΄λ‘κ³ , λ°°μš°λŠ” μ–Έμ œλ“ μ§€ μœ μ—°ν•˜κ²Œ λ³€κ²½ν•  수 μžˆλ„λ‘ λ§Œλ“œλŠ” 것이 쒋은 객체 지ν–₯ 섀계닀.
  • μ΄μƒμ μœΌλ‘œλŠ” λͺ¨λ“  섀계에 μΈν„°νŽ˜μ΄μŠ€λ₯Ό λΆ€μ—¬ν•˜μž
  • λ³€κ²½μ˜ λ²”μœ„κ°€ μž‘κ³  μœ μ—°ν•΄μ§„λ‹€.


ν•˜μ§€λ§Œ, μΈν„°νŽ˜μ΄μŠ€λ₯Ό λ„μž…ν•˜λ©΄ 좔상화 λΉ„μš©μ΄ λ°œμƒν•œλ‹€.

좔상화가 되면 κ°œλ°œμžκ°€ ν•œλ²ˆ 더 μ½”λ“œλ₯Ό μ—΄μ–΄μ„œ κ΅¬ν˜„ μΌ€μ΄μŠ€κ°€ 무엇인지 ν•œλ²ˆ 더 봐야 ν•œλ‹€.

즉, μž₯점이 단점이 λŠ˜μ–΄λ‚  λ•Œ μ μš©ν•˜λŠ” 게 μ’‹λ‹€.

(ν™•μž₯ κ°€λŠ₯성이 μ—†μœΌλ©΄ μΈν„°νŽ˜μ΄μŠ€λ₯Ό 없이 κ·ΈλŒ€λ‘œ μ“°κ³ , λ‚˜μ€‘μ— λ¦¬νŒ©ν† λ§μ„ ν•˜λŠ” 것도 ν•˜λ‚˜μ˜ 방법이닀.)






🌿 μΈν”„λŸ° μŠ€ν”„λ§ 핡심 원리 기본편: κΉ€μ˜ν•œ λ‹˜μ˜ κ°•μ˜λ₯Ό λ“£κ³  μ •λ¦¬ν•œ λ‚΄μš©μž…λ‹ˆλ‹€.