Home 파이썬 개발자가 가져야 할 자세
Post
Cancel

파이썬 개발자가 가져야 할 자세

서론

파이썬은 지속적으로 발전하는 프로그래밍 언어로, 버전 업그레이드마다 새로운 기능과 변경사항이 도입됩니다.

이러한 변화는 기존 코드의 동작에 대한 영향을 매우 크게 강요하는 경우도 꽤나 흔합니다.

특히 이전 글에서 설명한 Python 3.11에서 strEnum의 동작 변경은
많은 개발자들에게 주의가 필요한 단적인 예시입니다.

목차

1. 파이썬의 지속적인 변화와 대응

파이썬은 하위 호환성을 중요시하면서도, 때로는 언어의 명확성과 개선을 위해 기존 동작을 변경하기도 합니다.
이러한 변화는 개발자들에게 지속적인 학습과 적응을 강요합니다.

2. 개발자의 준비 자세

파이썬 개발자는 항상 최신 버전의 변경사항을 주시하고,
자신의 코드가 새로운 버전에서도 자신의 의도대로 동작하는지 확인해야 합니다…

1
2
3
4
5
# Python 3.11 이전
f"{MyEnum.VALUE}"  # "실제 값"

# Python 3.11 이후
f"{MyEnum.VALUE}"  # "MyEnum.VALUE"

3. 파이썬의 설계 철학 이해하기

파이썬은 “명시적인 것이 암시적인 것보다 낫다”는 철학을 가지고 있습니다.
이는 코드의 가독성과 유지보수성을 높이기 위한 중요한 원칙입니다.

4. 호환성 관리 전략

1
2
3
4
5
6
7
8
try:
    # Python 3.11 이상
    from enum import StrEnum
except ImportError:
    # 이전 버전 호환성
    from enum import Enum
    class StrEnum(str, Enum):
        pass

5. 그래서 파이썬 말고 다른 대안이 있는가?

결국 우리는, 파이썬이 언제라도 변할 수 있다는 사실을 염두에 두고 계속 사용할 수 밖에 없습니다.
저를 포함한 여러분 모두의 다음 버전 마이그레이션이 부드럽게 진행되길 바랍니다.
아마도 그러지 않겠지만요..

파이썬은 처음 도입하긴 쉽지만, 지속적인 서비스의 유지를 위해서는 정말 많은 신경을 쏟아야 하는 것 같습니다.
정말 전혀 예상치 못한 곳에서, 예상치 못한 사유로 문제가 되는 일이 비일비재합니다.

결국, 파이썬 개발 환경에서는 모든 가능성을 철저히 대비하거나
혹은, 예기치 않은 변화에 대한 유연함을 높이는 양자택일의 상황을
계속 마주하게 되고 끊임없는 선택이 요구됩니다.

무엇이 정답인지는 아직 잘 모르겠습니다. 어쩌면 정답은 없을지도요..

This post is licensed under CC BY 4.0 by the author.

Python 3.10에서 3.11로 마이그레이션 시 str, Enum 문자열 출력 동작 변경과 대응 전략

git 브랜치명에 언더바를 잘 안 쓰는 이유