Adapter 프로그래밍 스타일 가이드라인
Adapter는 Python 언어로 작성되었으므로, Adapter 개발자는 Style Guide for Python Code 내용을 엄격히 준수해야 합니다.
또한 프로그래밍된 Adapter의 품질과 가독성을 향상시키기 위해 Adapter 개발자는 이 부분의 내용도 따라야 합니다.
명명
-
클래스 이름은 카멜 표기법을 사용하십시오. 예를 들면 다음과 같습니다:
class AdapterWidget
-
클래스의 맴버 변수와 맴버 함수는 밑줄로 연결된 소문자 단어를 사용합니다. 예를 들면 다음과 같습니다:
self.pick_count # Note that variables are generally nouns def start_viz(self): # Note that the function name is generally a verb + object pass
-
클래스의 맴버 변수와 맴버 함수가 클래스 내부에서만 사용되는 경우 이름 앞에 밑줄을 추가하여 이름이 클래스 외부에서는 사용하지 않는 것이 좋지만 클래스 외부에서는 계속 사용할 수 있음을 나타냅니다. 예를 들면 다음과 같습니다.
self._socket = socket() # Indicates that the _socket variable is only used inside the class def _init_widget(self): # Indicates that the _init_widget function is only used inside the class pass
-
상수는 밑줄로 연결된 대문자를 사용합니다. 예를 들면 다음과 같습니다:
ADAPTER_DIR = "D:/adapter_for_communication"
주석
주석은 너무 많으면 안 되며 표현이 복잡하거나 표현된 의미가 비교적 중요할 때만 추가하면 됩니다.
-
한 줄 주석
#으로 한 줄 주석을 시작합니다.
-
여러 줄 주석
””” 및 ””” 사이에 여러 줄 주석을 추가하십시오.
-
함수, 클래스 또는 패키지에 대한 소개 주석
주석은 함수 아래, 클래스 아래 또는 패키지 상단에 있습니다. 예를 들면 다음과 같습니다.
def viz_is_running(self): """ Will be called when find viz is running during starting viz. """ class Adapter(QObject): """ Base class which encapsulates Viz/Vision/Hub/Robserver interfaces. """ """ Service base classes. """ import logging
로그
로그는 문제가 발생했을 때 문제를 분석하는 데 도움이 될 수 있습니다. 로그 정보는 적절할 때(예를 들어 중요한 함수를 호출하거나 함수가 참조할 수 있는 데이터를 반환할 때) 출력하는 것이 좋습니다.
Adapter는 다음과 같은 두 가지 로그 출력 방법을 지원합니다:
-
print: 이 방법은 로그만 콘솔에 출력합니다. 이 방법은 런타임에 실시간 관찰에 편리하지만 프로그램이 실패하면 메시지가 손실됩니다. 따라서 실제 생산 환경에서는 사용하지 않는 것이 좋습니다.
-
logging: 이 방법은 형식화된 로그 표시 형식을 지원하고 로그 파일에 로그 저장도 지원합니다(옵션 기능). 따라서 이 방법을 사용하는 것이 좋습니다.