TIL(Today I Learned)
3월 29일(월)
학습내용
- Kahoot
- OAuth 소비자는 사전에 서비스 제공자에게 요청토큰을 받급 받아야한다.
- OAuth 소비자는 사용자에게 인가받은 기능에만 접근할 수 있다.
- SNS로그인은 OAuth를 활용한 서비스의 일부이다.
- OAuth는 특정 기능의 접근을 허가받기 위한 인가 프로토콜이다.
- URLCache는 디스크 캐시를 지원한다. (NSCache는 메모리 캐시만 지원한다.)
- 국제화 축약표현은 i18n, 지역화 축약 표현은 L10N이다.
- UIKit환경에서 지역화할 수 있는 요소는 날짜형식, 화폐단위, 이미지 등이 있다. (Data assets은 아니다.)
- Xcode에서 제공하는 도구로, 접근성 기능을 시험해볼 수 있는 도구는 Accessibility Inspector이다.
- Core Graphics
- Graphics Context은 도화지 역할을 하며, UIGraphicsGetCurrentContext()를 통해서 객체를 얻을 수 있다.
- @IBDesignable을 통해서 draw 결과를 스토리보드에서 바로 확인할 수 있다.
- Path는 context.beginPath, context.drawPath, context.closePath의 순서로 메서드를 호출함으로써 그릴 수 있다.
- 두 선의 접합부분의 모양변경은 setLineJoin을 통해서 가능하다.
- 선 끝부분의 모양 변경은 setLineCap을 통해서 가능하다.
- Transform(변형)는 회전, 크기조절, 비율조절이 가능하며, CGAffineTransform을 이용한다.
- 회전 각도는 radian으로 표현한다.
- UIView의 transform 프로퍼티를 설정함으로써 뷰 모양을 변형 할 수 도 있다.
문제점/고민한점
- OAuth의 요청토큰과 접근토큰의 차이는?
- Interface Builder와 Storyboard의 차이는?
- @IBInspectable 이란?
- ClipsToBounds란?
- View와 Layer의 차이점은?
해결방법
- 요청토큰은 소비자가 사용자에게 접근권한을 인증받기 위해 필요한 정보가 담겨있으며 후에 접근 토큰으로 변환되는 토큰이다. 접근토큰은 인증 후에 사용자가 서비스 제공자가 아닌 소비자를 통해서 보호된 자원에 접근하기 위한 키를 포함한 값이다.
- Interface Builder는 Drag & Drop으로 사용자 인터페이스를 구성할 수 있도록 하는 도구고, Storyboard는 Interface Builder 내에서 뷰의 관계 및 뷰 전환 등을 저장하고 있는 영역이다.
- @IBInspectable을 Property 앞에 붙이면 Xcode의 Interface Builder의 Inspector panel에서 수정할 수 있게 된다.
- ClipsToBounds는 subview들이 부모뷰 bound 바깥으로 삐져나올수 없게 하는 프로퍼티이다.
- Layer는 View의 프로퍼티이다. 그리고 Layer는 sublayers 프로퍼티를 갖고 있다. 실제로 화면에서 그려지고 눈으로 보이는 것들은 View의 Layer라고 한다. Layer를 통해 View의 애니메이션을 나타낼 수 있다.
참고
https://ko.wikipedia.org/wiki/OAuth
https://www.raywenderlich.com/10317653-calayer-tutorial-for-ios-getting-started