본문 바로가기
[android] ConstraintLayout Tutorial [android] ConstraintLayout Tutorial https://developer.android.com/training/constraint-layout/index.html -ConstraintLayout 은 RelativeLayout 과 매우 비슷하게 Flat 한 view hierarchy 를 만들 수 있으면서도. 조금 더 유연하게 사용할 수 있다.그리고 Android Studio Layout Editor 를 통해 쉽게 설정할 수도 있어 편리하다. ( 이것을 key 로 미는 듯 ) -여기서 궁금한 거 하나 더!!Flat view hierarchy 는 알겠는데 그만큼 성능도 좋을까?결론은 성능도 좋다. ( 다른 layout 에 비해 약 10% 이상 빠르다 )https://medium.com/.. 2018. 3. 3.
[Effective Objective-C] #37 블록을 이해하라 [Effective Objective-C] #37 블록을 이해하라 출처 : Effective Objective-C -맥 OS X 내에서 UI 스레드가 멈추면 그 무시무시한 돌고 있는 비치볼을 보게 될 것이다.iOS 에서는 앱이 너무 오랫동안 멈추어 있으면 강제로 종료될 것이다. -멀티스레딩의 핵심 기술은 블록과 GCD(Grand Central Dispatch) 다.블록은 C, C++. 오브젝티브-C 에 렉시컬 클로저(lexical closure)를 제공하는데 이는 매우 유용하다.( 클로저는 함수 내에 함수를 선언할 수 있게 하는 기능이다. 리스프 계열 언어에서 많이 쓰이며, 내부에 선언된 함수는 외부 함수의 파라미터들을 참조할 수 있다. )블록은 코드를 전달하는 기법을 제공한다. -GCD는 스레딩을 이른.. 2017. 10. 1.
[iOS Study] 병렬 프로그래밍 가이드 ( dispatch source ) [iOS Study] 병렬 프로그래밍 가이드 ( dispatch source ) https://developer.apple.com/library/ios/documentation/General/Conceptual/ConcurrencyProgrammingGuide/GCDWorkQueues/GCDWorkQueues.html#//apple_ref/doc/uid/TP40008091-CH103-SW1 About dispatch source -dispatch source 는 low-level system event 를 처리하기 위한 data type 이다. -Timer dispatch source 는 주기적인 noti 를 만든다. -Signal dispatch source 는 UNIX signal 이 도착하면 not.. 2017. 7. 3.
[Java Concurrency] 스레드 풀 활용 [Java Concurrency] 스레드 풀 활용 8.1. 작업과 실행 정책 간의 보이지 않는 연결 관계 - 일정한 조건을 갖춘 실행 정책이 필요한 작업에는 다음과 같은 것들이 있다. 의존성이 있는 작업 스레드 한정 기법을 사용하는 작업 응답 시간이 민감한 작업 ThreadLocal 을 사용하는 작업 - 스레드 풀은 동일하고 서로 독립적인 다수의 작업을 실행할 때 가장 효과적이다. - 특정 작업을 실행하고자 할 때 그에 맞는 실행 정책을 요구하는 경우도 있고, 특정 실행 정책 아래에서는 실행되지 않는 경우도 있다. 다른 작업에 의존성이 있는 작업을 실행해야 할 때는 스레드 풀의 크기를 충분히 크게 잡아서 작업이 큐에서 대기하거나 등록되지 못하는 상황이 없도록 해야 한다. 스레드 한정 기법을 사용하는 작업.. 2017. 4. 27.
[도서 정리] 한가지로 승부하라 [도서 정리] 한가지로 승부하라 - 삶에 대한 완전한 책임을 받아들이는 것이란 삶에서 불만을 느끼는 어떠한 것에 대해서도 변명을 늘어놓거나 다른 사람들을 비난하지 않는다는 것을 의미한다. - 삶의 어느 부분이든 만족스럽지 않으면 "책임은 나에게 있다"라고 말하며 그것을 바꾸도록 부지런히 노력하라. - 자신과 자신의 삶을 조절할 수 있는 감각은 책임을 받아들이는 데서 나온다. - 그랜드 슬램 공식(SLAM) 1. 단순화하라(Simplify) 가능한한 가치가 낮은 일들을 중단함으로써 시간과 삶을 단순화해야한다. 그러면 더 많은 시간이 자유로워져서 정말 중요한 몇 가지 일을 하는 데 할애할 수 있을 것이다. 삶을 단순화하기 위해서는 제로베이스 사고를 가장 강력한 전략의 하나로써 일상으로 학습하고 활용해야 한다.. 2016. 4. 7.
[iOS Study] 저장, 읽기, 앱 상태 [iOS Study] 저장, 읽기, 앱 상태 출처 : 아론 힐리가스의 iOS 프로그래밍 -여기서는 iOS 에서 파일 시스템을 통해 읽고 쓰는 데 필요한 개념과 기법을 배운다. -아카이빙은 iOS 에서 모델 객체를 저장하는 가장 흔한 방법 중 하나이다.객체의 아카이빙은 그 객체의 프로퍼티들을 모두 기록하고 파일시스템에 그 내용을 저장하는 것을 포함한다.언아카이빙(unarchiving)은 아카이브한 데이터로부터 객체를 다시 만든다. -인스턴스들을 아카이브하고 언아카이브해야 할 클래스들은 NSCoding 프로토콜을 반드시 따라야 하며, 두 필수 메소드 encodeWithCoder: 와 initWithCoder: 를 구현해야 한다. -encodeWithCoder: 메시지를 받으면, 전달된 인자인 NSCoder .. 2016. 3. 7.
[Effective Java] 쓸모 없는 객체 참조를 제거하자. [Effective Java] 쓸모 없는 객체 참조를 제거하자. - 자바와 같이 가비지 컬렉션을 자동으로 해주는 언어는 메모리 관리를 따로 해줄 필요가 없다고 생각하기 쉬우나, 이는 틀린 생각이다. GC 의 원리에 대해 정확히 이해하고 메모리 관리를 해주어야 한다. 다만 그 메모리 관리하는 범위가 C, C++ 과 같은 GC 가 없는 언어들에 비해 더 간단할 뿐! - 자바에서도 메모리 누출(memory leak)이 쉽게 발견된다. 메모리 누수가 생기면, 성능저하의 형태로 서서히 나타난다. GC 작업이 증가하거나, 메모리 할당과 회수 횟수가 빈번해지기 때문이다. 심하면 디스크 페이징 현상이 나타나기도 하고, 아주 극단적으로는 OutOfMemoryError 가 발생한다. 메모리 누수의 무서운 점은, 특정 객체.. 2016. 1. 4.
찌든 때들을 제거해보자!! 찌든 때들을 제거해보자!! 1. 신문지 신문지 잉크의 성분은 작은 먼지들이 잘 달라붙는 성질이 있다고 한다. 타일 바닥에 신문지를 물에 적셔 30분 정도 깔아 둔 후, 신문지를 제거하고 마른 걸레로 닦으면 타일에 생긴 찌든 때가 사라진다. 유리창을 닦을 때도 신문지로 닦으면 일반 걸레나 휴지 등에 비해 깨끗하게 된다. 2. 식초 식초는 산성 성분이기 때문에 향균력이 있고, 기름을 분해한다. 알카리성 세제와 과일 얼룩을 제거하기 좋다. 흰 운동화를 제대로 세척하지 않으면 세제로 인한 누런 얼룩이 생기곤 한다. 이런 운동화는 식초 물에 담그면 얼룩이 사라진다. 3. 베이킹 소다 베이킹 소다는 약 알카리성을 띄어 지방산을 함유한 산성 때를 세척하기 좋다. 개수대의 찌든 때를 제거할 떄는 베이킹 소다를 한 컵 .. 2015. 7. 23.
청교도란? ( Puritan ) 청교도란? ( Puritan ) 퓨리턴이라고 부르는 영국 및 미국에서 칼뱅주의의 흐름을 이어받은 개혁파를 이르는 말이다.영국 국교회에 반항하는 세력들이었다. 청교도들은 영국 국교회(성공회) 안의 카톡릭적 요소들을 제거하고자 하였다.그들은 칼뱅주의에 의해 국교회 내에 존재하고 있는 로마카톨릭 제도, 의식의 일체를 배척하며 투철한 개혁을 주장하였다.엄격한 도덕, 주일의 신성화 엄수, 향락의 제한을 주창하였다. 제임스 1세는 스코틀랜드 출생의 왕이었는데, 영국의 의회를 충분히 이해하지 못하고 의회 그 자체를 부정하는 왕권신수설을 주창하여 의회와 충돌을 하게 된다. 청교도는 이에 대한 반발로 권리청원을 왕에게 제출했으나 왕은 의회를 해산시키고 청교도를 탄압하기 시작한다.그를 이은 찰스 1세도 청교도를 지속적으로.. 2015. 6. 7.
반응형