안녕하세요 Hani입니다. 뭐 하나 깊게 공부하려 하니 결국 최상위 클래스인 NSCoder를 알아야겠더라구요 🥺 required init?(coder aDecoder: NSCoder) required init?(coder: NSCoder) 커스텀 뷰 만들거나 인코딩 디코딩 할 때 이런 거 정말 많이 봤죠? 요기 있는 NSCoder를 말한 거예욥. NSCoder는 다른 객체의 아카이빙과 배포를 가능하게 만들어 주는 객체를 위한 추상 클래스입니다. 음? 그럼 다른 객체의 아키이빙과 배포를 가능하게 만들어 주는 구체적인 타입은 뭔데 😡 Foundation 프레임워크에서는 NSCoder를 서브클래싱한 NSKeyedArchiver, NSKeyedUnarchiver같은 타입을 제공해주고 있어요. 그리고 NSCode..
안녕하세요 Hani입니다. 이번에는 About the App Launch Sequence 아티클을 정리하면서 앱 아이콘을 눌러서 앱을 켤 때 어떤 일이 일어나는지 알아볼 거예요. ☺️ 과정을 사진으로 보면..! 어후.. 복잡한 단계를 거쳐야 하나봐요. 🥺 차근차근 알아봅시당. 🧐 🥕 launch의 첫 번째 과정은 main이 실행되는 거예요. 엥 main 만든 적 없는데 import UIKit @main class AppDelegate: UIResponder, UIApplicationDelegate { } extension UIApplicationDelegate { public static func main() } 짜롼 Xcode에서 프로젝트를 생성하면 알아서 AppDelegate.swift에 @main을..
안녕하세요 Hani입니다. 이번에는 About the UI Restoration Process 아티클을 정리해볼 거예요. 앱이 launch 되는 과정에서 앱의 State Restoration이 일어난다고 하는데 이걸 몰라서!! 🥺 정리할 거예요. ☺️ 🚨 이 아티클은 iOS 13.2 까지 적용되는 내용을 담고 있어요. 🚨 앱을 끌 때 상태를 보존하는 것을 State Preservation, 앱을 켤 때 전에 보존된 상태를 복원하는 것을 State Restoration 이라구 합니다. 위 그림은 애플리케이션이 launch되고나서 restore되는 시간까지 메서드가 호출되는 순서를 보여줍니다. 하나씩 알아볼게요 ☺️ 🥕 AppDelegate의 willFinishLaunchingWithOptions 메서드를 ..
안녕하세요 Hani입니다. 이번에는 NotificationCenter에 대하여 알아볼 거예요. 🥰 먼저 MVC 구조를 한 번 살펴봅시당. MVC 아키텍쳐 패턴에서 컨트롤러는 모델을 직접 참조하여 업데이트할 수 있지만 모델은 컨트롤러를 직접 참조하면 안 됩니다. 두 객체의 tightly coupled한 상태는 상호 의존성을 만들기 때문에 재사용성, 유연함에 악영향을 주기 때문이에요. 🥺 그럼 모델은 데이터 업데이트가 끝났다는 사실을 어떻게 컨트롤러에게 통지할 수 있을까요? 🧐 NotificationCenter는 모델과 컨트롤러 사이의 인터페이스 역할을 하여 두 객체를 loosely coupled하게 만들 수 있습니다. NotificationCenter는 Foundation 프레임워크에 있는 클래스로, 포스..
안녕하세요 Hani입니다. 이번에는 stackView에 대하여 알아보겠습니다. stackView 오토레이아웃은 뷰 사이의 Constraints를 통해 각 뷰의 위치(leading, top, bottom, trailing)와 크기(width, height)를 생성하는 방법입니다. 하지만 화면에 보여줄 Content들이 늘어나면 그만큼 복잡하면서도 오류가 없는 Constraints를 만들기 위해 애를 써야 합니다..! 그래서 한번 stackView라는 걸 써볼 거예요. stackView는 수평이나 수직 방향의 뷰들을 구성할 때 오토레이아웃 구성하기 편하게 만들어주는 뷰입니다. stackView는 컨테이너처럼 UIView 객체들을 담을 수 있는 arrangedSubviews 저장 프로퍼티를 가지고 있는데, 이..
- Total
- Today
- Yesterday
- WWDC16
- 부스트캠프 6기
- 코딩대회
- CPU와 Memory
- WWDC19
- WWDC17
- test coverage
- CompositionalLayout
- HIG
- WWDC21
- mach-o
- MeTal
- State Restoration
- 포드 풀커슨 알고리즘
- IOS
- rxswift
- 다익스트라 시간복잡도
- 최단경로 알고리즘
- Testable
- 최단경로 문제
- 벨만포드 알고리즘
- 컴퓨터 추상화
- 최단경로문제
- 네트워크 유량
- observeOn
- 최대 매칭
- 네트워크 플로우
- 강한 순환 참조
- 에드몬드 카프 알고리즘
- 벨만포드 시간복잡도
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |