
SCM νλ‘μ νΈ κ°λ° κ³Όμ μμ κ°μ₯ μ΄λ €μ λ κ² μ€ νλλ λ³μ λ° μ»΄ν¬λνΈμ μ΄λ¦μ μ νλ μΌμ΄μμ΅λλ€. νλ‘μ νΈμ νΉμ±μ β견μ μμ²λ±λ‘β, β견μ ν 곡μ μ 보βμ κ°μ λλ©μΈ νΉμ μ μ©μ΄λ€μ΄ μμ£Ό λ±μ₯νλλ°, μ΄λ₯Ό μμ΄λ‘ λ²μνμ¬ νλ‘μ νΈμ μ μ©νλ€ λ³΄λ κ°λ μ±κ³Ό μμ°μ±μ΄ λ¨μ΄μ§κ³ μ μ§λ³΄μκ° μ΄λ €μμ‘μ΅λλ€. νΉν, μ μ¬ν μ΄λ¦μ κ°μ‘μ§λ§ λ€λ₯Έ κΈ°λ₯μ κ°μ§ μ»΄ν¬λνΈλ€μ΄ λ§μμ Έμ νμ νκ±°λ μꡬμ¬νμ λμνλ κ²μ΄ λ μ΄λ €μμ‘μ΅λλ€.
μλ₯Ό λ€μ΄ β견μ ν곡μ μΈμ£Όμ²κ°βμ λν μμ μμ²μ΄ μκΈ°λ©΄, κ°λ°μλ€μ ν΄λΉ μ©μ΄μ μλ¬Έ μ»΄ν¬λνΈλͺ μ΄ λ¬΄μμΈμ§λΆν° μκ°ν΄λ΄μΌ νμ΅λλ€. μ΄λ¬ν μ©μ΄λ€μ μ΅μ§λ‘ μμ΄λ‘ λ²μνλ€ λ³΄λ μ€μ SCM μλΉμ€λ₯Ό μ¬μ©νλ μ§μλ€μ‘°μ°¨ μμν μ©μ΄λ€μ κ°λ°μ μ¬μ©νκ² λμκ³ , νμ¬ λ΄ μ¬μ© μ©μ΄μ κ°λ° μ©μ΄ κ°μ κ΄΄λ¦¬κ° μ¬νλμμ΅λλ€. μ΄μ, μ€λ¬΄ νκ²½μμλ μμ΄ μ¬μ©μ΄ κ±°μ μμμλ λΆκ΅¬νκ³ μ μ€λ¬΄μ λλ¨μ΄μ§ μ©μ΄λ€λ‘ νλ‘μ νΈλ₯Ό ꡬμ±ν΄μΌ νλμ§ μλ¬Έμ΄ λ€κΈ° μμνμ΅λλ€.

