5.7. Anaconda 애드온 구조


Anaconda 애드온은 __init__.py 및 기타 소스 디렉터리(subpackages)가 있는 디렉토리를 포함하는 Python 패키지입니다. Python을 사용하면 각 패키지 이름을 한 번만 가져올 수 있으므로 패키지 최상위 디렉터리에 고유한 이름을 지정합니다. 애드온이 이름에 관계없이 로드되므로 임의의 이름을 사용할 수 있습니다. 유일한 요구 사항은 특정 디렉터리에 배치되어야 한다는 것입니다.

애드온에 대한 제안된 이름 지정 규칙은 Java 패키지 또는 D-Bus 서비스 이름과 유사합니다.

디렉터리 이름을 Python 패키지의 고유 식별자로 만들려면 점 대신 밑줄(_)을 사용하여 애드온 이름 앞에 조직의 역방향 도메인 이름 앞에 추가합니다. For example, com_example_hello_world.

중요

각 디렉터리에 __init__.py 파일을 만들어야 합니다. 이 파일이 누락된 디렉터리는 잘못된 Python 패키지로 간주됩니다.

애드온을 작성할 때 다음을 확인하십시오.

  • 각 인터페이스(그래픽 인터페이스 및 텍스트 인터페이스)에 대한 지원은 별도의 하위 패키지에서 사용할 수 있으며 이러한 하위 패키지 이름은 그래픽 인터페이스의 경우 gui 이고 텍스트 기반 인터페이스의 경우 tui 라고 합니다.
  • guitui 패키지에는 spokes 하위 패키지가 포함되어 있습니다. [1]
  • 패키지에 포함된 모듈에는 임의의 이름이 있습니다.
  • gui/tui/ 디렉터리에는 모든 이름이 있는 Python 모듈이 포함되어 있습니다.
  • 애드온의 실제 작업을 수행하는 서비스가 있습니다. 이 서비스는 Python 또는 다른 언어로 작성할 수 있습니다.
  • 서비스는 D-Bus 및 Kickstart에 대한 지원을 구현합니다.
  • 애드온에는 서비스의 자동 시작을 활성화하는 파일이 포함되어 있습니다.

다음은 모든 인터페이스 (Kickstart, GUI 및 TUI)를 지원하는 애드온의 샘플 디렉터리 구조입니다.

예 5.1. 샘플 애드온 구조

com_example_hello_world
├─ gui
│  ├─ init.py
│  └─ spokes
│     └─ init.py
└─ tui
   ├─ init.py
   └─ spokes
   └─ init.py
Copy to Clipboard Toggle word wrap

각 패키지에는 API에 정의된 하나 이상의 클래스에서 상속되는 클래스를 정의하는 임의의 이름으로 하나 이상의 모듈이 포함되어야 합니다.

참고

모든 추가 기능에 대해 Python의 PEP 8PEP 257 지침을 따르십시오. Anaconda 에서 실제 docstrings의 형식에 대한 합의는 없습니다. 유일한 요구 사항은 사람이 읽을 수 있다는 것입니다. 애드온에 자동 생성 문서를 사용하려는 경우 docstrings는 이 작업을 수행하는 데 사용하는 툴킷의 지침을 따라야 합니다.

애드온에서 새 카테고리를 정의해야 하는 경우 카테고리 하위 패키지를 포함할 수 있지만 권장되지는 않습니다.



[1] 추가 기능이 새 카테고리를 정의해야 하는 경우 gui 패키지에 카테고리 하위 패키지도 포함될 수 있지만 권장되지는 않습니다.
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat