์ ์ฒด ๊ธ
-
RxSwift - Driver & BehaviorRelayRxSwift 2025. 2. 6. 09:44
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ Driver์ BehaviorRelay์ ๋ํด ์์๋ณด๋ฉฐ ์ฐ๊ด ๊ด๊ณ์ ๋ํด ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค ๐๐ป ๊ทธ์ ์, BehaviorRelay์ ๋ํด ์๊ณ ์๋๊ฒ์ด ๋ ํธ๋ฆฌํด์. RxSwift - BehaviorSubject vs BehaviorRelay์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์ RxSwift์์ BehaviorSubject์ BehaviorRelay์ ์ฐจ์ด์ ๋ํด ํ์ตํด๋ณด๊ฒ ์ต๋๋ค ๐๐ป RxSwift๋ฅผ ์ฌ์ฉํ์ฌ ์ํ๋ฅผ ๊ด๋ฆฌํ ๋ ๋ ๊ฐ๋ ๋ชจ๋ ์์ฃผ ์ฌ์ฉ๋๋๋ฐ์.๋green1229.tistory.com ํด๋น ํฌ์คํ ์ ์ฌ์ ์ ๋จผ์ ๋ณด์๋๊ฒ ์ข์ต๋๋ค ๐DriverDriver๋ RxCocoa์์ ์ ๊ณตํ๋ ํน์ํ Observable ํ์ ์ผ๋ก, ์ฃผ๋ก UI ๋ฐ..
-
RxSwift - BehaviorSubject vs BehaviorRelayRxSwift 2025. 2. 3. 14:25
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์ RxSwift์์ BehaviorSubject์ BehaviorRelay์ ์ฐจ์ด์ ๋ํด ํ์ตํด๋ณด๊ฒ ์ต๋๋ค ๐๐ป RxSwift๋ฅผ ์ฌ์ฉํ์ฌ ์ํ๋ฅผ ๊ด๋ฆฌํ ๋ ๋ ๊ฐ๋ ๋ชจ๋ ์์ฃผ ์ฌ์ฉ๋๋๋ฐ์.๋๊ฐ์ง ๋ชจ๋ Subject์ ๋๋ค. ์ด๋ค ์ฐจ์ด๋ฅผ ๊ฐ์ง๊ณ ์๊ณ , ์ด๋ค ์ํฉ์์ ์ด๋ค๊ฒ์ ์ฐ๋๊ฒ ์ข์์ง์ ๋ํด ์์๋ณผ๊ป์.BehaviorSubjectBehaviorSubject๋ ํ์ฌ ๊ฐ์ ์ ์งํ๋ฉฐ, ์๋กญ๊ฒ ๊ตฌ๋ ํ๋ Subscriber์๊ฒ ํญ์ ์ต์ ๊ฐ์ ๋ฐฉ์ถํ๋ Subject์ ๋๋ค.๋ํ ์ด๊ธฐ ๋ฐ ๊ธฐ์กด ๊ฐ์ด ์กด์ฌํ๊ธฐ ๋๋ฌธ์ UI ์ํ ๊ด๋ฆฌ ์ ์ ์ฉํ๊ฒ ์ฌ์ฉ๋ ์ ์์ฃ . ํน์ง์ผ๋ก๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. 1๏ธโฃ ์ด๊ธฐ๊ฐ ์ง์ 2๏ธโฃ ๊ตฌ๋ ์ ์ต์ ๊ฐ์ ์ฆ์ ์์ 3๏ธโฃ .onNext(value),..
-
Git Config๋ก ๋ค์ค ๊ณ์ ์ค์ ํ๊ธฐGit 2025. 1. 30. 09:46
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ Git Config๋ก ์๋ฒฝํ๊ฒ ๋ค์ค ๊ณ์ ํ๊ฒฝ์ ์ค์ ํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค ๐๐ป ์์ ์ ์ ํฌ์คํ ์ค์ ๋ค์ค ๊นํ ๊ณ์ ์ฐ๋ํ๊ธฐ๋ผ๋๊ฑธ ์์ฑํ์ ์ด ์์ด์! [Github] ๋ค์ค ๊นํ ๊ณ์ ์ฐ๋ํ๊ธฐ์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ ์ด๋ฒ ํฌ์คํ ์์๋ ๋ค์ค ๊นํ ๊ณ์ ์ ํ PC์์ ์ฐ๋ํ๋ ๋ฐฉ๋ฒ์ ๋ํด ํฌ์คํ ํด๋ณด๊ฒ ์ต๋๋ค๐ ๊ฐ์ธ ๊นํ ๊ณ์ ๊ณผ ํ์ฌ์์ ์ฌ์ฉํ๋ ๊นํ ๊ณ์ ์ด ๋ค๋ฅผ ๊ฒฝ์ฐ ๊ฐ๊ฐ ํ๋กgreen1229.tistory.com ์ฌ๊ธฐ์๋ config๋ฅผ ์ด์ฉํ์ฌ ๋ณ๊ฒฝํด์ฃผ๋๋ฐ ํต์ฌ์ ๊ฐ์ธ ๊นํ ๊ณ์ ๊ณผ ํ์ฌ ๊นํ ๊ณ์ ์ด ๊ณต์กดํ ๋ ํ PC์์ ์ด ๋์ ๋ํด SSH key๋ฅผ ์ด์ฉํด ๊ฐ์ ํ๊ฒฝ๊ณผ ์ํฉ์ ๋ง๊ฒ ์ ์ ํ ๊ณ์ ์ผ๋ก ์์ ๋๋๋ก ์ค์ ํ๋๊ฒ์ ์์๋ดค์ต๋๋ค. ๊ทธ๋์, ..
-
Property Observers (willSet, didSet)Swift 2025. 1. 27. 12:17
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ ์ฐํด๋ฅผ ๋ง์ดํ์ฌ Swift ๊ธฐ์ด๋ฅผ ํ๋ฒ ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํฉ๋๋ค!๊ทธ ์ค์์ Property Observers์ willSet๊ณผ didSet์ ๊ฐ๋จํ๊ณ ์ดํดํ๊ธฐ ์ฝ๊ฒ ํบ์๋ณด๊ฒ ์ต๋๋ค ๐๐ป Swift๋ ๊ฐ์ฒด์งํฅ๊ณผ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ์ ์ฅ์ ๋ชจ๋๋ฅผ ๊ฐ์ง๊ณ ์๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ฃ .์ฌ๊ธฐ์ Property Observers๋ Swift์ ๊ธฐ๋ฅ ์ค ํ๋๋ก ํ๋กํผํฐ์ ๊ฐ ๋ณํ๋ฅผ ๋ชจ๋ํฐ๋งํ๊ณ ๊ทธ์ ๋ฐ์ํ๋ ์ฝ๋๋ฅผ ์์ฑํ ์ ์๊ฒ ๋์์ค๋๋ค. ๊ทธ๋ผ ๋ณธ๊ฒฉ์ ์ผ๋ก ์์๋ณด์์ฃ ๐Property Observers?์ฐ์ Property Observers๊ฐ ๋ฌด์์ธ์ง ์์๋ณผ๊น์?Property Observers๋ ํ๋กํผํฐ์ ๊ฐ์ด ๋ณ๊ฒฝ๋ ๋ ํธ์ถ๋๋ ํน๋ณํ ๋ฉ์๋์์. Swift์์ ๋๊ฐ์ง Pro..
-
DynamicTypeSize๋ก ์ ๊ทผ์ฑ ๋์ด๊ธฐ (feat. SwiftUI)SwiftUI 2025. 1. 24. 16:42
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ SwiftUI์์ DynamicTypeSize๋ก ์ ๊ทผ์ฑ์ ๋์ด๋๊ฒ์ ๋ํด ํ์ตํด๋ณด๊ฒ ์ต๋๋ค ๐๐ป ์ฐ์ DynamicTypeSize์ด ๋ญ์ง ์์์ผ๊ฒ ์ฃ ? DynamicTypeSize๋ก ์ ๊ทผ์ฑ ๋์ด๊ธฐSwiftUI์์ ์ ๊ณตํ๋ ๋์ ํ ์คํธ ํฌ๊ธฐ ์กฐ์ ์์คํ ์ด๋ผ๊ณ ๋ณผ ์ ์์ด์.์ฌ์ฉ์์ ์ ๊ทผ์ฑ ์ค์ ์ ๋ฐ๋ผ ์ฑ์ ํ ์คํธ ํฌ๊ธฐ๋ฅผ ์๋์ผ๋ก ์กฐ์ ํ ์ ์๊ฒ ํด์ฃผ์ฃ . iOS 15.0 ๋ถํฐ ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ฉฐ, ์ ์๋ ์๋์ ๊ฐ์์. enum DynamicTypeSize ์ด๊ฑฐ ํ์ ์ด๋ฉฐ ์ผ์ด์ค๋ค๋ก๋ ์๋์ ๊ฐ์ด type size์ accessibility type size๋ก ๊ตฌ๋ถํ ์ ์์ต๋๋ค. .xSmall // ๊ฐ์ฅ ์์ ํฌ๊ธฐ.small // ์์ ํฌ๊ธฐ.m..
-
SwiftUI - ScrollBounceBehaviorSwiftUI 2025. 1. 20. 19:47
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์ SwiftUI์ ScrollBounceBehavior์ ๋ํด ๊ด๋ จํ์ฌ ์์๋ณด๋ ค ํฉ๋๋ค ๐๐ป ์๊ฐ๋ณด๋ค ๊ฐ๋จํ์ง๋ง ์ ์ฉํ ๊ธฐ๋ฅ์ด๋ ๊ฐ๋ณ๊ฒ ๋ด๋ณผ๊น์? ScrollBounceBehavior?iOS 16.4 ์ด์์์๋ถํฐ ์ฌ์ฉ ๊ฐ๋ฅํ ํ์ ์ผ๋ก, ์คํฌ๋กค ๊ฐ๋ฅํ ๋ทฐ๊ฐ ์ปจํ ์ธ ๋์ ๋๋ฌํ์ ๋ ํ์ด์ค๋ฅด๋ ๋ฐฉ์์ ์ ์ํฉ๋๋ค. struct ScrollBounceBehavior ํด๋น ๊ตฌ์กฐ์ฒด ํ์ ์๋ ์๋ ์ธ๊ฐ์ง๋ก ๊ธฐ๋ณธ ์ ์๊ฐ ๋์ด ์์ด์. 1๏ธโฃ automatic - ๊ธฐ๋ณธ๊ฐ์ผ๋ก ํ๋ซํผ๊ณผ ์ํฉ์ ๋ฐ๋ผ์ ์ ์ ํ ๋ฐ์ด์ค ๋์์ ์๋์ผ๋ก ๊ฒฐ์ 2๏ธโฃ always - ์ปจํ ์ธ ํฌ๊ธฐ์ ์๊ด์์ด ํญ์ ๋ฐ์ด์ค ํจ๊ณผ๋ฅผ ๊ฐ์ง3๏ธโฃ basedOnSize - ์ปจํ ์ธ ํฌ๊ธฐ์ ๋ฐ๋ผ ๋ฐ์ด์ค ํจ๊ณผ๊ฐ ๊ฒฐ์ ์ฌ๊ธฐ์ ..
-
SwiftUI ์คํฌ๋กค ๋ทฐ์ ์๊ณ๊ฐ ์ฝ์งํ๊ธฐSwiftUI 2025. 1. 16. 19:00
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐์ด๋ฒ ํฌ์คํ ์์๋ ์ด๋ ํ ํ์ต ์ ๋ณด ์ ๋ฌ๋ณด๋ค๋ ๊ทธ๋ฅ ์ฝ์ง์ ํ๋ ๊ณผ์ ๊ณผ ๊ทธ๊ฑธ ๊ธฐ๋กํด๋ณด๋ ํฌ์คํ ์ ๋๋ค ๐๐ป SwiftUI์ ์คํฌ๋กค ๋ทฐ์ ์๊ณ๊ฐ ์ฝ์งํ๊ธฐ์ฐ์ , ์๋ ์ฝ๋๋ฅผ ๋ด๋ณผ๊น์? import SwiftUIstruct ContentView: View { var body: some View { ScrollView { VStack(spacing: 50) { Rectangle() .fill(.red) .frame(height: 100) Rectangle() .fill(.green) .frame(height: 100) Rectangle()..
-
Recap 2024ํ๊ณ 2025. 1. 13. 18:53
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ๊ธ์ผ์ ํฌ์คํ ์ 2024๋ ํ๊ณ ์ ๋๋ค.์ฌ์ค, ์กฐ๊ธ ๋ฆ์์ด์ ๐ฅฒ์๋ ์๋ 1์ 1์ผ ๋์๋ง์ ๋ ์ค๋ฅด๋ ํด๋ฅผ ๋ฐ๋ผ๋ณด๊ณ ์์ ํ ํด๋ฅผ ๋์๋ณด๊ณ ์๋ก์ด ์์์ ๋ค์งํ๋ ํ๊ณ ๊ธ์ ์์ฑํ๋๋ฐ์.์ด๋ฒ์๋ ํ๊ณ์ผ์ง ๋ชฐ๋ผ๋ ๊ฐ์ธ์ ์ผ๋ก ์ฐ๋ง, ์ฐ์ด์ ์ ์ ์์ ์ ๋๋ก ๋ง์ด ๋ฐ๋นด๊ธฐ์ ์กฐ๊ธ? ๋ฆ์ ๊ฐ์ด ์์ง๋ง ๊ทธ๋๋ ํ๊ณ ๋ฅผ ์์ฑํด๋ด์ ๐ฅน(์ ์ฐ๋ง, ์ฐ์ด์ ๋ฐ๋นด๋์ง ๋ง์ง๋ง์ ์๊ธฐํ ์์ ์ ๋๋ค.) ๊ฐ๋ฐ์๊ฐ ๋์ ์ฐ๋ 4๋ฒ์งธ ํ๊ณ ์ธ๋ฐ ์๋ ์๋ ๊ทธ๋ฌ์ง๋ง 2024๋ ํ ํด์ 2025๋ ์ฒซ ์์์ด ์ ํํ ๋ง์ ์๋ฏธ๊ฐ ์์์ต๋๋ค. ์๊ฐํด๋ณด๋ ๋งค๋ฒ ํ๊ณ ์์ ์๋ฏธ๊ฐ ์๋ค๊ณ ํ๋๋ฐ, ๊ทธ๋งํผ 1๋ ์ ๊ฝ์ฐจ๊ฒ ์ด์๋ค๊ณ ์๊ฐํฉ๋๋ค โบ๏ธ ์ด๋ฒ 2024๋ ํ๊ณ ๋ ๋น์ฐํ๊ฒ๋ ๋ฌดํ์ ๋ฌด๊ทผ๋ณธ์ ํ๊ณ ์ ๋๋ค ๐ ์ด๋ป๊ฒ ํ๊ณ ํด๋ณผ๊น..