μ΄λ¬ν λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ λ¦¬μ‘νΈ μ»΄ν¬λνΈλͺ μ νκΈλ‘ λ³κ²½νλ λ°©μμ κ³ λ―ΌνκΈ° μμνμ΅λλ€. μ²μμλ νκΈ μ»΄ν¬λνΈκ° μ‘°κΈ λ―μ€κ³ , νΉν νΈνμ± λ¬Έμ κ° κ±±μ λμ΄μ μ¬λ¬κ°μ§ λ νΌλ°μ€λ₯Ό μ°ΎμμΌλ, λ¨μν ꡬκΈλ§μΌλ‘λ νκΈ μ»΄ν¬λνΈ μ¬μ©μ λν μ λ’°ν λ§ν μλ£λ₯Ό μ°ΎκΈ°κ° νλ€μ΄μ μ§μ νλΉμ± κ²ν λ₯Ό μ§ννμ΅λλ€.
νκΈ μ»΄ν¬λνΈ μ¬μ©μ κ°μ₯ λ¨Όμ κ±±μ λ κ²μ μ λμ½λ λ¬Έμ μ²λ¦¬μ κ΄λ ¨λ νΈνμ± λ¬Έμ μμ΅λλ€. λ¬Όλ‘ λλΆλΆμ κ°λ° νκ²½κ³Ό λꡬλ€μ΄ μ λμ½λλ₯Ό μ§μνκΈ° λλ¬Έμ ν° λ¬Έμ κ° μμ κ²μ΄λΌκ³ μμνκ³ , μ€μ λ‘ νκΈ μ»΄ν¬λνΈλ₯Ό ν μ€νΈνμ λ μ΄λ¦μ΄ κΉ¨μ§κ±°λ μ€λ₯κ° λ°μνλ κ²½μ°λ μμμ΅λλ€. κ·Έλ¬λ νΉμ νκ²½μ΄λ μ€λλ λΌμ΄λΈλ¬λ¦¬μμλ νΈνμ± λ¬Έμ κ° λ°μν κ°λ₯μ±μ΄ μμ μλ μλ€κ³ μκ°νμ΅λλ€.
μ΄μ κ΄λ ¨ν΄μλ μ§μ λ¦Όλμ μ€λ¬΄μμ λ°λ‘ μ°λ Frontend Clean Code λ°νμ ν μ€μμμ νκΈ μ»΄ν¬λνΈ μ¬μ© μ¬λ‘λ₯Ό μ°Έκ³ νμ΅λλ€. μ΄ μ¬λ‘λ€μ νκΈ μ»΄ν¬λνΈ μ¬μ©μ΄ ν μ€μ κ°μ 볡μ‘νκ³ ν° μλΉμ€μ μ€μ νκ²½μμλ λ¬Έμ μμ΄ μ μ©λκ³ μλ€λ κ²μ 보μ¬μ€¬κ³ , μ°λ¦¬ νλ‘μ νΈμμλ νκΈ μ»΄ν¬λνΈλ₯Ό μ¬μ©νλλ° ν° μ§μ₯μ΄ μλ€κ³ νλ¨νμ΅λλ€. λ¬Όλ‘ , μ€λλ λΌμ΄λΈλ¬λ¦¬μμμ νΈνμ± λ¬Έμ λ μ¬μ ν μΌλμ λμ΄μΌ ν μλ μμ§λ§ μ΄λ‘ μΈν΄ μ»λ κ°λ
μ± ν₯μκ³Ό κ°μ μ΄λμ΄ λ ν¬λ€κ³ νλ¨νμ΅λλ€.

