π» DEV94 [CS] OOP (κ°μ²΄μ§ν₯) & Functional (ν¨μν) νλ‘κ·Έλλ° κΈ°μ΄ OOP, μ μ°¨μ§ν₯, ν¨μν νλ‘κ·Έλλ° .. λ§μ΄ μ¬μ©νμ§λ§ μ νν κΈ°λ³Έ κ°λ μ μκ³ μμ§ μλ€λ μκ°μ΄ λ€μ΄, κ΄λ ¨ λ΄μ©μ λ΄μ μ 리ν κΈμ μ¨ λ³Έλ€. π Introdction μ μ°¨μ§ν₯ν νλ‘κ·Έλλ°, κ°μ²΄μ§ν₯ν νλ‘κ·Έλλ°, ν¨μν νλ‘κ·Έλλ° λ±μ μ©μ΄λ₯Ό μμΈλ¬ 'νλ‘κ·Έλλ° ν¨λ¬λ€μ'μ΄λΌ μΉνλ€. μΌμ’ μ νλ‘κ·Έλλ° μΈκ³κ΄μ΄λΌκ³ ν μ μλλ°, νΉμ κΈ°λ²μ΄λ μ΄λ‘ μ λͺ¨μ νλμ 체κ³λ‘ λ§λ€μλ€κ³ λ³Ό μ μλ€. νλ‘κ·Έλλ° ν¨λ¬λ€μμ μ νμ λ°λΌ λͺ λ Ήν/μ μΈνμΌλ‘ λΆλ₯ν μ μλ€. π‘ λͺ λ Ήν νλ‘κ·Έλλ°: μ΄λ»κ²(How) ν 건μ§λ₯Ό μ€λͺ νλ λ°©μ - μ μ°¨μ§ν₯ νλ‘κ·Έλλ° - κ°μ²΄μ§ν₯ νλ‘κ·Έλλ° π‘ μ μΈν νλ‘κ·Έλλ°: 무μ(What)μ ν 건μ§λ₯Ό μ€λͺ νλ λ°©μ - ν¨μν νλ‘κ·Έλλ° β¨ μ μ°¨μ§ν₯ νλ‘κ·Έλλ° μ΅κ·ΌκΉμ§λ .. 2021. 9. 15. [Network] IP μ£Όμ 체κ³μ κ³Όκ±°μ νμ¬ μ΄μ μ λ€λ€λ TCP/IP νλ‘ν μ½ μ€ν κ΄λ ¨ κΈμμ IP μ£Όμμ λν΄ λ€μκ³Ό κ°μ νΉμ§μ΄ μλ€κ³ νμλ€. TCP/IP μ Network Layer (OSI 3κ³μΈ΅) μμλ λ°μ΄ν° Segment μ λ°μ μ§μ λͺ©μ μ§μ IP μ£Όμλ₯Ό μΆκ°νμ¬ ν¨ν·μ ꡬμ±νλ€. IP λ μ»΄ν¨ν°λ§λ€ κ°λ κ³ μ ν μ£Όμκ°μ΄λ©°, "λ Όλ¦¬μ μΈ μ£Όμ" λ‘ λΆλ¦¬κΈ°λ νλ€. IP μ£Όμλ λ€νΈμν¬μ μ£Όμμ νΈμ€νΈμ μ£Όμλ‘ κ΅¬μ±λμ΄ μλ€. μ΄λ² κΈμμλ IP μ£Όμμ ꡬ체μ μΈ μ²΄κ³μ λ³νλ₯Ό μμλ³΄κ³ μ νλ€. β¨ IP μ£Όμ, κ³Όκ±°μ μ²΄κ³ νν μ¬μ©λλ IP μ£Όμλ 32λΉνΈμΈ IPv4 μ£Όμμ΄λ€. IPμλ v4, v6 λ κ°μ 체κ³κ° μ‘΄μ¬νλλ° IPv6κ° μ‘°κΈ λ μ΅κ·Όμ λμ¨ κ°λ μΌλ‘, IPv4 체κ³μ νκ³λ₯Ό 보μν΄μ€λ€. (IPv6λ 128λΉνΈμ΄λ€) π.. 2021. 9. 13. [NodeJS] Node μ this λ? (+ νμ΄ν ν¨μμ this) β¨ console.log(this) μ κ²°κ³Ό μ΄μ μ μ 리ν΄λμλ μλ°μ€ν¬λ¦½νΈ(μ΄ν JS)μ this μμ μ£Όμμ¬νμΌλ‘ μΈκΈνλ―, λΈλΌμ°μ μμ μ€νλλ JS μ this μ node μμ μ€νλλ JS μ this λ λ€λ₯΄λ€. [Javascript] Javascript μ this λ? β μ£Όμ: Node μμμ this λ μ‘°κΈ λ€λ¦ λλ€. μ΄ κΈμμ λ€λ£¨λ λ΄μ©μ λΈλΌμ°μ μμ μλνλ JS μμμ this μ λλ€. Javascript μ this λ μμ£Ό λ±μ₯νμ§λ§, μ νν μκΈ° νλ κ°λ μ΄λ€. μ΄λ² κΈμμ haeunyah.tistory.com λΈλΌμ°μ μ μ μκ°μ²΄λ window μ΄λ€. λ°λΌμ μ μ scope μμ console.log(this) λ₯Ό μ λ ₯ν κ²½μ° window κ° λ¨λ κ²μ΄ λ§λ€. conso.. 2021. 9. 10. [Network] TCP/IP νλ‘ν μ½ μ€ν (κ·Όλ° μ΄μ OSI 7κ³μΈ΅μ κ³λ€μΈ) π Introduction λ€νΈμν¬, μ¦ μΈν°λ·μΌλ‘ μ΄λ£¨μ΄μ§λ λͺ¨λ ν΅μ μ μ 보λ₯Ό λ΄μ 'ν¨ν·'μ κ΅νμ ν΅ν΄ μ΄λ£¨μ΄μ§λ€. μ΄ ν¨ν·μ λ ΈνΈλΆμ΄λ λΌμ°ν°μ κ°μ 물리μ μΈ μ₯μΉμμ λ λ€λ₯Έ μ₯μΉλ‘ μ΄λνλλ°, 곡기 μ€μ λ λ€λ μ μλ μ κΈ° μ νΈλ‘ λ³νλκΈ° λλ¬Έμ κ°λ₯ν μΌμ΄λ€. μ₯μΉλΌλ¦¬ ν΅μ ν λ μ¬μ©νκΈ°λ‘ ν νμ€ 'νλ‘ν μ½' (κ·μ½) μ΄λΌλ κ²μ΄ μ‘΄μ¬νλ€. μΈν°λ·μ΄ 21μΈκΈ°λ§νΌ 보νΈν λμ΄ μμ§ μλ 1900λ λμλ κ·μ½μ΄ λ°λ‘ μμλ λλ μμμ§λ§, κ°μλ‘ μ λ¬λλ payload (λ΄μ©) μ΄ μ»€μ§μΌλ‘μ¨ μ 보 ν΅μ μ λ¨μμ λ¨κ³λ₯Ό μΉλ°νκ² μ€κ³νμ¬ ν¨μ¨μ± μ¦μ§μ νμμ±μ΄ 컀μ‘λ€. μ΄μ λ°λΌ λ±μ₯ν κ²μ΄ λ€νΈμνΉ κ³Όμ μ νμ€νν TCP/IP νλ‘ν μ½ μ€νμ΄λ€. β¨ TCP μ IP, κ·Έλ¦¬κ³ TCP/IP ν.. 2021. 9. 9. [Javascript] Javascript μ this λ? β μ£Όμ: Node μμμ this λ μ‘°κΈ λ€λ¦ λλ€. μ΄ κΈμμ λ€λ£¨λ λ΄μ©μ λΈλΌμ°μ μμ μλνλ JS μμμ this μ λλ€. Javascript μ this λ μμ£Ό λ±μ₯νμ§λ§, μ νν μκΈ° νλ κ°λ μ΄λ€. μ΄λ² κΈμμλ this μ κΈ°μ΄ μλ λ°©μκ³Ό λ°μΈλ©μ λν΄ μ€λͺ νκ³ μ νλ€. this μ κ°λ μ μ κ·ΌνκΈ° μ , λ¨Όμ μμλμ΄μΌ νλ μ€ν 컨ν μ€νΈμ νλ‘νΌν° & λ©μλλΆν° μ΄ν΄λ³΄μ. β¨ Javascript μμμ μ€ν 컨ν μ€νΈ μ΄μ κΈμμ μ κΉ μΈκΈνμ§λ§, Javascript λ μ»΄νμΌ μΈμ΄κ° μλ μΈν°νλ¦¬ν° μΈμ΄μ΄λ€. μΈν°νλ¦¬ν° μΈμ΄λ‘ μμ±λ μ½λλ μ€ν μ¦μ μΈν°ν리ν°κ° μ½λλ₯Ό νμ€μ© μ½μ΄λ΄λ €κ°λ©° μ€ννλ€. μ΄ λ μΈν°ν리ν°λ μ½λ ν΄μμ μ‘°κΈμ΄λΌλ νΈνκ² νκΈ° μν΄ μ½λλ₯Ό μμ μ‘°κ°μΌλ‘ .. 2021. 9. 7. [Javascript] μ΄λ²€νΈ 루ν (Event Loop) λ? β¨ JS, Event Loop, Single Thread NodeJs μ single/multi thread μ¬λΆλ₯Ό μ 리νλ€λ³΄λ Js μ Event Loop κ°λ μ μ‘°κΈ λ νμ€ν μμλμ΄μΌκ² λ€λ μκ°μ΄ λ€μλ€. [NodeJS] NodeJS λ Single Thread μΌκΉ? Multi Thread μΌκΉ? β¨ κ³ λ―Όμ΄ μμλ κ³κΈ° JS κΈ°μ΄λ₯Ό νμ΅νλ λΉμμλ μ€λ λμ νλ‘μΈμ€μ κΈ°λ³Έ κ°λ μ νμ΅ν΄λκΈ°λ§ νκ³ , ꡬ체μ μΌλ‘ μ΄ν΄λ³΄μ§ λͺ»νμλ€. μΉκ°λ° κ΅μ‘κ³Όμ μ΄ λλκ° λ¬΄λ ΅, μ€μκ° μ€ κ°μμμ haeunyah.tistory.com μλ°μ€ν¬λ¦½νΈλ μ±κΈμ€λ λ μΈμ΄μ΄λ€. νμ§λ§ μ΄μ κΈμμλ λ³Ό μ μμλ―, λ©ν°μ€λ λμ²λΌ λμμ μ¬λ¬ νμ€ν¬μ μλμ΄ κ°λ₯νλ€. μ΄ νΉμ§μ λΈλΌμ°μ λ°νμ νκ²½μμλ λμΌνλ€. μμΌ.. 2021. 9. 7. [NodeJS] NodeJS λ Single Thread μΌκΉ? Multi Thread μΌκΉ? β¨ κ³ λ―Όμ΄ μμλ κ³κΈ° JS κΈ°μ΄λ₯Ό νμ΅νλ λΉμμλ μ€λ λμ νλ‘μΈμ€μ κΈ°λ³Έ κ°λ μ νμ΅ν΄λκΈ°λ§ νκ³ , ꡬ체μ μΌλ‘ μ΄ν΄λ³΄μ§ λͺ»νμλ€. μΉκ°λ° κ΅μ‘κ³Όμ μ΄ λλκ° λ¬΄λ ΅, μ€μκ° μ€ κ°μμμ ν¬λ£¨λΆκ» "JS λ μ±κΈ μ€λ λμΌκΉμ?" λΌλ μ§λ¬Έμ λ€μκ³ , λ΄ λλ΅μ λΉμ°ν "yes" μλλ°, μμΈλ‘ "No" λΌλ λ°μλ λ§μλ€. λ€λ€ μ‘°κΈμ© λ€λ₯΄κ² μκ³ μλ μ΄μ κ° κΆκΈν΄μ ꡬκΈλ§μ ν΄ λ³΄λ, ν·κ°λ¦΄λ§ν μ΄μ κ° μλ€λ μκ°μ΄ λ€μλ€. μ΄λ² κΈμμλ JS, κ·Έλ¦¬κ³ NodeJS κ° κ³Όμ° Single Threaded μΈμ§ Multi Threaded μΈμ§ νμ΄λ³΄λλ‘ νκ² λ€. β¨ νλ‘μΈμ€μ μ€λ λ (Process & Thread) νλ‘μΈμ€μ μ€λ λλ μ΄μ κΈμμ μ΄λ―Έ ν λ² λ€λ£¬ μ μ΄ μμΌλ, κ°λ¨νλ§ μ§κ³ λμ΄κ°κ² λ€.. 2021. 9. 6. [Database] Redis Vs Memcached β¨ Caching Solution μΊμ±μ μ΄ν리μΌμ΄μ μ±λ₯ ν₯μμ κ°μ₯ λ§μ΄ κΈ°μ¬νλ λ¨κ³μ΄λ€. μΊμ μλ² λλ in-memory cache λ₯Ό ꡬννκΈ° μν΄ λ§μ΄λ€ μμ보λ κ²μ΄ Redis μ Memcache μΈλ°, μ΄ λ κ°μ§λ₯Ό λΉκ΅ν΄ 보며 ꡬννκ³ μ νλ μλΉμ€μ λ μ ν©ν μΊμ μ루μ μΈμ§ μμ보μ. Memcached λ 2003 λ μ λμ¨ κ³ μ±λ₯ μΊμ± μ루μ μ΄λ€. Redis λ λΉκ΅μ μ΅κ·Όμ λμμΌλ©° (2009λ ), μ¬λ¬ κΈ°λ₯μ νμ¬ν μΊμ± μ루μ μ΄λ€. AWS μμλ μ΄λ€μ 곡ν΅μ κ³Ό μ°¨μ΄μ μ λ€μκ³Ό κ°μ΄ μ 리νκ³ μλ€. νλ‘ λ³΄λ λκ° Memcached κ° Redis μ λΉν΄ ν μ€ μλ κ²μ΄ μ μ΄λ³΄μ΄λλ°, μ€μ λ‘λ κ·Έλ λ€. Memcached λ λ¨μν μμ μ μν΄ κ³ μλ λ°λ©΄ Redis λ μ¬λ¬.. 2021. 8. 10. [Database] Express/NodeJS μμ Redis μ¬μ©νκΈ° β¨ Redis λ? Remote Dictionary Server (DB) μ΄λ©°, In-memory Data structure Store λ‘, λ©λͺ¨λ¦¬ μμ λ°μ΄ν°λ₯Ό μ μ₯νλ€. λ€μν μλ£ κ΅¬μ‘°λ₯Ό μ μ₯νμ§λ§, κΈ°λ³Έμ μΌλ‘ λͺ¨λ λ°μ΄ν°λ Key-Value μμ μ΄λ£¨κΈ° λλ¬Έμ NoSQL DB λ‘ νμ©λλ€. λμ€ν¬μ λ°μ΄ν°λ₯Ό μ μ₯ν΄ μλκ° λλ¦° RDBMS λ±μ DBMS λ³΄λ€ νμ©λκ° λμ μΌμ΄μ€κ° μ’ μ’ μλλ°, κ·Έ λνμ μΈ μκ° μΊμ (Cache) μ΄λ€. ν΄λΌμ΄μΈνΈμμ μλ²μκ² λ°μ΄ν°λ₯Ό λ¬λΌλ μμ²μ 보λ΄λ©΄ μλ²λ λ°μ΄ν°λ² μ΄μ€μμ λ°μ΄ν°λ₯Ό μ»μ΄μ€κ² λλλ°, λμΌν μμ²μ΄ μ¬λ¬ λ² μ¬ κ²½μ° κ³μ λ°μ΄ν°λ² μ΄μ€μμ κ°μ λ°μ΄ν°λ₯Ό μ°Ύλλ€. μ΄λ μλΉν λΉν¨μ¨μ μ΄λ©°, λ°μ΄ν°μ ν¬κΈ°μ λ°λΌ μλ΅ μλκ° κ³μ μ§μ°λ μ μκΈ° .. 2021. 7. 18. μ΄μ 1 2 3 4 5 6 7 Β·Β·Β· 11 λ€μ