Chain of Responsibility는 핸들러를 가진 객체가 요청을 받으면 자신이 처리할 요청인지 확인 후, 맞다면 처리하고 아니라면 다음 객체에게 전달한다. 전달받은 객체도 동일한 핸들러 인터페이스를 갖고 있으며, 전달받은 요청을 확인 후 마찬가지로 처리한다. 이렇게 핸들러들이 체인처럼 엮여서 마치 필터를 거치듯 필요한 객체까지 전달되어 처리되는 방식이 Chain of Responsibility Pattern이다. 이 패턴을 더 읽기
기타
메인 카테고리 소속되지 않는 개발 관련 팁
Design Pattern: Template Method
디자인 패턴 공부하면서 제일 중요하게 생각하고 있는 점이 실제 사용예이다. 제일 엿같은점이 커피머신이니, 스파게티니, 공구상점이니 이딴 개같은 예제들을 끌어와 설명하고 있는 부분이라서. 아니, 반복해서 마주치는 문제를 OOP로 설계하는 보편적인 방법들을 설명하면서 어떻게 실사용예 없이 그럴수가 있지? 그냥 오픈소스라도 좀 끌어와서 설명해야하는거 아니냐. Template Method도 실제 예가 없으면 그냥 가상클래스 상속받아 더 읽기
DB에 발가락만 담가보자
개발경력이 대부분 모바일 환경이다보니, 오랜 경력에도 DB를 만져본적이 별로 없다. 안드로이드 앱만 개발해도 sqlite는 쓸텐데, 좀 심각하네. 대학때 배웠던 기억을 되살려보며 아주 간단한 사항만 기록해보려한다. 일단은 다루기쉬운 sqlite3만 고려한다. sqlite를 공부하기 좋은 곳은 tutorialspoint. 어 머야, 어설픈 튜토리얼 사이트보다 sqlite 개쩌는 튜토리얼 사이트가 있었네. https://www.sqlitetutorial.net/ 그냥 비교대상이 없다. 최고라서 살짝 더 읽기
Python : metaclass
metaclass는 일반적인 파이썬 사용에는 필요없는 조금은 깊이 들어가는 내용이지만, OOP적 접근을 위해 알 필요가 있어보인다. stackoverflow에 달린 설명 참조. 파이썬에서는 모든게 object이다. 클래스도 object로 생성이 되고 instance화 시킬 때, 이 object가 복사되면서 __init__ 루틴을 타게된다. 일반적인 인스턴스에 대해 어떤 클래스로부터 왔는지 알아보는 함수에 type()을 쓸 수 있는데, 그렇다면 클래스는 어떤 더 읽기
Android Stuido와 IntelliJ C drive 공간확보
윈도우즈가 올라간 C드라이브는 80기가짜리 작은 ssd를 쓰고 있는데, 프로그램을 아무리 다른 드라이브에 설치해도 이놈들이 자꾸만 C 드라이브 특히 user directory를 사용하고 있는거다. C:\user\username 디렉토리 위치를 다른 드라이브로 바꾸면 원천적인 해결이 되겠지만, 윈도우즈는 내문서, 사진, 음악, 비디오 다운로드같은 기본 디렉토리만 변경 가능하도록 지원하고 있다. 유저폴더안에 ‘.’으로 시작하는 숨김폴더가 얼마나 많고 크기가 더 읽기