본문 바로가기
[광화문 맛집] 자연별곡 - 생일에는 쿠폰과 함께 하세요! [광화문 맛집] 자연별곡 - 생일에는 쿠폰과 함께 하세요! 생일을 맞아 뭔가 평상시와는 다른 것을 먹고는 싶었는데.. 그렇다고 엄청 비싼 것을 먹고 싶지는 않았다. 그래서.. 평소에 거의 안 가는 뷔페면서 생일이라고 쿠폰도 제공해주는 "자연별곡" 너로 정했다. 자연별곡 광화문점. 4월달에 방문했는데, 봄날의 진미라 해서 특별 메뉴들이 있긴 했지만... 정작 먹고 싶은 메뉴들은, 점심에 방문할 때는 거의 맛볼 수 없다는 것이 함정.. (저녁이나 주말에만 제공된다능..) 입장했을 때 마딱뜨린 이 분수대? 가 인상깊었다. 그런데 이건 분수는 아닌것 같은데 뭐라고 불러야 하냐? 봄이라고 개나리 인테리어. 이런거 좋다. 나의 첫번째 접시. 닭강정이 맛있기를 바랬지만, 살코기가 너무 많은, 그리고 양념이 발라진 겉.. 2019. 7. 14.
늦잠 기념 삼청동 산책.. 그러나 날씨가 별로였엉.. 늦잠 기념 삼청동 산책.. 그러나 날씨가 별로였엉.. 0224 / 0233 늦잠을 자버렸습니다.잠에서 깨어보니 오전 10시 24분...이거 실화냐..? 하면서 회사에 오전 반차를 쓰겠다고 통보(?) 를 합니다. ㅋㅋ 그냥 이 시간을 보내기는 아까워서 혼자서 어딘가 산책을 하다가 회사를 가기로 결정!그래서 회사에서 그리 멀지 않은 삼청동을 타겟으로 정합니다. 그러나 날씨가 흐리멍텅하니 별로였다는것..살짝 우울한 느낌을 품고 혼자서 어슬렁거리며, 뭐 새로 생긴 가게는 없는지..나중에 혼자 노트북 들고가서 오랫동안 작업할만한 아늑한 공간은 없는지 열심히 찾아봅니다. 아쉽게도 그런 카페는 찾지 못하고,그냥 약간 인상적인 뷰나 가게들의 익스테리어만 보고 옵니다. 밥 생각이 1 도 없었는데..지나가다가 "페스츄리 .. 2017. 11. 11.
[iOS] 연락처의 Favorite 정보를 AddressBook 을 통해 가져올 수 있는가? [iOS] 연락처의 Favorite 정보를 AddressBook 을 통해 가져올 수 있는가? http://stackoverflow.com/questions/6917329/find-favorite-contacts-from-the-ios-address-book-api -iOS 의 Favorite 정보는 연락처 앱이 아닌 전화 앱에서 관리가 된다.그래서 탈옥한 환경이 아니라면 다른 app 의 sandbox 에 접근할 수 없어 favorite 정보를 가져올 수 없다. addressbook, Favorite, IOS, Sandbox, [iOS] 연락처의 Favorite 정보를 AddressBook 을 통해 가져올 수 있는가?, 앱, 연락처, 탈옥 2017. 6. 26.
[Java Concurrency] 활동성 최대로 높이기 #1 [Java Concurrency] 활동성 최대로 높이기 #1 - 안정성(safety)와 활동성(liveness) 사이에는 밀고 당기는 힘이 존재하는 경우가 많다. 스레드 안전성을 확보하기 위해서 락을 사용하곤 하는데, 락이 우연찮게 일정한 순서로 동작하다 보면 락 순서에 따라 데드락이 발생하기도 한다. 시스템 자원 사용량을 적절한 수준에서 제한하고자 할 때 스레드 풀이나 세마포어를 사용하기도 하는데, 동작하는 구조를 정확하게 이해하지 못하고 있다면 더 이상 자원을 할당받지 못하는 또 다른 형태의 데드락이 발생할 수 있다. - 자바 어플리케이션은 데드락 상태에서 회복할 수 없기 때문에 항상 프로그램의 실행 구조상 데드락이 발생할 가능성이 없는지 먼저 확인해야 한다. 10.1. 데드락 - 데이터베이스 시스템.. 2017. 5. 1.
[Java Concurrency] 중단 및 종료 #2 [Java Concurrency] 중단 및 종료 #2 7.3. 비정상적인 스레드 종료 상황 처리 - 스레드를 예상치 못하게 종료시키는 가장 큰 원인은 바로 RuntimeException 이다. RuntimeException 은 대부분 프로그램이 잘못 짜여져서 발생하거나 기타 회복 불가능의 문제점을 나타내는 경우가 많기 때문에 try_catch 구문으로 잡지 못하는 경우가 많다. RuntimeException 은 호출 스택을 따라 상위로 전달되기보다는 현재 실행되는 시점에서 콘솔에 스택 호출 추적 내용을 출력하고 해당 스레드를 종료시키도록 되어 있다. - 스레드 풀에서 사용하는 작업용 스레드나 스윙의 이벤트 처리 스레드와 같은 작업 처리용 스레드는 항상 Runnable 등의 인터페이스를 통해 남이 정의하고.. 2017. 4. 26.
[Java Concurrency] 작업 실행 [Java Concurrency] 작업 실행 - 앱이 해야 할 일을 "작업"이라는 단위로 분할하면 프로그램의 구조를 간결하게 잡을 수 있고, 트랜잭션의 범위를 지정함으로써 오류에 효과적으로 대응할 수 있고, 작업 실행 부분의 병렬성을 자연스럽게 극대화 할 수 있다. 6.1. 스레드에서 작업 실행 - 프로그램에서 일어나는 일을 작업이라는 단위로 재구성하고자 한다면 가장 먼저 해야 할 일은 작업의 범위를 어디까지로 할 것인지 정하는 일이다. 원론적으로 보자면 작업은 완전히 독립적인 동작을 말한다. 독립성이 갖춰져 있어야 병렬성을 보장할 수 있다. 작업을 스케쥴링하거나 부하 분산(load balancing)을 하고자 할 때 폭넓은 유연성을 얻으려면 각 작업이 앱의 전체적인 업무 내용 가운데 충분히 작은 부분을.. 2017. 4. 24.
[Effective Java] 스레드 그룹보다는 실행자와 작업을 사용하자. [Effective Java] 스레드 그룹보다는 실행자와 작업을 사용하자. - 자바 1.5 배포판 이후에 java.util.concurrent 패키지가 추가되었다. 여기에는 실행자 프레임워크(Executor Framework) 가 포함되어 있다. 이 녀석을 사용하면 Work queue 를 쉽게 관리할 수 있다. ExecutorService executor = Executors.newSingleThreadExecutor();executor.execute(runnable);executor.shutdown(); // 추가된 task 들의 실행은 보장한다. shutdownNow() 도 있다. 위와 같은 간단한 코드로 쉽게 queue 를 만들어 실행시킬 수 있고, shutdown 시킬 수 있다. - Executo.. 2017. 3. 10.
[Effecitve Java] 리플렉션보다는 인터페이스를 사용하자. [Effecitve Java] 리플렉션보다는 인터페이스를 사용하자. - 리플렉션은 여러모로 강력한 기능을 제공한다. 하지만 이런 강력함은 다음의 대가들을 수반한다. 컴파일 시점에 가능한 타입 확인의 장점이 없어진다. 재귀적인 접근을 필요로 하는 코드는 알아 보기 어렵고 길다. 처리 성능이 늦다. - 사실 리플렉션은 컴포넌트 기반의 어플리케이션 개발 도구용으로 설계되었다. 따라서 일반적으로 런타임에서는 리플렉션을 이용해서 재귀적으로 사용하면 안된다. - 리플렉션이 필요한 복잡한 애플리케이션은 다음과 같다. 클래스 브라우저 객체 조사기 코드 분석 도구 RPC - 리플렉션을 지극히 제한된 형태로만 사용하여 비용이 거의 수반되지 않도록 한다면 리플렉션의 많은 장점을 얻을 수 있다. 예를 들어 컴파일 시점에는 쓸.. 2017. 2. 13.
[Django] 파이썬 웹 프로그래밍 - Django 웹 프레임워크 #2 [Django] 파이썬 웹 프로그래밍 - Django 웹 프레임워크 #1 -프로젝트란 개발 대상이 되는 전체 프로그램을 의미하며,프로젝트를 몇 개의 기능 그룹으로 나누었을 때, 프로젝트의 하위 서브 프로그램을 앱이라 말한다.즉 서브 프로그램인 앱을 개발하고, 이들을 모아 프로젝트 개발을 완성하게 되는 것이다. 이런 개념으로 프로젝트 디렉토리와 앱 디렉토리를 구분하고,코딩하는 파일도 프로젝트 파일인지 앱 파일인지 구분해서 적절한 위치에 저장해야 한다. -중요한 점은 하나의 앱이 여러 개의 프로젝트에 포함될 수 있기 때문에,앱을 한 번만 개발하고 이를 다른 프로젝트에 재사용하여 개발의 생산성을 높일 수 있다.앱 단위로 이들을 모아 프로젝트로 만들고,프로젝트를 모아서 더 .. 2016. 12. 12.
반응형