νκΈ μ»΄ν¬λνΈ μ¬μ© μ λ λ€λ₯Έ λ¬Έμ λ κΈ°μ‘΄ ESLint κ·μΉκ³Όμ λΆμΌμΉμμ΅λλ€. νΉν μ ν¬ νλ‘μ νΈμ κ²½μ°μλ react/jsx-pascal-case κ·μΉμ μν΄ κ²½κ³ κ° λ°μνμ΅λλ€. μ΄ λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ eslint μ€μ μμ κ·μΉμ μμ΄μΌ κ²½μ°μλ κ·Έλλ‘ κΈ°μ‘΄ κ·μΉμ λ°λ₯΄κ³ , νκΈμ΄ ν¬ν¨λ κ²½μ°μλ§ κ·μΉμ μ μ©νμ§ μλλ‘ μ»€μ€ν νμμ΅λλ€. μ΄λ₯Ό ν΅ν΄ μ½λμ μΌκ΄μ±μ μ μ§νλ©΄μλ νκΈ λͺ λͺ μ μ μ°μ±μ ν보ν μ μμμ΅λλ€.
{
"rules": {
"react/jsx-pascal-case": ["error", { "ignore": ["*[κ°-ν£]*"] }]
}
}
νκΈ μ»΄ν¬λνΈ μ¬μ© μ μλμμ± κΈ°λ₯μ λ¬Έμ κ° λ°μνλ κ²½μ°λ μμμ΅λλ€. νΉν VSCode νκ²½μμ μλ import κΈ°λ₯μ΄ μ λλ‘ μλνμ§ μλ κ²½μ°κ° μμμ΅λλ€. μ΄ λ¬Έμ λ μ»΄ν¬λνΈλͺ μμ νμ¬λͺ μ μ΄λμ μ λΆμ΄λ λ°©μμΌλ‘ ν΄κ²°νμ΅λλ€. μλ₯Ό λ€μ΄, "J견μ νλΆλ₯μ 보"μ κ°μ΄ λͺ λͺ ν¨μΌλ‘μ¨ μλμμ± κΈ°λ₯μ μννκ² μ¬μ©ν μ μμμ΅λλ€.
μ λ΄μ©μ λ°νμΌλ‘ νκΈ μ»΄ν¬λνΈ μ¬μ©μ λν΄ κ±΄μνμκ³ , νκ³Όμ λ Όμ λμ λ°±μλμμ ν΅μ μ νμν λΆλΆμ κΈ°μ‘΄ λ°©μμ μ μ§νλ νλ‘ νΈμλ λ΄λΆμμλ§ μ¬μ©νλ μ»΄ν¬λνΈμ μ΄λ¦μ νκΈλ‘ λ³κ²½νκΈ°λ‘ κ²°μ νμ΅λλ€. νΉν μμ΄λ‘ λ²μνμ λ μλ―Έκ° λͺ ννμ§ μκ±°λ κ΄΄λ¦¬κ° λ°μνλ κ²½μ° μλ‘ λ§λλ μ»΄ν¬λνΈμ νν΄ μ μ§μ μΌλ‘ μ μ©νκΈ°λ‘ νμ΅λλ€.
μ΄λ¬ν κ²°μ μ νλ‘μ νΈμ κΈμ μ μΈ μν₯μ λ―Έμ³€μ΅λλ€. νκΈ μ»΄ν¬λνΈλͺ μ μ¬μ©ν¨μΌλ‘μ¨ κ°λ μ±μ΄ ν¬κ² ν₯μλμκ³ , κ°λ°μλ€μ΄ μ»΄ν¬λνΈμ κΈ°λ₯μ λ λΉ λ₯΄κ³ μ ννκ² μ΄ν΄ν μ μκ² λμμ΅λλ€. λν, μ»΄ν¬λνΈμ νκΈλͺ κ³Ό κ΄λ ¨ μμ²μ¬νμ μμ΄λͺ μ μΌμΌμ΄ λ§€μΉν νμκ° μμ΄μ Έ μμ°μ±λ μλΉν ν₯μλμμ΅λλ€.
λ¬Όλ‘ , νκΈ μ»΄ν¬λνΈ μ¬μ©μ΄ μΌλ°μ μ΄μ§ μμΌλ©° κ΅μ μ μΈ μ κ·Όμ±μ κ³ λ €ν΄μΌνκ±°λ λ€μν νμ νκ²½μμλ μ ν©νμ§ μμ μ μμ΅λλ€. κ·Έλ¬λ μ ν¬ νλ‘μ νΈμ κ°μ΄ 볡μ‘ν λλ©μΈ μ©μ΄λ‘ μΈν΄ μ΄λ €μμ κ²ͺλ κ²½μ°μλ νκΈ μ»΄ν¬λνΈ μ¬μ©μ μ§μ§νκ² κ³ λ €ν΄λ³Όλ§νλ€κ³ μκ°ν©λλ€. νΉμ μ ν¬μ λΉμ·ν μ΄μ λ‘ νκΈ μ»΄ν¬λνΈ μ¬μ©μ λν΄ κ³ λ―Ό μ€μ΄μλΌλ©΄ μ ν¬ μ¬λ‘κ° μ΄λ μ λ μ°Έκ³ κ° λμμΌλ©΄ ν©λλ€. :)