강의 시간에 개발 원칙을 알고 그걸 지켜서 코드를 작성하면 잘 작성된 코드라고 하셨다. 반대로 개발 원칙을 벗어난 코드는 잘못 짠 코드.
GPT에게 물어보라 하셔서 물어봤다. 유료버전 쓰라고 권장 하셨지만… 일단 무료로..ㅎ
생각날때마다 읽어야겠다. 문신처럼 뇌에 새겨져랏 🖍️
💡 React 개발 원칙이 뭐야?
<aside>
🗣 React 애플리케이션을 개발할 때 따라야 하는 몇 가지 원칙은 다음과 같습니다:
- 단일 책임 원칙 (Single Responsibility Principle): 각 React 컴포넌트는 하나의 특정 기능 또는 목적을 가지고 있어야 합니다. 이를 통해 컴포넌트를 더 재사용 가능하고 유지보수하기 쉽게 만듭니다.
- 상태 관리 (State Management): React 애플리케이션에서는 상태를 중앙에서 관리하는 것이 중요합니다. 이를 위해 Redux나 Context API와 같은 상태 관리 라이브러리를 사용하거나, 상위 컴포넌트에서 상태를 끌어올려 관리할 수 있습니다.
- 가상 DOM 활용 (Virtual DOM): React는 가상 DOM을 사용하여 성능을 향상시킵니다. 실제 DOM 조작은 최소화되어 렌더링 속도가 빨라집니다.
- 컴포넌트 재사용 (Reusable Components): React는 컴포넌트 기반 아키텍처를 기반으로 하므로, 재사용 가능한 컴포넌트를 만드는 것이 중요합니다. 이는 코드의 중복을 줄이고 개발 시간을 단축시킵니다.
- 단방향 데이터 흐름 (Unidirectional Data Flow): React에서는 상위 컴포넌트에서 하위 컴포넌트로 데이터가 흐르는 단방향 데이터 흐름을 따르는 것이 좋습니다. 이를 통해 데이터 흐름을 예측 가능하게 만들고 디버깅을 쉽게 합니다.
- 라이프사이클 이벤트 활용 (Lifecycle Events): React 컴포넌트는 라이프사이클 이벤트를 통해 마운트, 업데이트, 언마운트 등의 다양한 단계에서 특정 동작을 수행할 수 있습니다. 이를 활용하여 컴포넌트의 동작을 관리합니다.
- 테스트 가능성 (Testability): React 애플리케이션은 테스트 가능하도록 설계되어야 합니다. Jest나 Enzyme과 같은 테스트 라이브러리를 사용하여 컴포넌트의 유닛 테스트(Unit Test)와 통합 테스트(Integration Test)를 수행할 수 있습니다.
이러한 개발 원칙을 준수하면 유지보수가 쉬우면서도 효율적이고 확장 가능한 React 애플리케이션을 개발할 수 있습니다.
</aside>
💡 JavaScript 개발 원칙이 뭐야?
<aside>
🗣 JavaScript를 개발할 때 따라야 하는 몇 가지 원칙은 다음과 같습니다
- 읽기 쉬운 코드 작성 (Readable Code): 코드의 가독성은 매우 중요합니다. 의미 있는 변수 및 함수 이름을 사용하고, 적절한 주석을 추가하여 코드를 이해하기 쉽도록 만듭니다.
- 모듈화 (Modularity): 코드를 작은 모듈로 나누어 개발하고, 각 모듈은 특정 기능 또는 역할을 수행해야 합니다. 이를 통해 코드의 재사용성을 높이고 유지보수를 용이하게 합니다.
- 명시적인 변수 선언 (Explicit Variable Declaration): 변수는 반드시 var, let 또는 const 키워드를 사용하여 명시적으로 선언해야 합니다. 이를 통해 변수의 스코프와 생명주기를 명확히 알 수 있습니다.
- 자바스크립트 스코프 이해 (Understanding JavaScript Scope): 스코프는 변수의 유효 범위를 결정합니다. 스코프를 이해하고 클로저 등의 개념을 활용하여 변수의 스코프를 올바르게 관리해야 합니다.
- 오류 처리 (Error Handling): 예외 상황을 적절히 처리하고 오류를 적절히 처리하는 것이 중요합니다. try-catch 문을 사용하여 예외를 처리하고, 오류 메시지를 적절히 출력하거나 로그에 기록합니다.
- 코드 테스트 (Code Testing): 코드의 품질을 보장하기 위해 테스트가 필요합니다. 유닛 테스트(Unit Test), 통합 테스트(Integration Test) 등의 테스트를 수행하여 코드의 동작을 확인합니다.
- 성능 최적화 (Performance Optimization): JavaScript 코드의 성능을 최적화하는 것이 중요합니다. 불필요한 반복문, 메모리 누수 등을 피하고, 최적화된 알고리즘을 사용하여 성능을 향상시킵니다.
- 보안 고려 (Security Considerations): 보안 취약점을 최소화하기 위해 안전하지 않은 함수나 라이브러리를 사용하지 않고, 사용자 입력을 검증하고 필터링하는 등의 보안 조치를 취합니다.
이러한 개발 원칙을 준수하면 유지보수가 쉽고 안전하며 효율적인 JavaScript 코드를 작성할 수 있습니다.
</aside>