 Apple Lover Developer & Artist

영속적인 디자인에 현대의 공감을 채워넣는 공방입니다

반응형

 Apple 72

Lecture 6 : Multitouch

Overview 어떻게 멀티 터치를 지원하도록 구현할 수 있을까요? 어떻게 사람들이 제스처 기능을 사용할 수 있도록 구현할 수 있을까요? Gestures 이전까지는 UIView가 그려지는 과정은 살펴보았지만 이번에는 어떻게 터치 이벤트를 가져올지 고민해볼 것입니다. 개발자는 모든 터치 이벤트를 합법적으로 가져올 수 있습니다. 개발자는 (touch down, moved, up 등) raw 한 터치 이벤트를 인식할 수 있습니다. 혹은 사전에 정의된 제스처 방식으로 해석하여 반응할 수 있습니다. 제스처에는 swipe, pinch, pan, tap 등이 존재합니다. iOS 에서 모든 제스처는 UIGestureRecognizer로 표현됩니다. 이 클래스는 손가락의 움직임으로 부터 제스처를 인식해주는 것이다. 이 ..

[Challenge] Cocoa Pods

Overview 코코아팟은 Swift 및 Objective-C 코코아 프로젝트의 종속 관리자입니다. 87,000개 이상의 라이브러리가 있으며 3백만 개 이상의 앱에서 사용되고 있습니다. 코코아팟은 당신의 프로젝트를 우아하게 확장하는데 도움을 줄 수 있습니다. Install 코코아팟은 루비로 제작되었으며 맥OS에 기본적으로 내장되어있는 루비를 사용하여 설치할 수 있습니다. 기본 루비를 사용하는 것을 추천합니다. 기본 루비 설치를 사용하려면 gem을 설치할 때 관리자 권한을 사용해야 합니다. 코코아팟 사용해보기! 원하는 경로에 iOS 프로젝트를 생성합니다. 프로젝트를 생성한 디렉토리에서 pod init을 진행하면 Podfile 이 생성됩니다. 사용하고 싶은 의존성 라이브러이 이름과 버전을 다음과 같이 명시해..

[Swift] 공식문서 씹어먹기: Package Manager

Overview Swift Package Manager은 도구인데 Swift 코드의 배포를 관리해줍니다. 다운로드, 컴파일, 의존성 연결 작업을 자동화시키기 위해 스위프트 빌드 체계에 포함되었습니다. 패키지 매니저 기능은 스위프트 3.0 이상 버전에 포함되어있습니다. Conceptual Overview 이 섹션에서는 Swift Package Manager의 기능에 기반이 되는 기본적인 개념에 대해 설명합니다. Modules Swif는 코드를 모듈로 구성합니다. 각 모듈은 namespace를 구성하며 접근 제어를 설정합니다. 접근 제어를 설정하는 과정은 모듈 외부에서 어떤 코드가 사용될 수 있는지에 관한 부분입니다. 프로그램은 하나의 모듈 내부에 코드를 갖고 있거나 의존성(dependencies)을 통해 ..

[Challenge] GCD

Overview 스레드는 실행중인 코드의 흐름을 관리해준다. 과거의 컴퓨팅 환경에서는 모든 코드가 단일 스레드 환경에서 실행되었지만 iOS와 같은 현대적인 운영체제에서는 여러가지 스레드가 여러 코드의 흐름을 동시에 실행시킬 수 있도록 지원해준다. (더군다나 오늘날의 멀티 코어 프로세서를 사용하면 스레드는 서로 다른 코어에서 실행될 수 있으나, 현재 사용하고 있는 컴퓨터가 싱글 코어일지라도 CPU 가상화를 통해 마치 동시에 실행되는 것처럼 보이는 환상을 준다) iOS 에서는 모든 사용자 인터페이스와 연관된 코드를 실행시킬 때에 main 스레드를 활용한다. Grand Central Dispatch (GCD) Grand Central Dispatch (GCD)는 iOS에서 제공하는 기술이며 시스템 큐에서 di..

[Challenge] 간단한 네트워크 통신에 대해 탐구해보자!

Overview 휴대폰에 설치되어있는 어플리케이션을 살펴보면 모두 네트워크 통신을 사용한다. 네트워크 통신 중에는 여러가지 외적인 변수가 개입될 수 있다. 예를 들어 iOS 앱이 서버에 무언가를 요청했는데 서버가 조금 늦게 처리해서 응답해줄 수도 있고 네트워크 환경에 따라 처리된 결과가 늦게 아이폰으로 도착할 수도 있을 것이다. 데이터를 송수신하는 것을 처리하는동안 사용자가 어플리케이션에 아무런 조작도 할 수 없고 기다려야 한다면.... 한국인으로써 매우 유감스러운 상황이 발생하게 될 것이다. 오늘은 iOS 상에서 간단한 네트워크 통신을 다뤄보며 병행성을 다뤄보는 것이 목표이다. Basic 앱에서 네트워크 기능을 구현하기 전에 간단하게 네트워크가 동작하는 컨셉에 대하여 살펴볼 필요가 있다. HTTP롸 H..

반응형