Python 개발자 가이드

이 가이드는 Python에 기여하기 위한 종합 자료로, 처음 기여하는 분과 경험 많은 기여자 모두를 위한 것입니다. 이 가이드는 Python을 유지 관리하는 바로 그 커뮤니티가 유지 관리합니다. 여러분의 기여를 환영합니다!

하고자 하는 일에 가장 잘 맞는 영역부터 시작하십시오. 이 가이드의 내용을 검토한 후에도 궁금한 점이 남아 있다면, Core Python Mentorship 그룹이 새 기여자가 이 과정을 밟아 나가도록 안내해 드립니다.

이 가이드의 각 절은 필요할 때마다 읽기를 권장합니다. 모든 내용을 읽고 이해하지 않아도, 충분하다고 느끼는 지점에서 멈추고 바로 기여를 시작할 수 있습니다. 가이드 안에서 여기저기 건너뛰며 읽기로 했다면, 일부 절은 서로를 바탕으로 이어지므로 놓친 개념이나 용어를 찾아 앞으로 되돌아가야 할 수도 있다는 점에 유의하십시오.

오픈 소스 기여에 관한 더 폭넓은 조언을 원한다면, Python 커뮤니티의 여러 사람이 참여해 만든 훌륭한 가이드 모음인 Open Source Guides를 참고하십시오. 예를 들어 How to Contribute to Open Source가 있습니다.

Python 작업을 하기 위해 컴파일러 엔지니어일 필요는 없습니다 – Savannah Ostrowski

빠른 참조

참고

빠른 참조 문서는 요약표이자 개요 역할을 하도록 시작하기로 옮겨졌습니다.

새 빠른 참조로 이동하십시오.

Python 자체에 대한 변경 제안하기

Python은 끊임없이 발전하는 기술 시스템의 일부로 동작하므로, Python의 코드, 문서, 테스트를 개선하는 일은 결코 “끝나지” 않는 지속적인 작업입니다. 이러한 필수 유지 관리 활동보다 훨씬 더 어려운 지속적인 작업은, 표준 라이브러리와 언어 정의라는 형태의 Python을 개발자의 도구 모음 속에서 한층 더 나은 도구로 만들 방법을 찾는 일입니다.

이러한 종류의 변경은 앞에서 설명한 변경보다 훨씬 드물지만 실제로 일어나며, 그 과정 또한 이 가이드의 일부로 설명되어 있습니다:

주요 자료

추가 자료

행동 강령

Python Software Foundation이 지원하는 인프라에서 이루어지는 모든 상호작용에는 PSF 행동 강령이 적용된다는 점에 유의하십시오. 여기에는 Python 자체의 개발에 사용되는 모든 인프라(예: Discourse, 이슈 추적기, GitHub 등)가 포함됩니다. 일반적으로 이는 프로젝트 내에서의 위치와 관계없이 모든 사람이 열린 태도로 다른 사람을 배려하고 존중해야 한다는 뜻입니다.

다른 인터프리터 구현

이 안내서는 특히 CPython이라고도 하는 Python 참조 인터프리터에 기여하기 위한 것입니다(표준 라이브러리의 대부분은 Python으로 작성되어 있지만, 인터프리터 코어는 C로 작성되어 있으며 C 및 C++ 생태계와 가장 쉽게 통합됩니다).

각기 다른 부분에 초점을 맞춘 다른 Python 구현도 있습니다. CPython과 마찬가지로, 이들 역시 하고 싶은 일은 항상 많지만 그 일을 할 개발자는 부족합니다. 관심을 가질 만한 주요 예는 다음과 같습니다:

  • PyPy: 주요 플랫폼에서 고속(JIT 컴파일) 실행에 초점을 맞춘 Python 인터프리터입니다.

  • GraalPy: GraalVM 기반으로 구축되었으며, Java에 임베딩하는 것을 퍼스트 클래스(first-class) 수준으로 지원하는 Python 인터프리터입니다.

  • Jython: Java 가상 머신(JVM) 환경과의 원활한 통합에 초점을 맞춘 Python 인터프리터입니다.

  • IronPython: .NET과 Mono가 제공하는 공용 언어 런타임(CLR)과의 원활한 통합에 초점을 맞춘 Python 인터프리터입니다.

  • MicroPython: Python 표준 라이브러리의 작은 부분 집합을 갖추고 마이크로컨트롤러와 제약된 환경에서 실행되도록 최적화된 아주 작은 Python 인터프리터입니다.

  • CircuitPython: 저가형 마이크로컨트롤러 보드에서 실험하고 코딩을 배우는 일을 쉽게 할 수 있도록 설계된 MicroPython의 포크입니다.

전체 목차