목록공부 노트(Swift) (28)
Weekoding
이번에 "Sign in with Apple"를 구현할 일이 있었는데, 생각보다 애를 먹었다. 정확히는 revoke token부분이 Login with Kakao ID와는 다르게 엄~청 어려웠다. 다음번엔 좀 더 능숙하게 구현하기 위해 한번 정리하고 가려고 한다. 이번 포스팅은 Sign in with Apple 뿐만 아니라, 다른 SNS 로그인 API에서도 널리 통용되는 개념들을 간단히 정리해볼 것이다. GET / POST Session / Cookie / Token OAuth 2.0 📂 Get / Post 두 방식은 HTTP 메소드 방식들이다. 즉, 클라이언트가 서버에 요청할 때 사용되는 방식이다. GET POST외에 여러 방식이 더 존재한다. GET : 데이터를 URL 주소의 끝에 파라미터로 포함되어 ..
궁금증이 생겨 싱글톤 패턴을 Swift에서 어떻게 구현하는지 알아보려고 한다. 이 포스팅은 싱글톤 패턴에 대한 기본적인 지식은 전제로 하여 개념은 최대한 간단히 짚고 구현 방법도 같이 알아볼 것이다. 📂 Singleton Pattern? : 최초 한 번만 메모리를 할당(static)하고, 해당 메모리에 인스턴스를 생성하여 사용하는 패턴. 즉 ,하나의 인스턴스만 존재한다. 이후 각각의 클래스에서 하나의 인스턴스에 접근이 가능하다. Singleton 장점 • 메모리 낭비를 방지할 수 있다.(한 개의 인스턴스만 생성하므로) • 전역 인스턴스이기 때문에 다른 클래스간 공유가 쉬움 • 인스턴스가 절대적으로 하나만 있음을 보증해야 할 때 유용함 • 두 번째 이용부터는 로딩 시간이 현저하게 줄어들어 효율 면에서 뛰어..
오늘은 헷갈리는 개념들을 총 정리 하는 시간을 가져보도록 할 예정이다. 한 묶음씩 포스팅 하면 찾기도 번거로울 것 같고 간단하게 정리해 보려고 한다. 주인공들은 아래와 같다. UIColor / CGColor CGSize / CGPoint / CGRect frame / bounds 📂 UIColor / CGColor background 속성이 CALayer에 속해있냐, UIView에 속해있냐에 따라 받는 값의 클래스가 다르다. 일단, Layer가 해당 View에 속해 있다면, View.backgroundColor를 바꿀 때 Layer.backgroundColor도 자동으로 함께 바뀐다. 반대로 설정해도 마찬가지. 그런데 왜 CGColor / UIColor라는 개념이 나누어져 있으며, 위와 같이 같은 'ba..
Xcode에서 View를 생성하게 되면, 기본적으로 아주 뾰족한 모서리를 가진 직사각형이 생성된다. 그러나 우리가 실제 사용하는 앱에서 그런 직사각형 모양의 View를 찾아보기가 힘들다. 이러한 처리들은, UIView의 메소드나 프로퍼티가 아닌 직전 포스팅을 통해 공부했던 CALayer의 프로퍼티에 접근하여 구현할 수 있다. 기본 View의 모습을 좀 더 깔끔하게 만들어 줄 수 있는 CALayer의 기능들을 몇 가지 알아보도록 하겠다. class ViewController: UIViewController { @IBOutlet weak var navySquare: UIView! @IBOutlet weak var greenSquare: UIView! @IBOutlet weak var clearSquare: ..
Interface Builder를 사용하거나 Code를 이용하여 화면을 그릴 때, UIView가 그 주인공이 된다. 이런 저런 코드를 찾아보다 보면 CALayer라는 개념도 발견하게 될 것일터. 두 객체에 대한 속성 모두 분명히 우리가 보이는 화면에 적용이 되는 모양인데.... 둘은 무슨 차이일까?? /* 신기하게도, View에 적용하는 backgroundColor는 UIColor를 받지만, Layer에 적용하는 backgroundColor는 CGColor를 받는다. UIColor와 CGColor 차이점은 다음 시간에.. */ self.view.backgroundColor = .blue self.view.layer.backgroundColor = .init(red: 0, green: 102, blue: ..
Property Observer가 궁금해서 Property까지 공부해 놓고 프로젝트 때문에 Observer에 대한 공부가 늦었다. 이것도 결국은 하나의 핑계니까 바로 시작해보자 📂 Property Observer Property observers observe and respond to changes in a property’s value. Property observers are called every time a property’s value is set, even if the new value is the same as the property’s current value. → 프로퍼티의 값의 변화를 Observe하고, respond한다고 한다. 값이 set될 때마다 호출되며, 새로운 값이 현재 값과..