최근 국방부오픈소스아카데미라는 곳에서 안드로이드 강좌를 듣고 있는데 한 가지 궁금한 것이 생겼다. 뭐냐하면... 안드로이드는 특정 객체를 만들때 이런 방법을 사용한다. 단순 예이므로 문법은 틀림 Menu.Builder menu = new Menu.Builder(); menu.setImage(mainImg); menu.setText(mainText); Menu mainMenu = menu.build(); 보통 이런 경우 그냥 menu객체를 생성해서 setter를 쓰면 되지않나싶었는데... 단점이 있다고 한다. 객체 일관성이 깨지고(객체를 1회의 호출로 생성하지 않고 이미 생성된 객체에 값을 설정) immutable 클래스를 만들 수 없다고 한다.(=스레드 안전성 확보가 어려움) 좀 더 자세한 내용은 나도 ..
프로그래밍/기타
Semaphore vs. Monitors - what's the difference? Monitor A Monitor is an object designed to be accessed from multiple threads. The member functions or methods of a monitor object will enforce mutual exclusion, so only one thread may be performing any action on the object at a given time. If one thread is currently executing a member function of the object then any other thread that tries to call ..
복잡한 선언문을 어떻게 읽어야하나에 관한 글입니다. 헷갈려서 찾아봤더니 좋은글이 있더군요. 번역해서 올려보려 했는데 영어로 읽는게 차라리 읽기 더 편한것 같아 링크만 올려봅니다. C Right-Left Rule(Rick Ord's CSE 30 - UC San Diego) http://ieng9.ucsd.edu/~cs30x/rt_lt.rule.html