πŸ“ŒLanguage/JavaScript

[Deep Dive] μ‹€ν–‰ μ»¨ν…μŠ€νŠΈ

hellohailie 2022. 12. 5. 16:49

 

βœ”οΈ μ‹€ν–‰ μ»¨ν…μŠ€νŠΈλž€?

μžλ°”μŠ€ν¬λ¦½νŠΈμ˜ λ™μž‘ 원리λ₯Ό λ‹΄κ³  μžˆλŠ” 핡심 κ°œλ…μ΄λ‹€. 

 

μ‹€ν–‰ μ»¨ν…μŠ€νŠΈλŠ” μ‹λ³„μž (λ³€μˆ˜, ν•¨μˆ˜, 클래슀 λ“±)λ₯Ό λ“±λ‘ν•˜κ³  κ΄€λ¦¬ν•˜λŠ” μŠ€μ½”ν”„μ™€ μ½”λ“œ μ‹€ν–‰ μˆœμ„œ 관리λ₯Ό κ΅¬ν˜„ν•œ λ‚΄λΆ€ λ©”μ»€λ‹ˆμ¦˜μœΌλ‘œ, λͺ¨λ“  μ½”λ“œλŠ” μ‹€ν–‰ μ»¨ν…μŠ€νŠΈλ₯Ό 톡해 μ‹€ν–‰λ˜κ³  κ΄€λ¦¬λœλ‹€.

μ‹λ³„μžμ™€ μŠ€μ½”ν”„λŠ” μ‹€ν–‰ μ»¨ν…μŠ€νŠΈμ˜ λ ‰μ‹œμ»¬ ν™˜κ²½μœΌλ‘œ κ΄€λ¦¬ν•˜κ³  μ½”λ“œ μ‹€ν–‰ μˆœμ„œλŠ” μ‹€ν–‰ μ»¨ν…μŠ€νŠΈ μŠ€νƒμœΌλ‘œ κ΄€λ¦¬ν•œλ‹€. 


βœ”οΈ μ†ŒμŠ€ μ½”λ“œμ˜ κ³Όμ •

1. μ†ŒμŠ€μ½”λ“œμ˜ 평가 => μ‹€ν–‰ μ»¨ν…μŠ€νŠΈλ₯Ό μƒμ„±ν•˜κ³  λ³€μˆ˜, ν•¨μˆ˜ λ“±μ˜ μ„ μ–Έλ¬Έλ§Œ λ¨Όμ € μ‹€ν–‰ν•˜μ—¬ μƒμ„±λœ λ³€μˆ˜λ‚˜ ν•¨μˆ˜ μ‹λ³„μžλ₯Ό ν‚€λ‘œ μ‹€ν–‰ μ»¨ν…μŠ€νŠΈκ°€ κ΄€λ¦¬ν•˜λŠ” μŠ€μ½”ν”„μ— λ“±λ‘ν•œλ‹€. 

 

2. μ†ŒμŠ€μ½”λ“œμ˜ μ‹€ν–‰ => 선언문을 μ œμ™Έν•œ μ†ŒμŠ€μ½”λ“œκ°€ 순차적으둜 μ‹€ν–‰λœλ‹€. (λŸ°νƒ€μž„ μ‹œμž‘) / μ†ŒμŠ€μ½”λ“œ 싀행에 ν•„μš”ν•œ μ •λ³΄λŠ” μŠ€μ½”ν”„μ—μ„œ κ²€μƒ‰ν•΄μ„œ μ·¨λ“ν•˜κ³ , μ†ŒμŠ€μ½”λ“œμ˜ μ‹€ν–‰ κ²°κ³ΌλŠ” λ‹€μ‹œ μ‹€ν–‰ μ»¨ν…μŠ€νŠΈκ°€ κ΄€λ¦¬ν•˜λŠ” μŠ€μ½”ν”„μ— λ“±λ‘λœλ‹€. 

 


βœ”οΈ μ‹€ν–‰ μ»¨ν…μŠ€νŠΈ μŠ€νƒ (μ½”λ“œμ˜ μ‹€ν–‰μˆœμ„œ 관리)

μžλ°”μŠ€ν¬λ¦½νŠΈ 엔진은 λ¨Όμ € μ „μ—­ μ½”λ“œλ₯Ό ν‰κ°€ν•΄μ„œ μ „μ—­ μ‹€ν–‰ μ»¨ν…μŠ€νŠΈλ₯Ό μƒμ„±ν•œλ‹€. 그리고 ν•¨μˆ˜κ°€ 호좜되면 ν•¨μˆ˜ μ½”λ“œλ₯Ό ν‰κ°€ν•΄μ„œ ν•¨μˆ˜ μ‹€ν–‰ μ»¨ν…μŠ€νŠΈλ₯Ό μƒμ„±ν•œλ‹€. => μ΄λ•Œ  μƒμ„±λœ μ‹€ν–‰ μ»¨ν…μŠ€νŠΈλŠ” μŠ€νƒ 자료ꡬ쑰둜 κ΄€λ¦¬λœλ‹€. 


βœ”οΈ λ ‰μ‹œμ»¬ ν™˜κ²½ (μŠ€μ½”ν”„μ™€ μ‹λ³„μž 관리)

μ‹λ³„μžμ™€ μ‹λ³„μžμ— λ°”μΈλ”©λœ κ°’, 그리고 μƒμœ„ μŠ€μ½”ν”„μ— λŒ€ν•œ μ°Έμ‘°λ₯Ό κΈ°λ‘ν•˜λŠ” 자료ꡬ쑰둜 μ‹€ν–‰ μ»¨ν…μŠ€νŠΈλ₯Ό κ΅¬μ„±ν•˜λŠ” μ»΄ν¬λ„ŒνŠΈμ΄λ‹€. 

 

ν™˜κ²½ λ ˆμ½”λ“œ : μŠ€μ½”ν”„μ— ν¬ν•¨λœ μ‹λ³„μžλ₯Ό λ“œλ‘ν•˜κ³  λ“±λ‘λœ μ‹λ³„μžλ₯Ό λ°”μΈλ”©λœ 값을 κ΄€λ¦¬ν•˜λŠ” μ €μž₯μ†Œμ΄λ‹€. 

 

μ™ΈλΆ€ λ ‰μ‹œμ»¬ ν™˜κ²½μ— λŒ€ν•œ μ°Έμ‘° : μ™ΈλΆ€ λ ‰μ‹œμ»¬ ν™˜κ²½μ— λŒ€ν•œ μ°Έμ‘°λŠ” μƒμœ„ μŠ€μ½”ν”„λ₯Ό 가리킨닀. μ΄λ•Œ μƒμœ„ μŠ€μ½”ν”„λž€ μ™ΈλΆ€ λ ‰μ‹œμ»¬ ν™˜κ²½, 즉 ν•΄λ‹Ή μ‹€ν–‰ μ»¨ν…μŠ€νŠΈλ₯Ό μƒμ„±ν•œ μ†ŒμŠ€μ½”λ“œλ₯Ό ν¬ν•¨ν•˜λŠ” μƒμœ„ μ½”λ“œμ˜ λ ‰μ‹œμ»¬ ν™˜κ²½μ„ λ§ν•œλ‹€. 

 

 

 

πŸ‘©‍πŸ’» λͺ¨λ˜ μžλ°”μŠ€ν¬λ¦½νŠΈ Deep Diveλ₯Ό μ •λ…ν•˜κ³  μ œκ°€ μ΄ν•΄ν•œ λ‚΄μš©μ„ μ •λ¦¬ν•œ κΈ€μž…λ‹ˆλ‹€ πŸ‘©‍πŸ’»