코드 품질 향상을 위한 10가지 좋은 코딩 원칙

소프트웨어 개발에는 좋은 시스템 설계와 코딩 표준이 필요합니다. 아래에 10가지 코딩 원리를 참고해보시기 바랍니다~


🔹 01 코드 명세서

코드를 작성할 때 "PEP 8", "Google Java 스타일"과 같이 업계에서 잘 확립된 표준을 따르는 것이 중요합니다. 합의된 코드 사양을 준수하면 코드 품질이 일관되고 가독성이 보장됩니다. 


🔹 02 문서 및 설명

좋은 코드는 복잡한 논리와 결정을 설명하기 위해 명확하게 문서화되고 주석 처리되어야 하며, 주석은 정확히 수행되는 작업(“무엇”)보다는 특정 접근 방식을 취한 이유(“왜”)를 설명해야 합니다. 문서와 의견은 명확하고 간결하며 지속적으로 업데이트되어야 합니다.


🔹 03 견고성

좋은 코드는 충돌이나 예측할 수 없는 결과를 생성하지 않고 다양한 예상치 못한 상황과 입력을 처리할 수 있어야 합니다. 가장 일반적인 접근 방식은 예외를 포착하고 처리하는 것입니다.


🔹 04 SOLID 원칙을 따르세요

"단일 책임", "개방/폐쇄", "리스코프 대체", "인터페이스 분리", "종속성 반전" - 이 5가지 원칙(줄여서 SOLID)은 확장 가능하고 유지 관리가 쉬운 코드 작성의 초석입니다.


🔹 05 테스트 쉽게 하기

소프트웨어의 테스트 가능성은 특히 중요합니다. 좋은 코드는 각 구성 요소의 복잡성을 줄이고 예상대로 작동하는지 확인하기 위한 자동화된 테스트를 지원함으로써 테스트하기 쉬워야 합니다.


🔹 06 추상화

추상화를 위해서는 핵심 논리를 추출하고 복잡성을 숨겨 코드를 더욱 유연하고 일반적으로 만들어야 합니다. 좋은 코드는 과도하게 설계되거나 장기적인 확장성과 유지 관리성을 무시하지 않고 적당한 수준의 추상화를 가져야 합니다.


🔹 07 디자인 패턴

디자인 패턴은 몇 가지 일반적인 문제를 해결하는 데 도움이 될 수 있습니다. 그러나 모든 패턴에는 해당되는 시나리오가 있습니다. 디자인 패턴을 과도하게 사용하거나 잘못 사용하면 코드가 더 복잡하고 이해하기 어려울 수 있습니다.


🔹 08 전역(변수) 종속성 감소

전역 변수와 인스턴스를 사용하면 종속성과 혼란스러운 상태 관리로 인해 어려움을 겪을 수 있습니다. 좋은 코드는 현지화된 상태와 매개변수 전달에 의존해야 합니다. 함수에는 부작용이 없어야 합니다.


🔹 09 지속적인 리팩토링

좋은 코드는 유지 및 확장이 가능합니다. 지속적인 리팩터링은 현재코드의 설계를 개선함으로써 가능한 한 빨리 문제를 파악하고 해결함으로써 기술적 부채를 줄여줍니다.


🔹 10 보안 최우선

좋은 코드는 일반적인 보안 취약점을 피해야 합니다. 좋은 코드는 SQL 인젝션, 크로스사이트 스크립팅와 같은 일반적인 보안 취약점을 피해야 합니다.


  • https://assets.bytebytego.com/10-good-coding-principles.pdf

  • 출처: https://www.linkedin.com/posts/alexxubyte_10-good-coding-principles-to-improve-code-activity-7158500497413341184-8bWJ?utm_source=share&utm_medium=member_desktop

10 Coding Principles to Improve Code Quality | Alex Xu posted on the topic | LinkedIn

www.linkedin.com

10 Coding Principles to Improve Code Quality | Alex Xu posted on the topic | LinkedIn

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2024년 2월 1일 오전 3:54

 • 

저장 40조회 3,305

댓글 0

    함께 읽은 게시물


    회사에 먼저 말하면 안 되는 조건: 연봉

    ... 더 보기

    < '다들 하니까'의 함정: 우리는 왜 내 판단보다 다수의 판단을 믿을까

    1. 사람들은 현재를, 지금까지 벌어진 일을 보여주는 지난 경험에 대한 솔직한 평가가 아니라 미래를 예측하는 유용한 지침이라고 생각하는 경향이 있다.

    ... 더 보기

    회사 사장들 중에는 장사꾼인지 사업가인지 헷갈리는 분들이 있습니다. 분명 사업체를 운영하는 사업가인데, 어떤 결정을 해야 할 때는 장사꾼처럼 생각하고는 하죠. 회사의 미래에 대한 비전이 없는 사장도 있습니다.

    ... 더 보기

    [주먹구구식 경영 탈피] 당신은 장사꾼인가요? 사업가인가요? - 모비인사이드 MOBIINSIDE

    모비인사이드 MOBIINSIDE

    [주먹구구식 경영 탈피] 당신은 장사꾼인가요? 사업가인가요? - 모비인사이드 MOBIINSIDE

    조회 339


    "마케팅을 바꾸는 데이터의 힘"을 읽고 정리해본 마케팅/데이터 개념

    요즘 제품을 만드는 개발자라면 단순히 코드만 잘 짜는 것 이상을 요구받습니다. 고객을 이해하고, 데이터 기반으로 제품을 개선할 수 있는 감각이 점점 더 중요해지고 있는데요.

    ... 더 보기

    직장인으로서 10년 정도 일하게 되면 피할 수 없는 순간이 바로 조직에서 리더의 역할을 받게 되는 인사발령이다. 팀원이었을 때는 내게 주어진 업무를 내가 가진 능력과 주변 동료들의 도움으로 해결하고, 그에 합당한 평가와 보상을 기다리며, 나쁘지 않는 리워드와 내 위치에 안도하며 또 새해를 맞이하고 하루하루를 버텨나가는 과정에 큰 어려움이 없다.

    ... 더 보기

     • 

    저장 5 • 조회 851