뭔가 만들 때, 개발자는 어떻게 묶을까를 고민을 하게 되는데요.
그럴 때, Python에서는 Modules라는 내용에서 이 부분을 해결 하고 있습니다.
그 중 제가 유심하게 본 부분은 Package 영역입니다.
(참고) http://docs.python.org/tutorial/modules.html#packages
The __init__.py files are required to make Python treat the directories as containing packages; this is done to prevent directories with a common name, such as string, from unintentionally hiding valid modules that occur later on the module search path. In the simplest case, __init__.py can just be an empty file, but it can also execute initialization code for the package or set the __all__ variable, described later.
즉, __init__.py 파일이 있는 디렉토리는 Package로 인식하여, 그 이하의 모든 파일들을 import할 수가 있게 됩니다.
또한, 디렉토리 명과 파일이 namespace의 역할을 하게 되는 듯 합니다.
# python에서는 namespace가 따로 있는거 같은데, 이것과 관련이 있는지는 아직 못 봤습니다.
예를 들자면, 다음과 같이 디렉토리가 구성 되면,
아래와 같이 Package를 구성하게 됩니다.
이를 이용하면 좀 더 깔끔하게 모듈들을 구성할 수 있을 것으로 보입니다. :)
No comments:
Post a Comment