본문 바로가기

분류 전체보기34

Responder Chain HItTest의 목적이 어떤 View가 Touch를 받을지 찾는 것이라면, Responder Chain은 HitTest다음에 일어나는 일으로써 이벤트에 따라 어떤 Responder가 이벤트를 받을지를 정해주는 과정이다. 이 과정이 마치 Chain처럼 연쇄적으로 연결이 되어있다고 해서 Responder Chain이라 불리운다. HitTest로 View를 찾았지만 그 View가 이벤트를 처리를 안할 수도 있기 때문에, 만약 이벤트를 처리를 못했다면 다음 Responder를 상속받은 View로 넘어갈 것이다. 이렇게 이벤트가 처리가 될때까지 Chain으로 이어져 있는것. 만약 끝까지 갔는데도 처리가 안되면 이벤트는 버려짐. UIResponder? Responding하고 Event를 핸들링 하기 위한 추상적인 .. 2022. 3. 29.
iOS에서 일어난 touch가 처리되는 과정. 1. iOS 기기에 터치가 일어남. 2. iOS 하드웨어의 어떤 물리적 위치에 눌려졌는지 확인. 3. UIApplication 객체에게 터치가 일어났다고 알려줌. 4. UIApplication은 눌려진 좌표중에서 가장 화면 위에있는 혹은 가장 깊이 View를 탐색해서 터치가 일어난 View를 찾는다 왜냐하면,우리가 사용하고 있는 기기의 뷰들은 모두 SuperView위에 AddSubView가 된 구조로 많이 이루어져있기 때문에 한 좌표에 여러 뷰가 있을 수 있다. 그 중, 터치가 일어나고 처리되야할 View를 찾는 것. (이 과정을 hitTest라고도 한다.) 이 과정에서는 FirstResponder를 사용하지 않음! 터치 이벤트(UITouch Event)와 뷰는 연결됨! 또한, 우리가 임의적으로 Even.. 2022. 3. 29.
동시성 프로그래밍 가이드 읽어보기. 동시성 프로그래밍을 이해하기 위해 애플의 문서를 읽어보았다. 동시성과 어플리케이션 다자인(Concurrency and Application Design) 과거에는 컴퓨터가 수행할 수 있는 단위 시간당 최대 작업량이 CPU의 클럭 속도에 의해 정해졌었음. 하지만, 기술이 발전하고 프로세서의 설계가 compact해짐에 따라 열과 같은 물리적 제약이 최대 클럭 속도를 제한하기 시작했다. 이 문제를 해결하기 위해 각 칩의 프로세서 코어 수를 늘리기 시작했다 (싱글코어 -> 듀얼코어,쿼드코어 등등) 코어수를 늘리면 CPU속도를 높이거나 칩 크기 등을 바꾸지 않아도 단일 칩에서 초당 더 많은 명령을 실행할수 있었다. 이제 추가된 이 코어들을 잘 활용을 해야하는데... 당연히 계산할 수 있는 코어가 늘었으니 컴퓨터에.. 2022. 1. 27.
네트워크 모델 OSI 7계층, TCP/IP 네트워크모델 네트워크 계층 모델에는 두 가지가 있다. TCP/IP 모델 1960년대 말 미국방성의 연구에서 시작되어 1980년대 초 프로토콜 모델로 공개. 1980년대 초 프로토콜 모델로 공개 현재의 인터넷에서 컴퓨터들이 서로 정보를 주고받는데 쓰이는 통신 규약(프로토콜)의 모음 OSI 7계층 1984년 네트워크 통신을 체계적으로 다루는 ISO에서 표준으로 정한 모델 데이터를 주고받을 때 데이터 자체의 흐름을 각 구간별로 나눠 놓은 것. 이름에서 알수 있다시피 7개의 계층으로 나누어 져있다. - 공통점 1. 계층적 네트워크 모델 2. 계층간 역할 정의 - 차이점 1. 계층 수의 차이 2. OSI는 역할기반, TCP/IP는 프로토콜 기반 3. OSI는 통신 전반에 대한 기준 4. TCP/IP는 데이터 전송.. 2022. 1. 19.