ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 코드 스타일 가이드 Code Style Guide, Code Conventions
    개발 Development/클린 코드 CleanCode 2023. 5. 2. 21:54

    목차

      코드 스타일 가이드는 프로그래밍 언어에서 권장하는 가장 적절한 코드 스타일을 말합니다.
      예를 들어, 각종 띄어쓰기 및 변수명 작성하는 규칙 등 입니다.
      개발자는 필히 학습해야 하는 내용입니다.

      국내에서 '코딩 규칙' 또는 '코딩 관례'라고 혼용하여 말하기도 하지만, 엄밀히 다른 내용입니다.
      또한, 회사에서 요청하는 '코딩 규칙'과도 엄밀히 다른 내용입니다.

      • 코드 스타일 가이드: 프로그래밍 언어에서 강력히 권장하는 가장 적절한 코드 스타일
      • 코딩 관례: 여러 개발자들이 주로 선택하는 코드 스타일
      • 회사 내 코딩 규칙: 꼭 지켜야 하는 의무 코딩 규정

       

      코드 스타일 가이드

       

      코드 스타일 가이드는 이런 것입니다.

      직관적인 이해를 위해, 몇 가지 예를 적습니다.

      # 권장하는 예
      import sys
      import requests
      import os
      import time
      
      # 권장하지 않는 예
      import sys, os, time, ..., ...

      위 파이썬 코드드는 '코드 스타일 가이드'에서 권장하는 내용을 그대로 가져왔습니다.
      이유가 따로 적혀 있지 않지만, 제 경험에 의하면,
      라이브러리 추가 삭제가 용이하고, 라이브러리 관련하여 주석을 적기 편합니다.
      만약, 한 줄 옆으로만 나열하여 여러 라이브러리를 적었다면, 주석이 어떤 라이브러리에 관한 주석인지 알기 어려울 것입니다.

       

      // 아래는 코딩 관례입니다.
      // 자바 개발자의 89%**는 아래와 같이, if문과 조건문 사이에 공백을 1칸 넣습니다.
      if  (true)  {
          ......
      }
      
      // 자바 개발자의 10%**는 아래와 같이, if문과 조건문 사이에 공백을 넣지 않습니다.
      if(true)  {
          ......
      }

      위 자바 코드는 '코딩 관례' 통계 자료의 일부분 입니다.

       

      필요한 이유

      • 속도 향상
        프로그래머에게 가독성은 필수입니다. 안 그래도 난해하게 보일 수 밖에 없는게 소스코드인데, 가독성이 나쁘면 개발 속도가 느려질 수 밖에 없습니다. 코드 스타일 가이드를 따라서 깔끔하게 코드를 정리하면 개발 속도가 빨라질 것입니다.

      • 에러 방지
        코드 스타일 가이드가 익숙해 지면, 코드가 깔끔해 지고, 상대적으로 문제가 될 수 있는 코드 부분이 눈에 잘 띕니다.
        더불어, 프로그래밍은 띄어쓰기 하나로도 에러가 발생하지 않는데, 이런 상황을 최대한 방어할 수 있습니다.

      • 협업
        여러 사람이 프로그램을 나누어 개발하여 협업이 필요한 상황에서야 말로, 코드 스타일 가이드는 필수입니다.
        서로 코딩하는 스타일이 천차만별이라면 결코 그 프로그램이 작동할 수 없을 것이다.

      • 유지관리
        다른 사람이 개발했거나, 과거에 자신이 개발한 프로그램을 이어 받아서 계속 유지보수하고 추가 개발하려면, 과거의 코드를 훑어보며 복습해야 하기 때문에, 일관된 관례에 따라 코드가 관리되야 한다.

       

      추세

      과거엔 회사의 CTO, 팀장, 선배 등 가장 영향력 있는 개발자가 코드 스타일 가이드를 참고하여, 회사 내 코딩 규칙을 정하는 형태였다면, 요즘은 개발에 사용하는 IDE 및 각종 플러그인이 매우 발달하였기에, 그런 프로그램에서 제공하는 규칙을 그대로 사용하는 경우도 많습니다.

       

      프로그래밍 언어별 코드 스타일 가이드

      • 파이썬
        'PEP8'이라는 공식 코드 스타일 가이드가 있습니다.
        PEP는 Python Enhancement Proposal의 약자로, 파이썬 개발자 커뮤니티에서 파이썬에 대한 새로운 기능, 정보, 혹은 절차에 대해 제안하는 문서입니다. 아래와 같은 내용들이 있습니다.

      • 자바스크립트
        가장 널리 사용되는 것은 'Airbnb JavaScript Style Guide' 입니다.
        또한, 'Google JavaScript Style Guide'도 많은 개발자들이 참고하는 가이드입니다.

      • 자바
        자바에서는 'Google JavaScript Style Guide'라는 공식 코드 스타일 가이드가 있습니다.
        이는 Sun Microsystems에서 처음 발표되었고, Oracle이 Sun을 인수한 이후에도 계속 사용되고 있습니다.

       

      취업 또는 이직

      취업을 준비하는 학생의 경우, 자신의 이력서에 적을 프로그래밍 언어에 대해 코드 스타일 가이드 정도는 학습하는게 옳습니다.
      이직을 준비하는 경력자도, 코드 스타일 가이드 내용을 당연히 알아야 할 것이며, 이를 모를 경우, 전 직장에서 개발 할 때, 마구잡이로 개발했다고 보여질 수 있다고 생각됩니다.

       

      참고

      여러 프로그래밍 언어별로, 개발자들이 선호하는 코드 스타일을 통계 그래프로 분석한 사이트를 소개합니다.
      http://sideeffect.kr/popularconvention

      댓글