CorpusTools 프로젝트 가이드

프로젝트 디렉토리 구조 및 설명

CorpusTools/
├── CorpusTools/
│   ├── __init__.py
│   ├── corpus.py
│   ├── data/
│   │   ├── example_corpus.txt
│   │   └── ...
│   ├── interface/
│   │   ├── main_window.py
│   │   └── ...
│   ├── helpers/
│   │   ├── file_operations.py
│   │   └── ...
│   └── ...
├── documentation/
│   ├── index.md
│   └── ...
├── setup.py
├── README.md
└── ...

디렉토리 구성 요약

  • CorpusTools/: 핵심 소스 코드가 위치한 기본 폴더입니다.
  • __init__.py: Python 패키지로 인식되도록 하는 초기화 스크립트입니다.
  • corpus.py: 텍스트 코퍼스 처리와 관련된 주요 기능을 담당합니다.
  • data/: 샘플 데이터 및 기타 리소스 파일들을 저장합니다.
  • interface/: GUI(Graphical User Interface) 관련 모듈들이 포함되어 있습니다.
  • helpers/: 유틸리티 함수들과 보조적인 도구들을 제공합니다.
  • documentation/: Markdown 형식의 문서 자료를 관리하는 공간입니다.
  • setup.py: 설치 설정과 의존성 관리를 위한 메타데이터 파일입니다.
  • README.md: 프로젝트 개요, 설치 방법, 사용법 등에 대한 정보를 담고 있습니다.

실행 진입점 파일 설명

시작 스크립트

GUI 애플리케이션을 시작하는 주요 진입점은 CorpusTools/interface/ 경로에 있는 main_window.py 파일입니다. 이 스크립트는 응용프로그램의 메인 창을 생성하고 표시합니다.

# CorpusTools/interface/main_window.py

import sys
from PyQt5.QtWidgets import QApplication
from CorpusTools.interface.main_window import AppMainWindow

def launch_application():
    application = QApplication(sys.argv)
    main_window = AppMainWindow()
    main_window.show()
    sys.exit(application.exec_())

if __name__ == "__main__":
    launch_application()

핵심 컴포넌트 설명

  • QApplication: Qt 응용프로그램의 생명주기와 전반적인 동작을 제어합니다.
  • AppMainWindow: 메인 화면을 구성하고 렌더링하는 클래스입니다.
  • launch_application(): 애플리케이션을 초기화하고 실행하는 역할을 수행합니다.

설정 파일 상세

배포 설정 스크립트

setup.py 파일은 프로젝트의 배포 및 설치 과정에서 필요한 모든 메타정보를 정의하며, 루트 디렉토리에 존재합니다.

# setup.py

from setuptools import setup, find_packages

setup(
    name='CorpusTools',
    version='1.0',
    packages=find_packages(),
    install_requires=[
        'PyQt5',
        'numpy',
        'pandas'
    ],
    entry_points={
        'console_scripts': [
            'corpus_toolkit=CorpusTools.interface.main_window:launch_application'
        ]
    }
)

속성 정의 설명

  • name: 패키지 이름으로 식별자 역할을 합니다.
  • version: 현재 버전 정보를 나타냅니다.
  • packages: 배포에 포함될 파이썬 패키지를 지정합니다.
  • install_requires: 필요한 외부 라이브러리 목록입니다.
  • entry_points: CLI(Command Line Interface) 명령어를 통해 실행 가능한 엔트리 포인트를 설정합니다.

위 설정을 기반으로 사용자는 pip install . 명령어로 프로젝트를 설치하고, corpus_toolkit 명령어를 통해 GUI 애플리케이션을 실행할 수 있습니다.

태그: python PyQt5 NumPy pandas setuptools

9월 21일 12:47에 게시됨