λ°μν
π μ€λ λ°°μ΄ κ²
βοΈ κ°λ μ± μ’μ μ½λ μμ±λ²
μμ μ½λλ₯Ό λκ° λ΄λ μ§κ΄μ μΌλ‘ μ΄ν΄ν μ μκ³ , μ½κΈ° νΈνλλ‘ νλ €λ©΄ μ΄λ€ μμΌλ‘ μμ±ν΄μΌ νλ μ§μ λν΄ κ³ λ―Όνκ³ μμλλ°, λλμ΄ μ€λ μ΄ μ£Όμ μ λν΄ κ³΅λΆνκ² λμλ€. λ¬Όλ‘ λ± μ ν΄μ§ λ°©μμ΄ μλκ² μλλΌ μ¬λλ§λ€ μ·¨ν₯μ΄ λ°μλκΈ°λ νκ³ , μ’ λ¬λΌλ λͺ¨λ μ μμ μΌλ‘ μλνκΈ° λλ¬Έμ μ§μ₯μ μλ€. νμ§λ§ νμ μ΄ νμμ μΈ κ°λ°μμκ² μμ΄μ, λΉ λ₯΄κ² μ½μ μ μλ κΉλν μ½λλ μν΅ κ³Όμ μμ μκΈ°λ λΉμ©μ μ€μ¬μ€λ€. κ°μ΄λ λΌμΈλ€μ 보λκΉ μ§κΈκΉμ§ μ¨μλ μ΅κ΄λ€ μ€μμλ κ³ μΉ κ²λ€μ΄ μμ΄μ μ€λ μ½λλ₯Ό μμ±ν λλ λ°μν΄λ³΄λ €κ³ λ Έλ ₯νλ€. ππ»
βοΈ Coplit (Algorithm Basic) 20λ¬Έμ νκΈ°
μκ³ λ¦¬μ¦ λ¬Έμ λ₯Ό μ νμ΄λ³΄λ©΄μ μ§κΈκΉμ§ λ°°μ λ λͺ¨λ κ°λ λ€μ 볡μ΅ν μ μμλ€. μ λ§ λ°°μ λ λͺ¨λ κ²λ€μ μ‘°ν©ν΄μ μ¬μ©ν΄μΌ νλλ°, νμ€ν μΈμ μ΄λ€ κ°λ μ μ¬μ©ν΄μΌ νλ μ§ μ΅νκΈ°μ μ§κΈμΌλ‘μλ λ¬Έμ λ₯Ό νμ΄λ³΄λ κ² κ°μ₯ μ’μ κ² κ°λ€. μ²μμλ μλμ½λλ₯Ό λ¨Όμ μμ±νκ³ νλ¨κ³μ© νμ΄λ³΄λ €κ³ νμΌλ κ°μλ‘ νμμ²λΌ μμμ νλ¦λλ‘ νμ΄κ°λ€.. λκ° νλ² νλ¦μ λμΉλ©΄ λ¨Έλ¦¬κ° λ°±μ§κ° λ κ² κ°μμ νλ²μ μ§μ€ν΄μ νμλλ λ¨Έλ¦¬κ° μνκΈ°λ νλ€ π΅ λ¬Έμ λ₯Ό νκ³ Referenceλ₯Ό 보λ λμλ λ€λ₯Έ λ°©μμΌλ‘ λ¬Έμ λ₯Ό ν΄κ²°ν κ²λ€λ λ§μ΄ 보μ¬μ μ΄ λΆλΆμ 머리λ₯Ό μνκ³ λ΄μΌ 볡μ΅νλ©΄μ λΉκ΅ν΄λ΄μΌκ² λ€.
βοΈMapReduce Model
ν° λ¬Έμ λ€μ 'μμ λ¬Έμ μ¬λ¬κ°λ‘ μͺΌκ° λ³΄λ€ λΉ λ₯΄κ² λ¬Έμ λ₯Ό ν΄κ²°ν μ μλλ‘' νλ 맡리λμ€ λͺ¨λΈμ λν΄ κ³΅λΆνλ€. 맡리λμ€λ ν¬κ² Map(맡), Reduce(리λμ€) λ λ¨κ³μ μμ μΌλ‘ ꡬμ±λλ€. Mapμ μκ² μͺΌκ° λ°μ΄ν°λ₯Ό κ΄λ ¨μλ λ°μ΄ν°λΌλ¦¬ Key, ValueμμΌλ‘ λ¬Άλ μμ μ΄κ³ , Reduceλ Mapμμ μ κ±°μΉ λ°μ΄ν°μμ μ€λ³΅μ μ κ±°νκ³ μνλ λ°μ΄ν°λ₯Ό μΆμΆν΄λ΄λ μμ μ΄λ€. μ½μ§ μμ κ°λ μ΄λΌ λ μμΈν κ³Όμ μ λν΄μλ μ’ λ νμ€νκ² κ³΅λΆνκ³ λ€μ μ 리ν΄μ λΈλ‘κΉ ν΄λ¬μΌκ² λ€.
π κΈ°μ΅ν κ²
βοΈ μ½λ μ€νμΌλ§ TIP
naming : λ³μλͺ (κ°μ λ³Έμ§μ μλ―Έ λ΄κΈ°), λ°°μ΄/κ°μ²΄λͺ (볡μλͺ μ¬), boolean typeλ³μ(is,are λΆμ΄κΈ°), ν¨μλͺ (λμ¬λ‘ μμ),
Class type λ³μ(첫κΈμλ₯Ό λλ¬Έμλ‘), μμ(λͺ¨λ λλ¬Έμ, snake_case)
punctuation : {}μλ΅X, λ¬Έμμ΄ νμλ ' '(μμλ°μ΄ν), μ€λ°κΏμλ λ¬Έμμ΄μ ``(backtick),
if/for/whileλ¬Έ λμλ ;(μΈλ―Έμ½λ‘ )X, ν¨μννμ λμλ ;(μΈλ―Έμ½λ‘ )O
βοΈforEach(), map()μ μ°¨μ΄
λ λ€ μ£Όμ΄μ§ ν¨μ(callbackν¨μ)λ₯Ό λ°°μ΄μ κ° μμμ λν΄ μ€ννλ λ©μλμ΄λ€. λμ μ°¨μ΄μ μ mapμ ν¨μλ₯Ό κ° μμμ μ μ©ν λ°°μ΄μ, forEachλ undefinedλ₯Ό λ°ννλ€λ κ²μ΄λ€. κ·Έ μ΄μ λ forEach()λ κ° μμλ§λ€ ν λ²μ© ν¨μ(callback)λ₯Ό 'μ€ν'λ§νλ κ²κ³Ό λ¬λ¦¬, map()μ κ° μμμ ν¨μ(callback)λ₯Ό 'νΈμΆ'ν κ²°κ³Όλ₯Ό λͺ¨μ μλ‘μ΄ 'λ°°μ΄λ‘ λ°ν'νκΈ° λλ¬Έμ΄λ€!
→ forEachλ ν¨μ μ€νλ§, mapμ λ°°μ΄ μ μΈ, ν λΉκΉμ§!
βοΈObject.assign()
κ°μ²΄λ€μ λ³ν©νλ λ©μλλ‘, 기본ꡬ쑰λ Object.assign(target, ...sources) μ΄λ κ² μ΄λ€. μ¬κΈ°μ μμ€(source) κ°μ²΄λ€μ νκ²(target) κ°μ²΄μ ν©μ³μ§λ©°, μ΅μ’ μ μΌλ‘ μ΄ νκ² κ°μ²΄κ° return λλ€!
π λ 곡λΆν κ²
βοΈ Coplit (Algorithm Basic) λ€λ₯Έ λ°©λ²μΌλ‘ νμ΄λ³΄κΈ°
Referenceκ³Ό λ΄κ° νΌ λ°©λ²μ λΉκ΅ν΄λ³΄κ³ μ κ·Ό λ°©λ²μ΄ λ§μ΄ λ€λ₯Έ λ¬Έμ λ€μ, Reference λ°©λ²λλ‘ λ€μ νμ΄λ΄μΌκ² λ€. κ·Έλ¦¬κ³ μ½λλ₯Ό λΉκ΅ν΄μ κ°κ° λ°©λ²μ μ₯λ¨μ μ λν΄ μκ°ν΄λ³΄λ €νλ€.
βοΈ NHN μ½λ μ€νμΌ κ°μ΄λ μ°Έκ³ νκΈ°
μ€λ λ°°μ λ κΈ°λ³Έμ μΈ μ€νμΌ κ°μ΄λ μΈμλ μ΄λ€ κ²λ€μ΄ μλμ§ κΆκΈνκΈ°λ νκ³ , μ°Έκ³ ν΄μ 미리미리 μ΅κ΄μ λ€μ΄κΈ° μν΄..! NHN μ½λ μ€νμΌ κ°μ΄λλ μκ°λ λ μ½μ΄λ³΄κ³ κ°λ¨ν μ 리ν΄λλ €κ³ νλ€.
βοΈ μλ°μ€ν¬λ¦½νΈλ μλ€κ°λ λͺ¨λ₯΄κ² λ€.. μ€λ₯κ° λ κ² κ°λ€ μΆμΌλ©΄ μλκ³ , μ€λ₯κ° μλκΈΈλ λ€μλ²μ μμ©ν΄λ³΄λ©΄ μ€λ₯κ° λλ€ π€
βοΈ λ€μ λ κ³νμ κ·Έ μ λ λ°€μ μΈμλκΈ°!
λ°μν
'Daily > Today I Learned' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
201224_TIL (0) | 2020.12.25 |
---|---|
201223_TIL (2) | 2020.12.24 |
201221_TIL (0) | 2020.12.22 |
201218_TIL (2) | 2020.12.19 |
201217_TIL (0) | 2020.12.18 |
λκΈ