SWIFT
-
AVFoundation (feat. AVAudio)Swift 2023. 8. 25. 09:12
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์๋ AVFoundation์ ๋ํด ๊ธฐ์ด๋ฅผ ์์๋ณด๋ฉฐ AVAudio ๋ถ๋ถ์ ์กฐ๊ธ ๋ ๊ฐ๋ ์ ์ผ๋ก ํ๋ณด๋ คํฉ๋๋ค ๐ ์ด์ ํฌ์คํ ์์ ์์ฑ์ ๋ น์ํ๊ณ ํ๋ ์ดํ๋ AVAudio๋ฅผ ์ค์ ์ฝ๋๋ก ๊ตฌํํ๋ฉด์ ๋ค๋ฃฌ์ ์ด ์์ด์! ๊ฑฐ๊ธฐ์ AVFoundation์ ์กฐ๊ธ ๋ ๋ฅํ๊ฒ ๋ค์ ํฌ์คํ ์์ ์๊ธฐํด๋ณธ๋ค๊ณ ํ์ต๋๋ค. ๊ทธ๋ ์ด ์ค๋์ ๋๋ค!!!!! AVFoundation ์ฐ์ AVFoundation์ด ๋ญํ๋ ๋ ์์ธ์ง๋ถํฐ ๊ณต์๋ฌธ์๋ฅผ ๋ณด๋ฉด์ ์ดํด๋ณผ๊ป์. AVFoundation์ ์์ฒญ๊ฐ asset์ผ๋ก ์์ ํ๊ณ , ์นด๋ฉ๋ผ ์ฅ์น๋ฅผ ์ปจํธ๋กคํ๋ฉฐ, ์ค๋์ค๋ฅผ ์ฒ๋ฆฌํ๊ณ , ์์คํ ์ค๋์ค ์ธํฐ๋์ ์ ๊ตฌ์ฑํฉ๋๋ค. iOS์์์ AVFoundation์ Core ํ๋ ์์ํฌ์ชฝ์ ์ํด์์ต๋๋ค. ๋ณด์๋ฉด ์ค๋ ๋ค๋ค๋ณผ Audio..
-
VIPER ๋ฟ์ ๋ณด๊ธฐ (1)VIPER 2023. 8. 2. 23:05
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์๋ ์ค๋๋ง์ ์๋ฆฌ์ฆ๋ก ์จ๋ณผ๊นํด์! ์ฃผ์ ๋ VIPER์ ๋๋ค ๐ ์ํคํ ์ณ๋ค ์กฐ๊ธ์ฉ ๋ด์ผ์ง ๋ด์ผ์ง~ ํ๋ค๊ฐ ํ๋ฒ์ ๋ค ๊ณต๋ถํ๊ณ ์ ๋ฆฌํ๊ธฐ๋ ๋น์ฐํ ๋ฒ ์ฐฐ๊ฒ ๊ฐ์์ ์กฐ๊ธ์ฉ ๋๋ ์ ์๋ฆฌ์ฆ๋ก ๋ฐฐ์๋ณผ๊นํ์ด์. ๊ทธ๋์ ํ์ ๊ด์ฌ์ด ์๋ VIPER ์ํคํ ์ณ์ ๋ํด ์ฐ๋จน ๋๋์ผ๋ก ํ๋ค๊ฐ ๋ฅ ๋ค์ด๋ธํด๋ณด๋ ๊ทธ๋ฐ ์๋ฆฌ์ฆ๋ฅผ ๋ง๋ค์ด๋ณด๋ ค๊ณ ๊ณํ์ค์ด์ ์ค์ค๋ก ์ฝ์ํ๊ณ ์์ต๋๋ค! ๊ณํ ์ ์งํฌ ์ ์๋๋ก ์ง์ง ์ชผ์ค๊ธ์ฉ ๊พธ์คํ ํด๋ณด์ ๋ฏธ๋์ ๋์ผ... ๊ทธ๋ผ VIPER ์์ํด๋ณผ๊ป์ ๐บ๐ป ์ฐ์ VIPER ์ํคํ ์ณ๊ฐ ๋ญ์ง๋ถํฐ ์๊ณ ๊ฐ์ผํ๊ธฐ์ ์ด๋ฒ ํฌ์คํ ์์๋ VIPER ๋๋์ฒด ๋ญ์ง ์ฐ๋จน ๊ฐ๋๋ค! VIPER ๋ ๋์ฒด ๋ญ์ผ? ์ฐ์ VIPER๋ฅผ ๊ฒ์ํ๋ฉด ๋ง์ ๊ธ๋ค์์ ๋์ค๋ ๋ํ์ ์ธ ํ๋ฆ ๊ตฌ์กฐ๋๊ฐ ์์ด์ ์ ๋ ..
-
Swift HTTP Types ์ฐ๋จนํ๊ธฐSwift 2023. 7. 31. 10:14
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์๋ ์ผ๋ง์ ๊ณต๊ฐ๋ Swift HTTP Types๋ผ๋๊ฒ์ ๋ํด ์ฐ๋จน์ ํด๋ณด๋ คํด์. ์ต๊ทผ ์ ํ์์ Swift HTTP Types๋ผ๋ ์๋ก์ด ์คํ ์์ค ํจํค์ง๋ฅผ ๋ง๋ค์๊ณ ํ์ฌ๋ ์ด๊ธฐ ๋จ๊ณ์ด๊ธฐ์ ํ๋ฐํ ์งํ๋๊ณ ์์ต๋๋ค. ํ์ฌ ๋ฆด๋ฆฌ์ฆ๋ ๊ฐ์ฅ ์ต์ ๋ฒ์ ์ 0.2.0์ด๊ณ ์์ง ๋ฉ์ด์ ํ 1.0.0 ๋ฒ์ ์ด ์๋์์ฃ ใ ใ ๊ทธ๋ ๊ธฐ์ ํ์ฌ iOS์์๋ ๊ธฐ๋ณธ ์ ๊ณต๋๋ ํ๋ ์์ํฌ์ ์์ง ์ํ์ง ์์ต๋๋ค๐ฅฒ ์กฐ๋ง๊ฐ Foundation ํ๋ ์์ํฌ์ ๊ฐ์ด ๋ค์ด๊ฐ์ง ์์๊น ์ถ์ธกํด๋ด์! ํ์ฌ๋ ์ฐ๋จนํด๋ณด๊ณ ์ถ์ผ์๋ค๋ฉด SPM์ผ๋ก ์ฌ์ฉํด์ผํฉ๋๋ค! GitHub - apple/swift-http-types: Version-independent HTTP currency types for Swift Versio..
-
์ฑ ์ถ์ - ์์ค(SHORT NEWS) (feat. Mash-Up)iOS 2023. 7. 24. 14:36
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์๋ ์ ๊ฐ ์ด๋ฒ์ ๋์๋ฆฌ์์ ์ถ์ํ ์์ค(SHORT NEWS)๋ผ๋ ์ฑ์ ๋ํด ์๊ฐํด๋ณผ๊นํด์ ๐๐ป ์ ๊น, ์ด๋ค ๋์๋ฆฌ์์ ๊ทธ๋ฐ๊ฑธ ๋ง๋ค์๋๋ฐ? Mash-Up ์ ๊ฐ ์ฌํด 2์๋ถํฐ ๋งค์ฌ์ (Mash-Up)์ด๋ผ๋ IT ๊ฐ๋ฐ ๋์๋ฆฌ์์ 13๊ธฐ iOS ํ์์ผ๋ก ํ๋ํ๊ณ ์๋๋ฐ์! ๋งค์ฌ์ ์ ์ฑ์ฅ์ ์ฆ๊ฑฐ์์ ์๋ ๊ฐ๋ฐ์/๋์์ด๋๊ฐ ๋ง๋ ์๋ก ์ธ๋ฏธ๋๋ ํ๊ณ ์คํฐ๋๋ ํ๊ณ ๊ทธ๋ฆฌ๊ณ ํ๋ก์ ํธ๋ ํ๋ ๋ค์ฌ๋ค๋ฅํ ๋์๋ฆฌ์ ๋๋ค ๐ ํ๋ณด๋ฅผ ๋ ํด๋ณด๊ณ ์ถ์ง๋ง ๋๋ฌด ๋์๋ฆฌ ์๊ฐ๋ง ๊ณ์ํ๋ฉด ํด๋น ํฌ์คํ ์ ์ทจ์ง์ ๋ง์ง ์์๊ฒ ๊ฐ์ ์ด๋ง ์ค์ผ๊ป์. ํน์ ๋งค์ฌ์ ์ด๋ผ๋ ๋์๋ฆฌ๊ฐ ์ด๋ค๊ฑด์ง ๋ ๊ถ๊ธํ๋ค๋ฉด ์๋ ๊ณต์ ํํ์ด์ง๋ฅผ ์ฐธ๊ณ ํด์ฃผ์๋ฉด ๋ ๋ง์ ๋์์ด ๋ ๊ฒ ๊ฐ์์ ๐ ์ถ๊ฐ๋ก, ํ์ฌ 13๊ธฐ์ ํ๋์ด ๊ฑฐ์ ๋๋๊ฐ๋ฉฐ..
-
available ์ฌ์ธต ํ๊ตฌํ๊ธฐSwift 2023. 7. 17. 09:28
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์๋ available์ ๋ํด ์กฐ๊ธ ๋ ์์๋ณด๋ ํ์ต์ ํด๋ณด๋ คํด์ ๐ ๋ฐ๋ก ์ด์ ์ ํน์ ๋ฒ์ ์ ๋ํด ๋ถ๊ธฐ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ๋ค์ ์ดํด๋ณด๋ฉด์ available์ ์ ๊น ์ค๋ช ํ๊ณ ๊ฐ์ ์ด ์์ต๋๋ค. https://green1229.tistory.com/388 ํน์ ๋ฒ์ ์ ๋ํ ๋ถ๊ธฐ ์ฒ๋ฆฌํ๊ธฐ (systemVersion) ์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์๋ ํน์ ๋ฒ์ ์ ๋ํ ๋ถ๊ธฐ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค ๐๐ป ์ผ๋จ ๊ฐ๋จํ ํฌ์คํ ์ด ๋ ์๋ ์์๊ฒ ๊ฐ๋ค์ใ ใ ๋ถ๊ธฐ ์ฒ๋ฆฌ? ๊ฐ๋ฐ์ ํ๋ค๋ณด green1229.tistory.com ํด๋น available์ ์กฐ๊ธ ๋ ์ฌ์ธต ํ๊ตฌํด๋ณด๋ ์๊ฐ์ ๋๋ค! available? ํน์ ํ๋ซํผ ๋๋ OS ๋ฒ์ ์์ ์ฝ๋๋ฅผ ์คํํ๋๋ก ํด์ค๋๋ค. ..
-
ํน์ ๋ฒ์ ์ ๋ํ ๋ถ๊ธฐ ์ฒ๋ฆฌํ๊ธฐ (systemVersion)iOS 2023. 7. 13. 08:50
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค ๐ ์ด๋ฒ ํฌ์คํ ์์๋ ํน์ ๋ฒ์ ์ ๋ํ ๋ถ๊ธฐ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค ๐๐ป ์ผ๋จ ๊ฐ๋จํ ํฌ์คํ ์ด ๋ ์๋ ์์๊ฒ ๊ฐ๋ค์ใ ใ ๋ถ๊ธฐ ์ฒ๋ฆฌ? ๊ฐ๋ฐ์ ํ๋ค๋ณด๋ฉด ๋ฒ์ ๋ณ๋ก ์ฝ๋๋ฅผ ๋ค๋ฅด๊ฒ ๋์์ํค๋ ๊ฒฝ์ฐ๊ฐ ์ข ์ข ์์ต๋๋ค. iOS๋ฅผ ์๋ฅผ๋ค์ด๋ณธ๋ค๋ฉด iOS 17์์๋ถํฐ ์ง์๋๋ Keyframe Animator์ ์ฌ์ฉ์ ํ๊ณ ์ถ์ ๊ฒฝ์ฐ ํ์ฌ ํ๋ก์ ํธ์ ๋ฏธ๋๋ฉ ํ๊ฒ์ ๋ง์ฝ iOS 15๋ผ๊ณ ๊ฐ์ ํด๋ณผ๊ป์. ๊ทธ๋ ๋ค๋ฉด ์ฐ๋ฆฌ๋ ํน์ ํ์ผ์์ ํด๋น ์ฝ๋๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด iOS 17 ์ด์์์๋ ์ ๋์ ๊ทธ ๋ฐ์์๋ ์ ๋์ ์ด๋ ๊ฒ ๋ถ๊ธฐ ์ฒ๋ฆฌ๊ฐ ํ์ํ์ฃ ? ์ ์ด๋ด๋ ์ด๋ป๊ฒ ์ฒ๋ฆฌํ๋ฉด ๋ ๊น์? available ํด๋น ์์ฑ์ ์ด์ฉํด ๋ฒ์ ์ ์ฒดํฌํ๊ณ ๋ถ๊ธฐ์ฒ๋ฆฌ๋ฅผ ํ ์ ์์ต๋๋ค. ์ผ๋จ ๊ฐ๋จํ๊ฒ #available๊ณผ..
-
SwiftUI์์ Tooltip ๊ตฌํํ๊ธฐSwiftUI 2023. 6. 22. 14:33
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ ์ด๋ฒ ํฌ์คํ ์์๋ SwiftUI์์ ๊ฐ๋จํ Tooltip์ ์ง์ ๊ทธ๋ ค๋ณด๋ฉฐ Shape๋ฅผ ๋ค๋ค๋ณผ๊น ํฉ๋๋ค๐๐ป โ ๏ธ ์ฃผ์ - ์์ฃผ ๊ฐ๋จํ Shape๋ฅผ ๋ค๋ค๋ณด๋๊ฒ์ ์ด์ ์ ๋ง์ท๊ธฐ์ ๊ฐ๋จํ ์ ์์! ์ฐ์ ๋๊ฐ์ง๊ฐ ํ์ํฉ๋๋ค. ํ๋๋ ์ผ๊ฐํ ๋ชจ์์ Shape๋ฅผ ๋ง๋๋๊ฒ ๊ทธ๋ฆฌ๊ณ ํ๋๋ ํดํ ํ ์คํธ๊ฐ ๋ค์ด๊ฐ ๋ผ์ด๋๋ Rectangle ๋ทฐ๋ฅผ ๋ง๋๋๊ฒ! ๋จผ์ ์ผ๊ฐํ ๋ชจ์์ ์ฃ์ง๋ฅผ ๊ฐ์ง Shape๋ฅผ ๋ง๋ค์ด๋ณผ๊ป์. Custom Triangle Shape private struct CustomTriangleShape: Shape { private var width: CGFloat private var height: CGFloat private var radius: CGFloat fileprivate i..
-
Beyond Scroll Views (feat. WWDC 2023)SwiftUI 2023. 6. 15. 11:05
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ ์ด๋ฒ ํฌ์คํ ์์๋ SwiftUI์ API๋ฅผ ์ฌ์ฉํด ์คํฌ๋กค ๋ทฐ๋ฅผ ๋ ์ ํ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ณด๊ฒ ์ต๋๋ค๐๐ป ํนํ ์ด์ ๊ณผ๋ ๋ฐฉ์์ผ๋ก ๋ค๋ฅธ ์คํฌ๋กค ๋ทฐ๋ฅผ ์ปค์คํ ํ๊ฒ ์ ์ํ๋๊ฑธ ๋ณด๋ คํด์. ์ฐ๋ฆฌ๊ฐ ์ฒ๋ฆฌํ๋ ๋ง์ ์ปจํ ์ธ ๋ ๊ณ ์ ๋ ํ๋ฉด์ ๋ค ๋ด์ ์ ์์ด ์คํฌ๋กค๋ง์ ๋ง์ด ์ด์ฉํฉ๋๋ค. ์ด๋ฅผ ํตํด ํ๋ฉด์ ๋ง์๊ฒ์ ๋ด์ ์ ์์ฃ . SwiftUI๋ ์คํฌ๋กค์ ์ฑ์ ํตํฉํ ์ ์๋ ๋ช๊ฐ์ง ๋ค๋ฅธ ์ปดํฌ๋ํธ๋ค์ ์ ๊ณตํฉ๋๋ค๐ ์ด๋ฒ ํฌ์คํ ์์๋ ๊ทธ ์ค ํ๋์ธ ScrollView๋ฅผ ๋ณด๊ฒ ์ต๋๋ค! ScrollView์ ๋ํ ๊ฐ๋ต ์ ๋ฆฌ ์คํฌ๋กค ๋ทฐ๋ ์ปจํ ์ธ ๋ฅผ ์คํฌ๋กคํ ์ ์๋ building block์ ๋๋ค. ์คํฌ๋กค ๋ทฐ๋ ์คํฌ๋กค ๋ฐฉํฅ์ ์ค์ ํ๊ณ ๋ด๋ถ ์ปจํ ์ธ ๋ฅผ ๋ด์์ฃผ์ฃ . ํด๋น ์ปจํ ์ธ ๊ฐ ์คํฌ๋กค ๋ทฐ์ ํฌ๊ธฐ๋ฅผ ์ด๊ณผํ๋ฉด ํด๋น ์ปจํ ์ธ ์ค..