2014-10-09 4 views
2

모듈에 여러 가지 내부 기능이 있습니다. 모듈이 너무 커지기 때문에이 내부 함수를 동일한 패키지의 별도 "유틸리티"모듈로 분해하려고합니다. 유틸리티 모듈은 패키지의 공용 API의 일부로 간주되어서는 안되는 패키지 내부 기능 만 포함합니다. 그러한 내부 모듈에 대해 허용 된 명명 규칙이 있습니까?개인 모듈의 명명 규칙

직관적으로 모듈 이름 앞에 밑줄을 붙입니다. 그러나 이것이 C/C++ 모듈 according to PEP8의 명명 규칙입니다.

함수 이름이 밑줄로 붙어 있기만하면 (함수 이름이 밑줄로 표시되어 있기 때문에) 모듈 이름 프라이버시를 참조하기 때문에 함수 이름이 밑줄로 붙어있는 것처럼 보이지 않습니다.

답변

2

접두사가 붙은 밑줄로 만을 C/C++ 확장 모듈에으로 적용한다고 말하지 않습니다. 그와 같은 모듈은 직접 사용하는 것이 아니라, 같은 이름의 파이썬 모듈 (cf. socket/_socket 참조)에 대한 개인 구현을 제공합니다. 그 논리로 공공 사용을 목적으로하지 않는 모듈 (C 또는 Python 구현 여부)이 _ 접두어를 사용해서는 안되는 이유는 알 수 없습니다.

1
내가 아는 한

하지,하지만 종종 볼 몇 가지가 있습니다 :

  • 모듈이 C에 대한 의미, 비록 내부 모듈을
  • 밑줄을 포함 internal 또는 internal_xyz
  • 서브 패키지라는 이름의 internal 이름은 모듈. 나는 개인적으로, 그것이 단정하고 모든 사람들이 그것이 무엇을 의미하는지 알기 때문에 이것을 선호한다.