리눅스나 맥에서 터미널로 제공되는 쉘은 엄청난 편의성을 제공해준다. 윈도우즈 유저로 가장 부러운 부분. git을 직접 다운받아 설치하면 git bash가 깔리는데 요게 꽤 쏠쏠했기에 더 찾아봤다. 일단, MS가 공식적으로 지원하는걸로 WSL(Windows Subsystem for Linux)가 있다. 리눅스 터미널 쉘을 가장 근접해서 느낄 수 있고, 공식지원이라 좋지만, exe를 실행하려면 확장자까지 써줘야하고 환경변수 공유등 좀 복잡했다. git bash가 좀…
[카테고리:] 파이썬
파이썬 관련 메모.
Design pattern: Singleton
singleton 패턴은 인스턴스가 단 하나만 존재해야할 때 사용한다. 관련예는 쉽게 찾아볼 수 있다. preference를 다루는 경우 그 자체가 global 성격을 가지기 때문에 쓸 수 있다. 게임개발에선 audio manager같은경우, 오디오 입출력을 단일화 하기위해 사용한다. 모바일기기의 HW 제어같은 경우 물리적으로 하나만 존재하기 때문에, singleton사용이 이상적이다. 사용방법은 좀 다르지만 안드로이드 공용자원인 시스템 서비스들 (LocationManager, NotificationManger, ConnectivityManager, LayoutInflater 등)의…
Flask: 첫번째 조우
정보를 얻을 목적으로 이문서를 접하는 분이 있다면 바로 뒤돌아 가시기 바란다. 나도 정리가 안된 상태에서 개략적으로 공부중인 내용을 그저 기록용으로 남기는 포스팅임을 밝힌다. Flask 는 Werkzeug, Jinja2 두가지 모듈에 기반한 마이크로 프레임웍이다. Werkzeug는 WSGI 모듈이고, Jinja2는 html template rendering engine이다. 웹개발도 생소하고 처음 접하는거라, 빠르고 쉬운 튜토리얼을 찾았었는데, 무슨소린지 하나도 모르겠더라. 그래서 돌아간 Flask 공식…
Python : metaclass
metaclass는 일반적인 파이썬 사용에는 필요없는 조금은 깊이 들어가는 내용이지만, OOP적 접근을 위해 알 필요가 있어보인다. stackoverflow에 달린 설명 참조. 파이썬에서는 모든게 object이다. 클래스도 object로 생성이 되고 instance화 시킬 때, 이 object가 복사되면서 __init__ 루틴을 타게된다. 일반적인 인스턴스에 대해 어떤 클래스로부터 왔는지 알아보는 함수에 type()을 쓸 수 있는데, 그렇다면 클래스는 어떤 타입일까? 인스턴스 x의 type은 Foo인데,…
Kotlin vs Python: 기본 문법의 차이 추가정리
여전히 두 프로그래밍 언어를 병행해서 공부하다보니, 나도 모르게 헷갈리게 사용하는 경우가 많다. 앞에서 차이점 몇가지를 얘기했었는데, 나머지도 정리해 보려한다. 변수 Kotlin 값 변경이 가능하게 하려면 ‘var’, 값 변경이 불가능하게 하려면 ‘val’로 정의한다. 값이라고 했지만, 사실은 레퍼런스의 의미로 객체의 경우 다른 객체를 지정하도록 변경하지 못한다. Python 동적타입 언어답게 아무런 키워드 없이 그냥 사용 가능하다. 함수 Kotlin…