Skip to content

배토의 개발일지

나를위한 단편적 기억들의 기록

Menu
  • 안드로이드
  • 코틀린
  • Godot
  • 블렌더
  • git
  • 게임제작일지
  • 기타
Menu

[태그:] 파이썬

Python : Access Modifier 그리고 참고용 링크

Posted on 2020년 4월 14일2020년 4월 16일 by batmask

앞서, Python에서 OOP 프로그래밍을 하며 계속 벽에 부딪힌다고 얘길 했었다. 그 중 하나가 access modifier인 public, protected, private이 Python에 없는 점이다. 해당 modifier들은 없지만, 유사한 naming convention을 제공한다. 이름 앞에 ‘_'(underscore) 또는 ‘__'(double underscore)를 붙여주면 된다. db_name에 ‘__’로 시작하도록 이름을 사용했고, 이 값을 클래스 외부에서 엑세스하면 attribute error가 발생하게 된다. ‘_'(underscore) 하나를 사용하면, private, 두개를…

Python: 다중 상속시, metaclass 문제

Posted on 2020년 4월 14일2020년 4월 16일 by batmask

누누히 말하지만, Python이 OOP 프로그래밍에 그다지 적합한 언어는 아니다. 덕분에, OOP 프로그래밍을 지원하기 위해 마련된 장치들이 충돌을 일으키는 경우가 종종 있다. 오늘 겪은 문제는 다중상속시 metaclass 충돌 문제다. 먼저 간단하게 말하면, Python이 다중상속을 지원하지만 metaclass를 다중상속 받을 수는 없다는 얘기다. 우회하는 방법이 있는걸로 보이지만, 굳이 이렇게 까지 해야 하나싶고. 문제의 근원인 인터페이스에 대해 먼저 말해보자….

Python: sqlite3.connect()에 대해

Posted on 2020년 4월 7일2020년 4월 16일 by batmask

Python을 쓰면서 가장 불만인점이 애매한 문서화 부분이다. Dynamic type언어다 보니, 리턴값이 무엇인지 알기가 힘들고, 예제들엔 실패시 리턴값이나 예외처리에 대해 언급이 없는경우를 자주 접한다. 학습하는 수준에서는 별 문제가 없는데, 실무 수준의 완성도에선 실패나 예외처리를 명확하게 하지 않는건 말이 안되거든. 고작 sqlite3에 connect() 하는 단계에서 여러가지를 겪어서 기록해본다. 일단, 제대로된 문서가 아니면 try-except를 쓰는 코드가 잘 안보인다….

Python: Enable unittest on VS Code

Posted on 2020년 4월 7일2020년 4월 16일 by batmask

VS Code는 쓸수록 맘에 드는 코드 편집기다. 가볍고, 플러그인으로 확장성도 좋고, 문서화도 잘되어 있다. python 사용시, 기본적으로 unittest가 활성화 되어 있지 않은데, 공식문서를 참조 하여 설정하였다. Nose, 나 PyTest도 있는데, 나는 기본 unittest 모듈을 쓰므로 별다른 추가작업없이 설정변경으로 가능하다. Ctrl+Shift+P로 커맨드 팔레트를 띄우고 settings 실행 Python 확장이 설치되어 있다는 가정하에, Python.Testing 항목 검색 “Unittest enabled”…

Design pattern: Singleton

Posted on 2020년 4월 5일2020년 4월 16일 by batmask

singleton 패턴은 인스턴스가 단 하나만 존재해야할 때 사용한다. 관련예는 쉽게 찾아볼 수 있다. preference를 다루는 경우 그 자체가 global 성격을 가지기 때문에 쓸 수 있다. 게임개발에선 audio manager같은경우, 오디오 입출력을 단일화 하기위해 사용한다. 모바일기기의 HW 제어같은 경우 물리적으로 하나만 존재하기 때문에, singleton사용이 이상적이다. 사용방법은 좀 다르지만 안드로이드 공용자원인 시스템 서비스들 (LocationManager, NotificationManger, ConnectivityManager, LayoutInflater 등)의…

글 페이지 매김

  • Previous
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • Next

최신 글

  • Blender : snap을 써서 다른 vertex에 정렬하기
  • KTor Client 기본 사용 정리
  • 게임 만들거다.
  • Using Koin with Android Compose

보관함

2025 5월
일 월 화 수 목 금 토
 123
45678910
11121314151617
18192021222324
25262728293031
« 4월    

메타

  • 로그인
  • 엔트리 피드
  • 댓글 피드
  • WordPress.org
©2025 배토의 개발일지 | Built using WordPress and Responsive Blogily theme by Superb