WWDC 2015 Performance on iOS and watchOS Introduction 앱의 성능에 대한 범주는 너무 광범위하다. 그렇기 때문에 몇가지 범주로 나누어 해당 영역에서 앱의 성능을 개선하기 위한 구체적인 전략을 제공하려 한다. 1. Why should i think about performance? 성능에 대해 생각해야 하는 이유는 무엇 일까? 성능을 다른말로 요약하자면 하나의 기능이다. 성능은 사용자에게 앱에서 뛰어난 경험을 제공하기 위한 핵심 요소이며, 앱의 코드를 작성하는동안 항상 염두에 두어야한다. 앱의 반응성이 좋아 유저의 입력에 기다리지 않고 즉시 반응 하고 이를통해 유저가 정보에 액세스 하거나 상호 작용을 한다면 유저와 긍정적 신뢰 관계를 구축 할수 있게 된다. (음....
Concurrent Programming With GCD in Swift 3 모든 코드를 main thread에서 실행한다면 새로운 프로젝트를 만들때 해당 응용 프로그램은 기본으로 메인 스레드를 갖게된다. 메인 스레드는 UI에 표시될 모든 코드를 실행하는 역할을 한다. 메인 스레드에 데이터 변환이나 이미지 처리와 같은 큰 작업을 하게된다면 UI에 문제가 생기게된다. UI가 느려지거나 멈추는 상황이 발생할 수 있다. 이러한 문제를 방지하기 위해서는 애플리케이션에 동시성 개념을 도입해야한다. 동시성을 사용하면 애플리케이션의 여러 작업을 동시에 할수 있게 된다. 동시성을 사용하기 위해서 새로운 스레드를 생성하고 새로운 스레드에 작업을 시키게된다. Concurrency 하지만 동시성을 도입할 경우 스레드 안정성..
Apple Watch, URLConnection 관련내용은 정리하지 않은 글입니다! WWDC Networking with NSURLSession 📌 배경지식 URLSession 주로 웹에서 HTTP 콘텐츠를 다운로드 하는데 사용되는 네트워킹 API이다. 인증 및 기타 중요한 이벤트 처리에 사용할 수 있는 delegate methods가 있다. 가장 큰 특징은 앱이 백그라운드 다운로드 API를 통해 실행되지 않는 동안에도 네트워킹을 할수 있다는 것 이다. HTTP는 서버에 요청하고 응답하여 데이터를 가져오는 것이 핵심인데, HTTP 자체는 clear text로 전송되기 때문에 불안정하다. (clear text는 암호화되지 않은 상태로 텍스트를 전송하거나 저장한다. 따라서 clear text를 표시하기 위한..