파이썬은 간결한 문법과 높은 가독성으로 프로그래머들에게, 프로그래밍을 처음 배우려는 사람들에게 사랑 받는 언어입니다. 어떻게 하면 코드를 잘 작성할 수 있는지 살펴보겠습니다.
코드 스타일
초보 개발자부터 숙련된 개발자까지, 좋은 코드를 작성하는 습관을 길러두면 프로그램을 작성하는 과정은 물론, 유지보수하는 측면에서도 많은 이점을 얻을 수 있습니다. 좋은 코드는 가독성을 높이고 효율적인 코드일 테고요. 파이썬에서 권장하는 코드 스타일과 코딩 규칙의 기초를 정리해 보겠습니다.
코드 스타일을 따를 때의 이점
가독성 향상
첫 번째로 코드 스타일을 따를 때의 이점은 가독성이 높아진다는 것입니다. 가독성이 높은 코드는 자신만이 아니라 동료 개발자에게도 도움이 됩니다. 명확한 구조와 일관된 네이밍 등을 사용하게 되면 코드의 목적과 흐름을 쉽게 이해할 수 있기 때문이에요.
논리적 오류 최소화
두 번째는 논리적 오류를 최소화 할 수 있다는 것입니다. 코드 구조를 명확히 하면 예상치 못한 논리적 오류를 줄이는 데 도움을 줍니다. 특히, 들여쓰기나 변수명을 명확히 하지 않아서 생기는 사소한 실수가 오류를 만들기도 하는데, 코드 스타일을 따르면 이러한 오류들을 줄일 수 있게 되는 것이지요.
협업 효율성 증대
세 번째는 협업의 효율성 증대입니다. 프로그래밍을 처음 배우는 사람이라면 상관 없을 수도 있지만, 대규모 프로젝트를 진행한다고 하면 다른 사람과 협업을 하는 경우가 있습니다. 독학을 하는 경우에도 외부 소스를 참고한다면 넓은 의미에서 협업이라고 할 수 있겠죠. 팀원 간 코드 스타일이 일관되지 않으면 코드 리뷰나 디버깅 과정에서 많은 시간이 소모될 수 있습니다. 일관된 스타일을 공유할 수 있다면 원활한 커뮤니케이션으로 코드 품질을 높일 수 있습니다.
플랫폼 간 호환성 문제 감소
다양한 플랫폼에서 코드 작성을 하는 경우 표준화된 스타일이 아니라면 호환이 되지 않아 어려움을 겪을 수도 있습니다. 그래서 파이썬에서는 예상치 못한 충돌을 방지하기 위한 코드 스타일을 PEP-8 문서를 통해 제안하고 있어요.
PEP-8 | 파이썬 코딩 스타일의 표준
들여쓰기는 스페이스 4칸
들여쓰기는 코드 블록의 시작과 끝을 구분하는 매우 중요한 요소입니다. PEP-8에서는 들여쓰기를 할 때 tab 대신 스페이스 4칸 사용하기를 권장하고 있어요. 들여쓰기가 잘못되면 완전히 잘못된 결과를 얻게 될 수도 있어요. 다음 예제를 살펴 보세요.
잘 작성된 예
name = "Python"
if name == "Java":
print("Java 프로그래밍 언어입니다.")
print("End of program")
잘못 작성된 예
if name == "Java":
print("Java 프로그래밍 언어입니다.") # 들여쓰기 오류
print("End of program")
한 줄의 최대 글자수 제한 79자
가독성을 위해 한 줄의 글자수는 79자로 제한하기를 권장하고 있습니다. 코드가 길어질 경우 괄호를 활용해 줄 바꿈을 해도 괜찮습니다. 다음과 같은 줄 바꿈 예제를 확인해 보세요.
줄 바꿈 예제
total = (
100 + 200 + 300 +
400 + 500
)
주의할 점은 줄 바꿈한 코드의 다음 줄에는 반드시 들여쓰기를 적용해야 한다는 것입니다.
연산자의 사용 규칙
연산자는 어떻게 사용하느냐에 따라 코드의 가독성을 저해하기도 합니다. 그래서 연산자를 사용할 때 다음 규칙을 따르도록 권장하고 있어요.
-연산자의 양쪽에 스페이스바를 포함한다.
예:
x = a + b
-줄 바꿈 시, 연산자를 다음 줄의 시작 위치로 이동 시킨다.
잘 작성된 예
result = (a + b +
c + d)
잘못 작성된 예
result = (a + b
+ c + d)
모듈과 import 사용 규칙
파이썬의 강력한 기능 중 하나는 다양한 라이브러리와 모듈을 사용할 수 있다는 것입니다. 이 때 사용하는 명령어가 import인데, 다음과 같은 권장 사항이 있습니다.
-import는 파일의 맨 위에 작성한다.
여러 개의 모듈을 불러올 경우, 한 줄에 하나씩 작성한다.
예:
import os
import sys
변수, 함수, 클래스의 네이밍 규칙
프로그래밍 과정에서는 네이밍도 너무 중요합니다. 다양한 키워드를 프로그래밍 과정에 활용하기 때문에, 변수의 이름, 함수의 이름, 클래스의 이름 등 다양한 이름은 의미있게 그 용도와 목적이 무엇인지 알 수 있도록 지어줘야 해요.
변수명
변수명은 소문자와 밑줄을 사용한다.
예: user_name, total_price
함수명
함수명은 동작을 명확히 나타내도록 작성한다.
예: calculate_total(), get_user_info()
클래스명
클래스명은 각 단어의 첫 글자를 대문자로 작성한다.
예: UserAccoun, ProductInfo
주석 작성하기
코드는 시간이 지나면 기억이 희미해 질 수 있기 때문에 주석을 잘 달아두는 것이 코드 작성의 연속성을 유지하는 데 도움이 됩니다. 명확하고 간결한 주석을 작성하도록 노력해 보세요.
예:
# 사용자 이름과 나이를 출력하는 함수
def print_user_info(name, age):
"""
사용자 정보를 출력합니다.
:param name: 사용자 이름
:param age: 사용자 나이
"""
print(f"이름: {name}, 나이: {age}")
마치며
파이썬에서 권장하는 PEP-8 코딩 스타일은 권장되는 내용들이기는 하지만, 더 나은 개발 환경을 경험하기 위해 노력해야 할 소양이자 역량인지도 모릅니다. 특히 여러 사람과 함께 개발하는 환경이라면 더더욱 지켜주는 것이 좋을 것 같아요. 코드 스타일이 일관되면 코드 품질이 향상되고 개발 과정의 능률은 물론, 유지 보수에서의 편리성도 함께 도모할 수 있습니다.