Trying Another Way... (Dependency Injection)
κ³ λ λ°±μλ μλ² κ΅¬μΆ λ°©λ²
μΉμ κ°μ: μ΄ μΉμ μμλ κ³ λμ μ¬μ©νμ¬ λ°±μλ μλ²λ₯Ό μ€μ νκ³ κ΅¬μ‘°ννλ λ°©λ²μ λν΄ μκ°ν©λλ€.
κ³ λ λ°±μλ μλ² κ΅¬μΆμ μ΄λ €μ
- μ¬λ¬ κ°μ§ λ€λ₯Έ μλλ₯Ό κ±°μΉ κ²°κ³Ό, Express μ±μ²λΌ ꡬ쑰ννκ±°λ κ³ μ λ°©μμΌλ‘ μλν κ²½νμ΄ μμ.
- μλ‘μ΄ λ°©μμΌλ‘ μ κ·Όνμ¬ λ§μ μ₯μ μ λ°κ²¬νμΌλ©° μ΄λ²μ μκ°ν λ°©λ²μ΄ μ λ§νλ€κ³ μκ°ν¨.
- κ³ μ κ³ λ°±μλμ λν΄ λ°°μ΄ κ°μ₯ ν° κ² μ€ νλλ μλ²½ν ν΄κ²°μ± μ΄ μλ€λ κ²μ.
μμ‘΄μ± κ΄λ¦¬μ ν¨ν€μ§ FX
- μμ‘΄μ± κ΄λ¦¬λ₯Ό μν΄ ν¨ν€μ§ FXλ₯Ό μ¬μ©νλλ°, μ΄λ μ ν리μΌμ΄μ μ λ ν©λ¦¬μ μΈ λ°©μμΌλ‘ ꡬ쑰ννλ λ° λμμ΄ λ¨.
- FXλ₯Ό νμ©νμ¬ Ghost Felt To Doμ λ°±μλ APIλ₯Ό μ΄λ»κ² ꡬ쑰ννλμ§ μ€λͺ ν¨.
μμ‘΄μ± μ£Όμ κ³Ό FX
- FXλ μμ‘΄μ± κ΄λ¦¬ μμ€ν μΌλ‘, μμ‘΄μ± μ£Όμ κ°λ μ νμ©νμ¬ μλν¨.
- FXκ° μ°λ¦¬μκ² μ 곡νλ ν΅μ¬ κ°λ μ μμ‘΄μ±μ μ 곡νκ³ μ΄λ₯Ό λ€λ₯Έ μμλ€μ μ 곡ν μ μλλ‘ ν¨.
ν΅μ¬ μ»΄ν¬λνΈμ μμ‘΄μ± μ 곡
- λ°±μλμ ν΅μ¬ μ»΄ν¬λνΈμ κ° μμλ€ κ°μ μμ‘΄μ± μ 곡μ λν μ€λͺ .
μ½λ 리뷰 λ° μμ‘΄μ± μ£Όμ
μΉμ κ°μ: μ΄ μΉμ μμλ μ½λμ ꡬ쑰μ μμ‘΄μ± μ£Όμ μ λν΄ μ΄ν΄λ΄ λλ€.
μ½λ ꡬ쑰 λ° μ£Όμ κΈ°λ₯
- μ½λλ λ©μΈ ν¨μλ₯Ό ν¬ν¨νκ³ μμΌλ©°, μ 곡νκ³ μλΉνλ μμ μ μνν©λλ€.
newFiberServerλ©μλλ₯Ό μ¬μ©νμ¬ Fiber μλ²λ₯Ό μμ±νκ³ μ€νν©λλ€.
userHandlersλ₯Ό μ£Όμ νμ¬ μ± λ΄μμ μ΄κΈ°ννκ³ λΌμ°ν μ μ€μ ν©λλ€.
- FXμ λΌμ΄νμ¬μ΄ν΄ μΉμ μ μ± μμ λ° μ’ λ£ μ λμμ κ΄λ¦¬νλ λ° μ μ©ν©λλ€.
onstartν¨μλ₯Ό κ°μ§ FX νν¬λ₯Ό μ¬μ©νμ¬ μ±μ μμνλ©°, λ©μΈ μ€λ λ μ°¨λ¨μ λ°©μ§νκΈ° μν΄ κ³ λ£¨ν΄μΌλ‘ νΈμΆλ©λλ€.
Fiber μλ² μ 리 λ° λ°μ΄ν°λ² μ΄μ€ μ°κ²°
μΉμ κ°μ: Fiber μλ²μ μ 리 μμ κ³Ό λ°μ΄ν°λ² μ΄μ€ μ°κ²°μ λν΄ λ€λ£Ήλλ€.
μ 리 μμ λ° λ°μ΄ν°λ² μ΄μ€ μ°κ²°
onstopν¨μλ μ±μ μμ νκ² μ’ λ£μν€κΈ° μν ν΄λ¦°μ μμ μ μνν©λλ€.
createPostgresConnectionλ©μλλ FX λΌμ΄νμ¬μ΄ν΄μ ν΅ν΄ λ°μ΄ν°λ² μ΄μ€ μ°κ²°μ μ΄κΈ°νν©λλ€.
- λ°μ΄ν°λ² μ΄μ€ μ°κ²° μ΄κΈ°ν ν μ€λ₯ μ²λ¦¬κ° νμν κ²½μ° ν΄λΉ μ€λ₯λ₯Ό μ²λ¦¬ν μ μμ΅λλ€.
μμ‘΄μ± μ 곡과 νμ©
μΉμ κ°μ: FXλ₯Ό ν΅ν΄ μ 곡λ μμ‘΄μ±λ€μ νμ©νλ λ°©λ²μ λν΄ λ€λ£Έ.
μμ‘΄μ± μ 곡과 νμ©
- PGX νκ³Ό μ¬μ©μ μ μ₯μ λ± μ¬λ¬ μμλ€μ FXμ μ 곡νμ¬ κ° ν¨μμμ νμν μμ‘΄μ±λ€μ νμ©ν μ μμ΅λλ€.
λ°ν λ° κ΅¬μ‘° μ€μ
μΉμ κ°μ: μ΄ μΉμ μμλ νμΌμ μ€μ νκ³ κ΅¬μ‘°ννλ κ°λ¨ν λ°©λ²μ λν΄ λ Όμν©λλ€.
νμΌ κ΅¬μ‘° μ€μ
- νμΌμ μ€μ νκ³ μνλ λ°©μμΌλ‘ ꡬ쑰ννλ λ§€μ° μ¬μ΄ λ°©λ²μ΄ μμ΅λλ€.
- μΌλΆ μ¬λλ€μ κ΄μ¬μ¬μ λ°λΌ κ·Έλ£Ήννλ κ²μ μ’μν©λλ€. μλ₯Ό λ€μ΄, κ°μΈ λλ ν 리 λ΄μμ μ¬μ©μ λλ ν 리λ₯Ό κ°μ§κ³ κ·Έ μμ νΈλ€λ¬ λ° μ μ₯μμ κ°μ κ²λ€μ λλ λ°©μμ λλ€.
- κ°μΈμ μΌλ‘ μ μμ μΌλ‘ Handlers λ° Storage μλμ λͺ¨λ κ²μ λλ κ²μ μ νΈν©λλ€. μ΄κ²μ κ°μΈμ μΈ μ·¨ν₯μ΄λ©° μ λλ‘ μ³κ±°λ νλ¦° κ²μ΄ μλλλ€.
μμ€ μ½λ λ€μ΄λ‘λ λ° μ€ν
μΉμ κ°μ: μμ€ μ½λλ₯Ό λ€μ΄λ‘λνμ¬ μ§μ μ€νν΄λ³΄λ μ€μμ±μ λν΄ κ°μ‘°ν©λλ€.
μμ€ μ½λ μ€ν
- μμ€ μ½λλ₯Ό λ€μ΄λ‘λνκ³ μ§μ μ€νν΄ λ³΄λ κ²μ κ°λ ₯ν κΆμ₯ν©λλ€.
- μ 체 λ΄μ©μ ν μ€μ© μμΈν μ€λͺ νλ λμ μ§μ μ€ννλΌκ³ κΆμ ν©λλ€.