당신은 멋쟁이, 우리는 장고쟁이~

0%

PEP8 Naming Conventions - 4편

파이썬 Naming Convention - 4편



Public and Internal Interface



이전 버전과 호환성을 보장하는것은

오직 퍼블릭 인터페이스에만 적용됩니다.



따라서, 사용자들은 퍼블릭 인터페이스와 내부 인터페이스를 잘 구분하는것이 중요합니다.



public interface (공용 인터페이스)는 독립적인 소프트웨어 엔티티가 상호 작용하는 논리적 지점입니다. 엔티니는 단일 컴퓨터, 네트워크 또는 다양한 토폴로지에서 서로 상호 작용할수 있습니다. 상호 작용을 계속 하려면, 퍼블릭 이너페이스가 안정적이여야 하고, 향후 변경 및 개선 및 사용중단을 지원하도록 잘 설계되어야 합니다.



문서화가 되어 있는 인터페이스



보통 문서화가 되어 있는 인터페이스는 퍼블릭 인터페이스라고 봅니다.


만약, 문서에 명시적으로 인터페이스가 이전 버전과 호환성을 고려하지 않아도 되는 잠정적 혹은 내부 인터페이스라고 선언이 되어 있는 경우에는 퍼블릭 인터페이스라고 보지 않습니다.



모든 문서화 되지 않은 인터페이스들은 내부 인터페이스인것으로 추정합니다.



__all__ 속성



모듈은 __all__을 사용하여, 명시적으로 퍼블릭 API 안에 이름을 선언합니다.


__all__을 비어있는 리스트에 설정함으로써, 모듈이 퍼블릭 API 를 가지고 있지 않다고 표시합니다.


만약 어떤 네임공간의 사용이 내부적으로 사용으로 보일때는, 인터페이스도 internal interface로 간주합니다.



Imported Names



가져온 이름들은 구현할때 세부 사항으로 간주되어야 합니다

다른 모듈들은 포함된 모듈의 API 에서 명시적으로 문서화 되어 있는 부분이 아닌 이상,

가져온 이름에 대한 간접 엑세스에 의존해서는 안됩니다.


마치며..



아직 public interface 와 internal interface 를 고려할만큼, 공부 수준이 높지 않아서.

Interface 관련 내용은 봐도 잘 모르겠군요.


나중에 수준이 좀 더 올르면, 그때 다시 볼 예정입니다.