코드 품질 향상을 위한 10가지 좋은 코딩 원칙
소프트웨어 개발에는 좋은 시스템 설계와 코딩 표준이 필요합니다. 아래에 10가지 코딩 원리를 참고해보시기 바랍니다~
🔹 01 코드 명세서
코드를 작성할 때 "PEP 8", "Google Java 스타일"과 같이 업계에서 잘 확립된 표준을 따르는 것이 중요합니다. 합의된 코드 사양을 준수하면 코드 품질이 일관되고 가독성이 보장됩니다.
🔹 02 문서 및 설명
좋은 코드는 복잡한 논리와 결정을 설명하기 위해 명확하게 문서화되고 주석 처리되어야 하며, 주석은 정확히 수행되는 작업(“무엇”)보다는 특정 접근 방식을 취한 이유(“왜”)를 설명해야 합니다. 문서와 의견은 명확하고 간결하며 지속적으로 업데이트되어야 합니다.
🔹 03 견고성
좋은 코드는 충돌이나 예측할 수 없는 결과를 생성하지 않고 다양한 예상치 못한 상황과 입력을 처리할 수 있어야 합니다. 가장 일반적인 접근 방식은 예외를 포착하고 처리하는 것입니다.
🔹 04 SOLID 원칙을 따르세요
"단일 책임", "개방/폐쇄", "리스코프 대체", "인터페이스 분리", "종속성 반전" - 이 5가지 원칙(줄여서 SOLID)은 확장 가능하고 유지 관리가 쉬운 코드 작성의 초석입니다.
🔹 05 테스트 쉽게 하기
소프트웨어의 테스트 가능성은 특히 중요합니다. 좋은 코드는 각 구성 요소의 복잡성을 줄이고 예상대로 작동하는지 확인하기 위한 자동화된 테스트를 지원함으로써 테스트하기 쉬워야 합니다.
🔹 06 추상화
추상화를 위해서는 핵심 논리를 추출하고 복잡성을 숨겨 코드를 더욱 유연하고 일반적으로 만들어야 합니다. 좋은 코드는 과도하게 설계되거나 장기적인 확장성과 유지 관리성을 무시하지 않고 적당한 수준의 추상화를 가져야 합니다.
🔹 07 디자인 패턴
디자인 패턴은 몇 가지 일반적인 문제를 해결하는 데 도움이 될 수 있습니다. 그러나 모든 패턴에는 해당되는 시나리오가 있습니다. 디자인 패턴을 과도하게 사용하거나 잘못 사용하면 코드가 더 복잡하고 이해하기 어려울 수 있습니다.
🔹 08 전역(변수) 종속성 감소
전역 변수와 인스턴스를 사용하면 종속성과 혼란스러운 상태 관리로 인해 어려움을 겪을 수 있습니다. 좋은 코드는 현지화된 상태와 매개변수 전달에 의존해야 합니다. 함수에는 부작용이 없어야 합니다.
🔹 09 지속적인 리팩토링
좋은 코드는 유지 및 확장이 가능합니다. 지속적인 리팩터링은 현재코드의 설계를 개선함으로써 가능한 한 빨리 문제를 파악하고 해결함으로써 기술적 부채를 줄여줍니다.
🔹 10 보안 최우선
좋은 코드는 일반적인 보안 취약점을 피해야 합니다. 좋은 코드는 SQL 인젝션, 크로스사이트 스크립팅와 같은 일반적인 보안 취약점을 피해야 합니다.