APP
앱 개발 안드로이드 & iOS 👽
2023
- [iOS] - GCD 3. Queues and Threads
- [iOS] - GCD 2. GCD & Operations
- [iOS] - GCD 0. Info
- [iOS] - GCD 0. Info
- [iOS] - RunLoop 개념
- [iOS] NSAttributedString html
- [iOS] - ARM Architecture
2022
- [iOS] - What's new in TextKit and text views
- [iOS] - WWDC21 Meet TextKit 2
- [iOS] - Hashable
- [iOS] - WWDC19 Advances in UI Data Sources
- [iOS] - WWDC22 Meet Swift Async Algorithms
- Swift 정리 - 23. 프로토콜 지향 프로그래밍
- Swift 정리 - 22. Generics
- Swift 정리 - 21. Extension
- [iOS] - Design App Shortcuts
- [iOS] - Embrace Swift generics
- [iOS] - Design protocol interfaces in Swift
- [iOS] - WWDC22 Hello Swift Charts
- [iOS] - Meet passkeys
- [iOS] - WWDC22 Hello Swift Charts
- [iOS] - WWDC22 What's new in Xcode
- [iOS] - WWDC22 What's new in Swift
- Swift 정리 - 20. Protocol
- Swift 정리 - 19. 타입 캐스팅
- [iOS] - Platforms State of the Union
- [iOS] - Complications and widgets: Reloaded
- Swift 정리 - 18. 상속
- [iOS] - Universal Link
- Swift 정리 - 17. 서브스크립트
- Swift 정리 - 16. 모나드
- Swift 정리 - 15. 고차함수(맵, 필터, 리듀스
- Swift 정리 - 14. 옵셔널 체이닝
- Swift 정리 - 13. 클로저
- [iOS] - KVO
- [iOS] - UIStackView with Dynamic height in UICollectionViewCell
- [iOS] - UIStackView dynamic height, 동적 높이 조절
- Swift 정리 - 12. 접근제어
- Swift 정리 - 10. 프로퍼티와 메서드
- Swift 정리 - 10. 프로퍼티와 메서드
- Swift 정리 - 9. 구조체와 클래스
- Swift 정리 - 8. 옵셔널
- Swift 정리 - 7. 함수
- Swift 정리 - 6. 흐름 제어
- Swift 정리 - 5. 연산자
- Swift 정리 - 4. 데이터 타입 고급
- Swift 정리 - 3. 데이터 타입 기초
- [iOS] - 키보드 prediction bar 없애기
- [iOS] - 키보드가 특정 뷰를 가릴 때 UIScrollView로 뷰를 위로 올리기
- [iOS] - Combine 프레임워크 WWDC 2019 정리
- [iOS] - sizeToFit
- [iOS] - UIApplication.shared.open으로 url 리소스 열기
- Swift 정리 - 2. Swift 시작 전 알아야 할 규칙
- [iOS] - Build Time Analyzing, 빌드 시간 분석하기
- [iOS] - Preview UIViewController in Xcode
- [iOS] - visibleCells in nested UICollectionView
- Swift 정리 - Swift란?
2021
- [iOS] - User Notificaation으로 Local notification 알림 띄우기
- [Swift] - Hashable 관련 이슈
- [iOS] - Diffable Data Source, UICollectionViewDiffableDataSource
- [iOS] - UIGestureRecognizer
- [iOS] - UIPanGestureRecognizer
- [iOS] - panGestureRecognizer를 이용해서 뷰 드래그 구현 삽질 내용
- [iOS] - modalPresentationStyle 비교
- [iOS] - 점선, dashed line 그리기
- [iOS] - IDFA, AppTrackingTransparency ATT란?
- [iOS] - CAGradientLayer, 그라데이션 적용하기
- [Swift] - case let
- [iOS] - iOS 전문가가 되기 위하여
- [iOS] - Xcode Build System 이해하기
- [iOS] - UIStackView Scroll하기
- [iOS] - 5 Tips to Write Clean Swift Code
- [iOS] - iOS Memory Deep Dive
- [iOS] - iOS 13에서의 UICollectionViewCompositionalLayout 예시
- [iOS] - Launch Screen 만들기
- [iOS] - Xcode iOS Framework vs Static Library
- [iOS] - Xcode project.pbxproj conflict와 이후 Xcode의 빌드 에러 해결 과정
- [iOS] - UICollectionViewFlowLayout spacing에 대한 고찰
- [iOS] - UICollectionView에서 horizontal scroll 할 때 주의할 점
- [iOS] - UICollectionView란?
- [Swift] - 변수에 대해 잘 알고 있는 것이 맞습니까?
- [iOS] - 무한 ScrollView 만들기
- [Swift] - Swift로 프로토콜 메서드를 Optional(선택적으로 구현하게)로 만드는 두 가지 방법
- [iOS] - UIViewControllerTransitioningDelegate
- [Objective C] - @synchronized, 동기화
- [iOS] - view의 frame, bounds
- [iOS] - Custom UIViewController Transition, 커스텀 뷰컨트롤러 이동 구현하기 튜토리얼
- [iOS] - Diff 사용해서 UICollectionView data reload하기
- [iOS] - Custom UIViewController Transition, 커스텀 뷰컨트롤러 이동 구현하기
- [Swift] - Ordered Collection Diffing
- [iOS] - UICollectionView 데이터를 업데이트 하기 편한 Diff 알고리즘
- [iOS] - Layout Update
- [iOS] - UITableView performBatchUpdates - row와 section를 일괄적으로 업데이트하기
- [iOS] - didSet 파헤치기
- [iOS] - UITableViewCell내에서 view hide, 내부의 뷰 업데이트하기
- [iOS] - UIVIew isHidden, 감출 때 여백 없애기
- [iOS] - UITableView style, headerView 같이 드래그하기
- [iOS] - Clean Architecture, 직접 해보기
- Swift 개발자를 위한 KISS 원리
- [iOS] - Keyboard dismiss, 바깥을 터치하거나 Return 키를 눌러 키보드 해제하기
- [iOS] - Push 알림, APNS 테스트를 위해 설정해야 하는 것들
- [iOS] - UITableView expand, 접었다 펴서 확장하고 축소하기
- [iOS] - UITableView 드래그 드롭으로 행 순서 바꾸기
- [iOS] - UIScrollView의 ContentOffset, ContentInset, ContentSize
- [iOS] - Table View에서 드래그 드롭하기
- Swift - URLSession
- Swift - Concurrency by Tutorials
- Swift - Documentation, 문서화하기
- [iOS] - 앱의 Life Cycle 관리하기, 생명 주기 알아보기
- [iOS] - 알림 popup 메세지 띄우기
- [iOS] - UILabel 텍스트 터치해서 복사하기
- [iOS] - Singleton Pattern Swift로 구현하기
- [iOS] - Push 알림, Notification 시뮬레이터에서 띄우기
- [iOS] - presentedViewController, presentingViewController의 차이와 사용
- [iOS] - URL Scheme 파싱하기
- [iOS] - Test Code 작성하기
- [iOS] - User Notificaation, 푸시 알림 띄우기
- [iOS] - 앱에 URL Sceheme 적용하기
- [iOS] - Storyboard 사용하지 않게 설정하기
- [iOS] - WKWebView, 웹뷰 사용하기
- [iOS Programming Big Nerd Ranch] 8. Debugging
- [iOS Programming Big Nerd Ranch] 7. 애니메이션 다루기
- [iOS Programming Big Nerd Ranch] 12. Stack Views
- [iOS Programming Big Nerd Ranch] 6. Localization
- [iOS Programming Big Nerd Ranch] 5. Programmatic Views, 뷰를 코드로 생성하기
- [iOS Programming Big Nerd Ranch] 4. View Controller 들
- [iOS Programming Big Nerd Ranch] 2. 텍스트, 글 입력과 Delegation(위임)
- [iOS Programming Big Nerd Ranch] 2. 뷰와 뷰 계층
- [iOS Programming Big Nerd Ranch] 1. 간단한 iOS 앱 만들기
- Swift - 제네릭
- Swift - MVC, MVVM 패턴
- Swift - 클래스의 초기화 위임
- Swift - ARC(Automatic Reference Counting)
- Swift - 모나드
- Swift - Swift의 Closure와 Obj-c의 Block 차이
- Swift - Escaping clousre, 탈출 클로저
- Swift - 클래스와 값 타입의 초기화 위임(initializer delegation)은 왜 다를까?
- Swift - 프로퍼티 감시자가 있는 프로퍼티를 inout으로 전달했을때 항상 willSet didSet이 호출되는 이유
- Swift - method parameter는 mutable/let인가?
- [Objective C로 앱 만들기 - 2. 실행시 앱 로고 띄우기]
- [Objective C로 앱 만들기 - 3. 목록 화면 만들기]
- ViewController 생성과 화면 띄우기, presentViewController와 pushViewController