컴퓨터 입장에서, 네트워크 처리는 정말 느린 작업이다. (빠른 작업의 예로는 파일을 읽고, 쓰는 작업 등이 있다.) User interaction : 네트워크 처리작업의 느림에 있어, 사용자의 입장을 고려하여야 한다. Concurrency (동시성) : 네트워킹이 진행되는 동안에 User interaction이 되어 즉각적인 반응을 보여야 한다. GCD : 동시성이 필요한 작업들을 안전하게 수행시킬 수 있게 도와준다. URLSession : iOS에서 네트워킹을 할 수 있도록 도와주는 class 공부공부 해보자!
Animation : 시간에 따라, 뷰의 상태가 바뀌는 것. - 딱딱한 앱의 사용성을 부드럽게 만들고, 사용자의 몰입을 유도하기 위해 사용한다. - 너무 과하게 사용하면 오히려 사용성을 해칠 수 있다. - 시작 값, 끝 값, (진행되는)시간 값을 가진다. 처음 viewDidLoad에서 애니메이션을 넣어주고 싶은 항목(사진에서는 label 두 개)의 초기 위치를 정해준다. (사진에서는 view.bounds.width 즉, 화면 바깥으로 설정해두었다) 이후, 뷰가 나타나는 시점인 viewDidAppear에서 움직이려는 위치와 그동안 진행시킬 애니메이션, 애니메이션 진행되는 시간을 정한다. (사진에서는 0.3초동안 움직이는 애니메이션과 0.5초동안 바운싱이 들어간 애니메이션이 있다. card flip은 별도의..
List 형식을 보여주기 위해 보통 Table View를 쓰지만, 열이 하나밖에 없기때문에 한 행안에 여러개를 넣을 수는 없다. --> Collection View를 이용하면 여러개를 넣을 수 있다! UICollectionViewLayout : 사용자가 직접 객체를 구성해낼 수 있게 해주는 UIView UICollectionViewFlowLayout : 기본으로 제공되는 UIView Table View를 만드는 것과 같이, 프로토콜을 적고 그에 맞게 제약조건을 지켜 만든다.