본문 바로가기
[ios] 권장되는 permission guide [ios] 권장되는 permission guide http://techcrunch.com/2014/04/04/the-right-way-to-ask-users-for-ios-permissions/ -Pre-permission dialog 를 사용한다. iOS 의 permission 수락 다이어로그를 띄우기 전에 요청할 권한에 대해 설명하는 UI 를 가진 dialog 를 사용한다. -Double System-Style Dialog Pre-permission dialog 를 system style 로 만드는 것이 좋다. 친절한 설명이 곁들여진 곳에서 Access 를 허용한 후 실제 ios 에서 Don’t allow 를 선택한 경우는 3%. 두 번 물어보는 것이 짜증나는 액션일 수는 있지만, 확실하게 allow.. 2017. 10. 11.
[Java Concurrency] 명시적인 락 13.1. Lock 과 ReentrantLock - Lock 인터페이스는 암묵적인 락과 달리 조건 없는(unconditional)락, 폴링 락, 타임아웃이 있는 락, 락 확보 대기 상태에 인터럽트를 걸 수 있는 방법 등이 포함돼 있으며, 락을 확보하고 해제하는 모든 작업이 명시적이다. - public interface Lock{ void lock(); void lockInterruptibly() throws InterruptedException; boolean tryLock(); boolean tryLock(long timeout, TimeUnit unit) throws InterruptedException; void unlock(); Condition newCondition(); } - Reentran.. 2017. 5. 5.
[Java Concurrency] 중단 및 종료 #1 [Java Concurrency] 중단 및 종료 #1 - 작업이나 스레드를 안전하고 빠르고 안정적으로 멈추게 하는 것은 어려운 일이다. 더군다나 자바에는 스레드가 작업을 실행하고 있을 때 강제로 멈추도록 하는 방법이 없다. 대신 인터럽트(interrupt)라는 방법을 사용할 수 있게 되어 있는데, 인터럽트는 특정 스레드에게 작업을 멈춰달라고 요청하는 형태이다. 실제 상황에서 특정 스레드나 서비스를 "즉시" 멈춰야 할 경우는 거의 없고, 강제로 종료하면 공유되어 있는 여러 가지 상태가 비정상적인 상태에 놓일 수 있기 때문에 스레드 간의 협력을 통한 접근 방법이 올바르다. 다시 말해, 작업이나 서비스를 실행하는 부분의 코드를 작성할 때 멈춰달라는 요청을 받으면 진행 중이던 작업을 모두 정리한 다음 종료하도록.. 2017. 4. 25.
[Java Concurrency] 작업 실행 [Java Concurrency] 작업 실행 - 앱이 해야 할 일을 "작업"이라는 단위로 분할하면 프로그램의 구조를 간결하게 잡을 수 있고, 트랜잭션의 범위를 지정함으로써 오류에 효과적으로 대응할 수 있고, 작업 실행 부분의 병렬성을 자연스럽게 극대화 할 수 있다. 6.1. 스레드에서 작업 실행 - 프로그램에서 일어나는 일을 작업이라는 단위로 재구성하고자 한다면 가장 먼저 해야 할 일은 작업의 범위를 어디까지로 할 것인지 정하는 일이다. 원론적으로 보자면 작업은 완전히 독립적인 동작을 말한다. 독립성이 갖춰져 있어야 병렬성을 보장할 수 있다. 작업을 스케쥴링하거나 부하 분산(load balancing)을 하고자 할 때 폭넓은 유연성을 얻으려면 각 작업이 앱의 전체적인 업무 내용 가운데 충분히 작은 부분을.. 2017. 4. 24.
[iOS Study] 디버그 도구 [iOS Study] 디버그 도구 출처 : 아론 힐리가스의 iOS 프로그램 -Xcode 5 CPU와 메모리 사용량에 관한 정보를 한눈에 제공하는 디버그 측정기(debug gauges) 가 있다. -디버그 네비게이터는 프로그램 실행 중에(실시 정지나 중단된 경우가 아닌) CPU 와 메모리 측정기를 보여준다. -이 측정기들은 실제 프로그램이 실행 중인 하드웨어를 기반으로 측정한다.Mac 은 iOS 장비보다 가용 램이 훨씬 많고 CPU 코어도 대개 더 많다.따라서 iOS 시뮬레이터에서 프로그램을 실행하면 CPU 와 메모리 사용량은 매우 작게 나타날 것이다. -CPU 디버그 측정기는 편집기 패널에 CPU 리포트를 표시한다. Percentage Utilized 해당 장비가 가진 CPU 코어 수에 상대적인 CPU .. 2016. 2. 26.
[도서/정리] 하루 굶고 하루 먹기 - Chap 2. 하루 굶고 하루 먹는 격일 단식 [도서/정리] 하루 굶고 하루 먹기 - Chap 2. 하루 굶고 하루 먹는 격일 단식 출처 : 하루 굶고 하루 먹기 -히포크라테스 왈 : 약보다는 단식으로 고통을 치유하라 -자가포식은 자기 살을 먹는다는 뜻으로 복부지방을 조금씩 뗴어 먹는 것 또는 세포내 폐기물 처리라는 대략적인 의미로 해석될 수 있다.자가포식은 지방분해와 더불어 생체 내에서 여러 가지 임무를 수행한다. -하루는 먹고 하루는 먹지 않으면서 운동을 조금 더 많이 하는 식으로 섭식에 휴식을 가지면자가포식 작용이 활성화된다.인간을 비롯하여 모든 포유동물에게 없어서는 안 될만큼 꼭 필요한 것은 근육세포가 에너지 공급을 위해 간에 있는 당(글리코겐)이 아니라 체지방을 이용하도록 전환시키는 일이다.이렇게 세포 내의 폐기물을 청소해주면 세포의 수명이.. 2015. 8. 25.
구두 영어 능력 中 단어(Vocabulary) 능력 향상 방법 구두 영어 능력 中 단어(Vocabulary) 능력 향상 방법 http://www.vocabulary.co.il/expand_vocabulary/ 우리는 읽은 것의 약 20%를 기억하고,들은 것의 30% 를 기억하며,본 것은 40%를 기억하고,직접 말한 것은 50%를 기억하며,직접 행한 것은 60% 를 기억한다. 그래서 이 모든것, 읽고, 듣고, 보고, 말하고, 행하는 것을 조합하면약 90% 기억할 수 있다는 통계적 결과가 있다. * 많은 분야의 많은 글들을 읽어라. 더 많은 분야의 더 많은 글을 읽을수록 효과적이다. *단어를 안다는 것은 컨텍스트를 안다는 것을 의미한다. 단어는 혼자 쓰이지 않는다. 주변의 컨텍스트를 함께 알아야 그 의미를 정확히 파악할 수 있다. *구두 언어는 문자 언어에 비해 그 복.. 2015. 1. 9.
SSD 스펙에 대한 정보 SSD 스펙에 대한 정보 참조 : 다나와 읽기 속도, 쓰기 속도 SSD 의 읽기, 쓰기속도는 순차읽기/쓰기와 랜덤 읽기/쓰기로 나누어진다.순차 읽기는 용량이 큰 데이터를 읽어 올 때 ( 연속된 데이터 ) 를 이야기하며,랜덤 읽기는 파일 크기가 작은 데이터들을 읽어올 때 ( 연속되지 않은 데이터 ) 를 이야기한다. 보통 사용자들은 컴퓨터를 사용할 때 읽기를 주로 사용하기 떄문에 읽기속도가 더 중요한 스펙으로 볼 수 있다. 2014년 3월 기준 중상위권에 속하는 속도는 읽기 쓰기 각 500MB/s 대역이라고 볼 수 있다. 랜덤 읽기 속도 랜덤 읽기 속도는 IOPS ( Input/output Operation Per Second ) 로 따로 표시한다.읽기 속도보다는 쓰기 속도 기준으로 체감이 많이 차이난다고 .. 2014. 4. 17.
[android] intra app communication method statistics. ( localbroadcastmanager, eventbus, otto ) android, intra app communication method statistics. ( localbroadcastmanager, eventbus, otto ) Android, eventbus, intra app communication, Listener, local broadcast listener, localbroadcastmanager, Other, OTTO, otto ), statistics, [android] intra app communication method statistics. ( localbroadcastmanager, 안드로이드, 앱 내부 통신, 통계 2013. 11. 4.
반응형