파이썬다운 생각

이윤재·2020년 6월 14일
0

파이썬

목록 보기
1/3

프로그래밍 언어에서는 사용하는 용어는 그 언어를 사용하는 사용자들에 정의 된다. 그럼 파이썬 다운은 어떤 의미를 할까?
파이썬 프로그래머들은 복잡함보다는 단순함을 선호하고, 가독성을 극대화하기 위해 명료한 것을 좋아한다.
즉, 이러한 특성들이 반영된 것이 파이썬다운을 의미한다.
그럼 우리는 이러한 특성들을 어떻게 반영해서 파이썬 다운 코드를 작성했다라는 인정을 받을지 고민 해보자.

PEP 8 스타일 가이드를 따르자.

많은 파이썬 사용자들이 PEP 8 가이드를 기반으로 코드를 작성하고 있다. 이는 물론 공통된 스타일을 기반으로 협업에 도움이 되는 요소도 있지만, 이스타일 자체가 파이썬 다운 스타일이기 때문이다.

단순함 :
파이썬에서는 이 단순함, 코드 명료성을 위해 화이트 스페이스에 의미를 둔다.

  • 탭이 아닌 스페이스로 들여쓴다.
  • 문법적으로 의미 있는 들여쓰기는 각 수주문 마다 스페이스 네 개를 사용한다.
  • 한 줄의 문자 길이가 79자 이하이여한다.

확실성 :
naming이나 표현식과 문장에서 의미하는 바를 확실하게 하려고 노력한다.
일단 명명은

  • 함수, 변수, 속성은 lowercaes_underscore 형식(쉽게, 소문자, 2단어 이상시는 _ 를 연결한다는 뜻)
  • protected 인스터스 속성 : leading_underscore 형식(맨 앞이 로 시작한다.)
  • privated 인스턴스 속성 : __double__leading_underscore (__ 로 시작)
  • 클래스와 예외는 CapitalizedWord형식(대문자 시작)
  • 모듈 수준 상수는 ALL_CAPS 형식(다 대문자)
  • 클래스 인스턴스 메스드는 첫 번째 파라미터 self.~
  • 클래스 메서드에서는 첫 번째 파라미터의 이름을 cls.~

표현식

  • if not a is b 라고 헷갈리게가 아니라 if a is not b 등으로 명확.
  • if len(somlist) == 0 처럼 길이 확인 안하고 if not somelist
  • 반대의 경우도 if somelist(!= 0) 으로 확인
  • if, while,for,execption 등 복합문을 작성하지 않음

import

  • 항상 맨위
  • import시 절대 이름을 사용, 현재 모듈의 경로를 기준으로 상대 경로로 이름 사용 하지 않음.
  • 상대적인 임포트를 만약하려면 from . import foo 처럼 그나마 from으로 명시
    등등
    이 존재한다.

참고사항
파이썬과 다른 언어(java,c++) 과의 차이점
parse -> anlayze -> 인터프리터 과정이라는 점이다.
결국, 마지막 과정이 인터프리터라는게 다르다. 하는 역할을 같지만 인터프리터는 컴파일러와 다르게 메모리에서 작동한다. 즉, 실행까지 한번에 한다.
parse: 문법 , anlayze: 인자 등, 인터프리터,컴파일러: 코드 번역
클래스 메소드의 종류와 구분
초기 메소드, 정적 메소드, 클래스 메소드, 인스턴스 메소드
간단하게 말하면, 초기, (정적,클래스), 인스턴스로 구분할 수 있다.
초기는 생성자, 인스턴스는 객체 내부에서 생성하고, 그 객체를 참조하는 메소드이며 (정적, 클래스) 는 인스턴스 변수들을 사용하지 않는다.
여기서 더 세분화 되는 기준은 클래스는 인스턴스변수는 아닌 클래스 변수를 사용한다는 점이다.
참고링크(클래스)
참고링크(파이썬차이)
참고링크(파이썬차이2)

profile
시작단계

1개의 댓글

comment-user-thumbnail
2020년 6월 16일

너무 쉽고 간단하게 설명해주셨네요~ 많이 배우고 갑니다!

답글 달기