233p ~ 252p
μμ½
π
ννΈ 2 μμ ν κ² : "μΌκΈμ΄ μλ κ²μ μ°Ύκ³ κ·Έκ²μ μΌκΈμΌλ‘ λ°κΏ 보기"
π
μ½λμ λμ λ§‘λ λ² (ν¨μ μ΄λ¦μ μλ μ묡μ μΈμλ₯Ό ν¬μ°©νλ λ²)
- ν¨μ μ¬λ¬κ°κ° λΉμ·ν ꡬνμ μ§λκ³ μκ³ ,
- 'ν¨μ μ΄λ¦'μ΄ κ΅¬νμ μ°¨μ΄λ₯Ό λ§λλ ννλΌλ©΄
- κ° ν¨μλ€μ ν¨μ μ΄λ¦μμ μλ‘ λ€λ₯Έ λΆλΆμ΄ μ묡μ μΈμμ΄λ€.
λ κ°μ§μ 리ν©ν°λ§μΌλ‘ ν΄κ²° κ°λ₯
- μ묡μ μΈμλ₯Ό λλ¬λ΄κΈ°. μ¦, λͺ
μμ μΈμλ‘ λ°κΎΈκΈ° β‘οΈ μ€λμ μ£Όμ
- ν¨μ λ³Έλ¬Έμ μ½λ°±μΌλ‘ λ°κΎΈκΈ° (λ€μ ν¬μ€ν
μμ.)
π
"μ묡μ μΈμλ₯Ό λλ¬λ΄κΈ°" λ¨κ³
- ν¨μ μ΄λ¦μ μλ μ묡μ μΈμλ₯Ό νμΈνλ€.
- λͺ
μμ μΈ μΈμλ₯Ό μΆκ°νλ€.
- ν¨μ λ³Έλ¬Έμ νλ μ½λ©λκ°μ μλ‘μ΄ μΈμλ‘ λ°κΎΌλ€.
- ν¨μλ₯Ό νΈμΆνλ κ³³μ κ³ μΉλ€.
π
λͺ
μμ μΈ μΈμλ‘ μ λ¬ν μ μλ, λ³μλ λ°°μ΄μ λ΄μ μ μλ, μ¦ μΈμ΄ μ΄λμλ μ¬μ©κ°λ₯ν κ² -> μΌκΈ
(κ·Έ λ°λλ μ묡μ μΈ, λ΄μ μ μλ, μ무λ°μλ μ¬μ©ν μ μλ.)
κ·Έλμ "μ묡μ μΈμλ₯Ό λλ¬λ΄κΈ°" 리ν©ν°λ§λ κ²°κ΅, μ묡μ μΈ μ΄λ¦μ μΈμλ‘ λκΈΈμ μλ μ΄λ€κ²μΌλ‘ λ°κΎΈλ κ³Όμ . μ¦, μΌκΈμΌλ‘ λ°κΎΈλ κ³Όμ .
π
μλ°μ€ν¬λ¦½νΈμμ μΌκΈ(first-class)κ° μλ κ²
- μμ μ°μ°μ
- λ°λ³΅λ¬Έ
- 쑰건문
- try/catch λΈλ‘
μΌκΈμΌλ‘ ν μ μλ κ²
- λ³μμ ν λΉ
- ν¨μμ μΈμλ‘ λκΈ°κΈ°
- ν¨μμ 리ν΄κ°μΌλ‘ λ°κΈ°
- λ°°μ΄μ΄λ κ°μ²΄μ λ΄κΈ°
π
e.g.
λ°νμ κ²μ¬ λ°©λ²μΌλ‘ νλλͺ
(μΌκΈμΌλ‘ μ λ¬λ)μ΄ μ¬λ°λ₯Έμ§ νμΈνλ λμ.
APIμ λ³κ²½μΌλ‘ μλ νλλͺ
μ μλ‘μ΄ νλλͺ
μΌλ‘ λ΄λΆμμ λμΉμμΌμ£Όλ λμ.
- μ΄κ²λ€μ νλλͺ
μ΄ μΌκΈμ΄κΈ° λλ¬Έμ ν μ μλ κ².
- μΌκΈμ΄λΌλ λ§μ κ°μ²΄λ λ°°μ΄μ λ΄μ μ μλ€λ λ».
- μΈμ΄μ λͺ¨λ κΈ°λ₯μ νμ©ν΄ νλλͺ
μ μ²λ¦¬ν μ μλ€.
π
μ΄λ€ λ¬Έλ²μ΄λ μΌκΈ ν¨μλ‘ λ°κΏ μ μλ€.
- μλ°μ€ν¬λ¦½νΈμμ 'ν¨μ' μ체λ μΌκΈ κ°. (μΈμ μ λ¬ κ°λ₯, λ³μ/λ°°μ΄μ λ΄κΈ° κ°λ₯, μ΄λμλ μ¬μ© κ°λ₯)
- '+' μ°μ°μλ μΌκΈμ΄ μλλ€. λ¨, κ°μ λμμ νλ μΌκΈ ν¨μλ₯Ό λ§λ€ μ μλ€.
- μ¦, μ΄λ€ λ¬Έλ²μ΄λ μΌκΈ ν¨μλ‘ λ°κΏ μ μλ€.
λ°μ·
κ·ΈλΌ μ°λ¦¬λ μ΄λ»κ² ν΄μΌ ν κΉμ?
μ¬λ¬λΆκ³Ό μ¬λ¬λΆμ νμ΄ μ νν μΈμ΄κ° νΈνλ€λ©΄ κ±±μ νμ§ λ§κ³ κ³μ μ¬μ©νμλ©΄ λ©λλ€.
κ·Έλ¦¬κ³ μ μ λ μλ κ²μ΄ μ’κ² λ€μ.
- μ μ νμ
vs λμ νμ
, μ»΄νμΌ νμ κ²μ¬ vs λ°νμ κ²μ¬ μμ.
λ°μ΄ν° μ§ν₯
μ΄λ²€νΈμ μν°ν°μ λν μ¬μ€μ νννκΈ° μν΄ μΌλ° λ°μ΄ν° ꡬ쑰λ₯Ό μ¬μ©νλ νλ‘κ·Έλλ° νμ.
- νΈμΆ κ·Έλν μλμ μμΉν μΌλ°μ μΈ(μμ μμΉν ꡬ체μ μΈ κ²κ³Ό λ°λ) μν°ν°μ λν΄μλ, μ¬λ¬ κ³³μμ μ¬μ©λ μ¬μ¬μ©μ±μ μν΄ μΌλ°μ μΈ λ°μ΄ν° κ΅¬μ‘°μΈ κ°μ²΄/λ°°μ΄μ μ¬μ©.
- μΌλ° λ°μ΄ν° κ΅¬μ‘°κ° μλ μμμ μΈν°νμ΄μ€(컀μ€ν
API)λ‘ κ°μΈμ μ¬μ©νλ©΄, λ°μ΄ν°λ₯Ό μ ν΄μ§ λ°©λ²μΌλ‘λ§ μ¨μΌ νλ€. λ¬Όλ‘ κ·Έλ° μ νμ΄ μ μ©ν μκ°λ μμ κ².
λ©λͺ¨
κ·Έλ¦¬κ³ μ μ λ μλ κ²μ΄ μ’κ² λ€μ.