안녕하세요. 밀쿄입니다. 요새 MVVM 포스팅이 많아지네요. 아무래도 Rx포스팅을 준비 단계에 있어서 더 그런것 같습니다 오늘은 KVO로 MVVM을 만들어볼려고 합니다. 일단 그럴려면 KVO가 무엇인가 대해서 알아봅시다 https://developer.apple.com/documentation/swift/cocoa_design_patterns/using_key-value_observing_in_swift Using Key-Value Observing in Swift | Apple Developer Documentation Article Using Key-Value Observing in Swift Notify objects about changes to the properties of other obje..
안녕하세요. 밀쿄입니다. 어제 글 말미에 적었던 MVVM과 UITableView에 대해서 보충설명을 해보고자 합니다. 예시로 이것을 만들어보고자 합니다. (UISearchBar_Example에서 썼던 테이블뷰 맞습니다.) 일단 간단하게 생각부터 해봅시다, 테이블뷰가 있죠? 테이블뷰셀이 있죠? MVVM이니까 테이블뷰의 뷰모델이 있겠죠? 셀 역시 마찬가지로 테이블뷰셀 모델이 있습니다. 그리고 데이터가 들어가 있는 모델이 있을껍니다. 여기까지 쉽게 말하면 테이블뷰 - 테이블뷰 모델 테이블셀 - 테이블뷰셀 모델 모델 (사실 이 글은 모델이 주인공이 아니라서 모델부분은 다소 틀릴 수 있습니다.) 여기까지는 쉽죠? 일단 모델부터 구성하겠습니다. 끝입니다. 테이블뷰부터 구성해보겠습니다. 이렇게 하면 테이블뷰 모양은 ..
안녕하세요. 밀쿄입니다. 오늘은 type(of: )에 대해서 알아볼려고 합니다. 사실 너무 간단해서 어떻게 설명할까 고민했는데... 스위프트에는 제네릭이란 놈이 존재합니다. 제가 포스팅에서 다룬적은 없지만.. 간략하게 다루고 넘어가겠습니다. 저렇게 받은 인자 타입만 다르다고 매번 함수를 새로 작성해야하면... 끝도 없을 것 같습니다. 그래서 나온게 제네릭이라고 생각하면 됩니다. 제네릭을 쓰면.. 짠! 깔끔하죠? 사실 print를 저렇게 쓸 일이 없겠지만 매번 들어오는 타입이 다를때 이렇게 사용할 수 있습니다. 자 근데 저렇게 제네릭을 썻는데 난 저 놈의 타입을 알아야하는 상황이 있어.. 라고 할 때 쓸 수 있는게 type(of: ) 입니다. 이렇게 타입이 나옵니다. 사실 저런 거말고도 이렇게 구조체나 클..
안녕하세요. 밀쿄입니다. Rx시리즈 기획한다고...포스팅이 없네요.. 조만간 Rx시리즈로 돌아...(지키지 못할 약속 같네요) 여튼 잡담은 여기까지 하고.. 오늘은 Swift로 간단하게 화씨를 섭씨로, 섭씨를 화씨로 변환해봅시다. 여태까지는 계산식을 써서 변환해왔는데요. 간단하게 바꿀 수 있는 방법이 있습니다. 허무하네요. 이렇게 사용하면 됩니다. 정리하면.. 이런 느낌인거죠. 사실 이렇게 쓰는 것보다 실제 앱에선 어떻게 동작할 지 고민해봤는데.. 1) 사용자가 섭씨로 볼껀지 화씨로 볼껀지 선택한다. 2) 선택한 단위를 저장한다. 3) 저장한 단위로 변환하여 출력한다. 대충 이렇게 사용될 것 같은데요. 일단 그러면 선택사항이 들어가므로 enum을 만들어 줍니다. (분기 타기가 쉬워지니까요) 자 이제 이 ..
클래스와 구조체 비교 공통점 값을 저장하기 위한 프로퍼티 정의 가능 기능을 제공하기 위한 함수 정의 가능 subscript 문법을 이용해 특정 값에 접근하기 위한 subscript 정의 가능 초기 상태를 설정할 수 있는 initializer 정의 가능(단 struct는 기본 제공하나 class는 기본 제공하지 않음) 기본 구현에서 기능 확장 가능 표준 기능을 제공하기 위한 프로토콜 채택(conform) 가능 차이점(클래스만 가능) 상속 타입캐스팅 Deinitializer Reference counting 구조체와 열거형은 값타입 구조체 struct Student { var name: String var age: Int } let student = Student(name: "홍길동", age: 23) pr..
안녕하세요. 밀쿄 입니다. SwiftUI가 연재가 중단되었던 게 Combine 때문이었는데.. 그 콤바인 공부하다가..Rx가 자료가 많으니 Rx를 해야지 하고 긴 시간이 지났네요. 긴 목표로는 Combine을 보고 포스팅을 시작하겠습니다. 먼저 RxSwift란 말부터 보겠습니다. Swift는 iOS개발자라면 다 아는 그 스위프트 맞습니다. Rx는 Reactivex 입니다. Reactivex는 Reactive Extension 이구요. 즉, RxSwift는 ? Swift에서 Reactive Programming을 사용하기 위한 Extension? 정도로 넘어가겠습니다 중요한건 Reactive 즉 Reactive Programming이 무엇인지 알아야겠죠? ~~Programming 어디서 많이 들어보셨지 않..
포스팅을 자주 써야지하면서 그러지 못하고 있네요. 제 깃허브 보시면 자주 업데이트 됩니다. 조만간 RxSwift도 작성할 예정이랍니다? 오늘은 Frame 과 Bounds에 대해서 알아봅시다, Frame과 Bounds는 UIView의 프로퍼티이므로 UIView문서에서 찾아보실 수 있습니다. https://developer.apple.com/documentation/uikit/uiview UIView - UIKit | Apple Developer Documentation Animate changes to one or more views using the specified duration, delay, options, and completion handler. developer.apple.com frame -..
안녕하세요. 밀쿄입니다. 오늘은 UISearchController에 대해서 알아보겠습니다. SwfitUI 더 나가기 전에 UIKit에 있는 컨트롤러란 컨트롤러는 다 만져보고 있는 것 같네요. 같이 볼 애플 문서는 여기 https://developer.apple.com/documentation/uikit/uisearchcontroller UISearchController - UIKit | Apple Developer Documentation A set of methods that let you update search results based on information the user enters into the search bar. developer.apple.com 설명한 필요한 소스는 여기 https..
- Total
- Today
- Yesterday
- 자료구조
- UIViewControllerRepresentable
- Queue
- ios
- replaceNil
- 알고리즘
- 현업이그리운
- BBIK
- 결합연산자
- Just
- MVC
- combine
- 삨
- AutoLayout
- Apple
- programmers
- SEQUENCE
- ErrorHandling
- swift
- 스위프트
- 텔큐온
- 스유
- 스택뷰
- 스위프트유아이
- SwiftUI
- iOSCombine
- compactMap
- CombineLatest
- 유니온파인드
- 콤바인
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |