| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- Combine
- ChatGPTCodex
- RxSwift
- Combine입문
- Codex사용법
- replaceNil
- removeDuplicates
- ios
- 코딩에이전트
- PassthroughSubject
- RxSwift에서Combine
- CURSOR
- FilteringOperator
- hugging
- Cocoapods
- compactMap
- Publisher
- AI개발도구추천
- autoLayout
- CurrentValueSubject
- Combine개념
- Swift
- SwiftCombine
- iOS기술블로그
- 라이브러리
- tryMap
- 비동기
- Codex리뷰
- priority
- RxSwift비교
- Today
- Total
목록iOS (25)
Tong's Blog
안녕하세요.지난 3편에서는 Combine의 변환(Transforming) Operator를 중심으로map, flatMap, compactMap, scan 등을 RxSwift와 비교하며 살펴봤습니다.이번 4편에서는 그 다음 단계로, 값을 걸러내고 흐름을 제어하는 데 핵심이 되는 필터링(Filtering) Operator를 정리해보려고 합니다. 필터링(Filtering) Operator란?필터링 Operator는 Publisher가 방출한 값 중 일부만 통과시키는 역할을 합니다. 실무에서는 다음과 같은 상황에서 거의 필수적으로 사용됩니다.검색어가 바뀌지 않았는데 API가 다시 호출되는 문제 방지특정 조건을 만족할 때만 UI 업데이트첫 이벤트 / 마지막 이벤트만 사용너무 잦은 입력 이벤트 제어1. filter..
안녕하세요.지난 글에서는 Combine Publisher 종류를 정리하고, 각각 RxSwift의 어떤 컴포넌트와 대응되는지 살펴봤습니다.이번 3편에서는 실무에서 가장 많이 사용되는 Combine Operator 들을 정리하고, RxSwift의 동일 기능과 어떤 차이가 있는지 비교해보려고 합니다. Operator란?Publisher에서 전달되는 값들을 변환 / 필터링 / 조합 / 제어하는 중간 처리 단위입니다.즉, 이벤트 흐름을 원하는 형태로 가공하여 Subscriber가 필요한 데이터만 받을 수 있도록 만들어주는 역할입니다. 이번 포스팅에서는 그중에서도 Transforming Operator 중심으로 설명과 비교를 해보겠습니다. 변환(Transforming) Operator란?이름 그대로, '들어온 값을..
안녕하세요.지난 글에서는 Combine의 기본 개념과 Publisher / Subscriber, 그리고 RxSwift와의 대응 관계를 간단히 살펴보았는데요.이번 글에서는 Combine에서 자주 사용하는 Publisher 종류와, 이에 대응되는 RxSwift 컴포넌트를 함께 비교하면서 정리해보려고 합니다.실제로 개발을 하다 보면 "어떤 Publisher를 써야 하지?", "RxSwift에서 쓰던 그 기능은 Combine에서는 뭐지?" 이런 고민이 자연스럽게 생기기 때문에 이번 내용이 앞으로의 글을 이해하는 데도 큰 도움이 될 것 같아요. Publisher란 무엇인가?Combine에서 Publisher는 값을 만들어 내는 생산자입니다.하지만 모든 Publisher가 동일한 방식으로 값을 내보내는 건 아니고,..
안녕하세요.최근에 iOS 개발을 하면서 RxSwift 에서 벗어나 Combine 과 Swift Concurrency 를 사용해 개발을 하면서도개념과 RxSwift 와 비교해서 모르고 사용하는 느낌이 들어서 공부하면서 내용을 정리하고자 포스팅을 남깁니다. 그럼 공식문서부터 보면서 Combine 의 개념부터 알아보겠습니다. https://developer.apple.com/documentation/combine Combine | Apple Developer DocumentationCustomize handling of asynchronous events by combining event-processing operators.developer.apple.comThe Combine framework provid..
안녕하세요.지난 포스팅에서는 Cursor 에 iOS 를 동작시킬 수 있도록 세팅하는 방벙을 설명드렸는데요https://tong94.tistory.com/32 [iOS] Cursor 에 iOS(Xcode) 프로젝트 연동하기안녕하세요.오랜만에 포스팅을 올리네요. 오늘은 iOS 프로젝트를 연동하는 법에 대해 포스팅하려고 합니다. 최근 여러 ChatGPT 를 비롯해 여러 AI Tool 들이 발전하면서 AI Coding Agent 도 많이 나타나고tong94.tistory.com이번 포스팅에서는 Cursor 의 기능 중 하나인 Rules 설정하는 법을 알려드리려고 합니다. 우선 Cursor Rules 가 무엇인지부터 알아야겠죠?https://docs.cursor.com/en/context/rules Cursor ..
안녕하세요.오랜만에 포스팅을 올리네요. 오늘은 iOS 프로젝트를 연동하는 법에 대해 포스팅하려고 합니다. 최근 여러 ChatGPT 를 비롯해 여러 AI Tool 들이 발전하면서 AI Coding Agent 도 많이 나타나고 발전했는데요Github Copliot, windsurf, Cursor, Claude Code, (아직 써보진 못했지만) ChatGPT Codex.. 등 그 중에서도 저는 회사에서 사용하고 가장 범용적이고 iOS 에서 사용성이 (그나마) 높은 Cursor 를 선택했습니다. Cursor 설치https://cursor.com/downloads Downloads | Cursor - The AI Code EditorDownload Cursor for Windows, macOS, and Linu..
안녕하세요.오늘은 UITextView 를 사용할때 링크를 탐지하고 링크를 클릭할수 있도록 하려고 합니다. 우선 UITextView 를 그려보겠습니다.import UIKitclass ViewController: UIViewController { let textView: UITextView = { let textView = UITextView() textView.text ="""안녕하세요.https://naver.com안녕히계세요.""" textView.textColor = .black textView.font = .systemFont(ofSize: 30) textView.translatesAutoresizingMaskIntoConstrai..
안녕하세요. 1년만에 포스팅이네요. 최근에 SwiftUI 를 공부하고 작업하며 나온 이슈들에 대해 포스팅을 해보려고 합니다. 우리가 특정 View 가 나타나고 나서 실행되길 원하는 동작들이 있겠죠? (Ex: 네트워크 요청) 기존 UIKit 에서는 View Life Cycle 에 있는 method 들인 viewWillAppear 나 viewDidAppear 를 override 해서 사용했었죠? import UIKit class ViewController: UIViewController { override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) // 네트워크 요청 print("View Will Appear"") } } 그..