UniversityMakeUsChallenge/UMCiOS(12)
-
UMC iOS 10์ฃผ์ฐจ ์ธ๋ฏธ๋
3. ์ค์ํํธ๊ฐ ํ๊ฐ๋์ง ์์ HTTP ํต์ ์ ๋ง์ -> infoPlist์์ ์ค์ ํด์ฃผ์ด์ผ ํ๋ค. (๋น๋๋ถํฐ ์๋ฌ๋จ) - ๋๋ ๋ฐ์ํ๋ ์๋ฌ! ์ฑ์ฅ ๊ฐ๋ฅํ iOS ๊ฐ๋ฐ์๊ฐ ๋๋ ค๋ฉด? ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๊ธฐ๋ณธ์ ์ธ ์๋ ์๋ฆฌ๋ ์๊ณ ์ฐ์ ์ง๋ ์ฃผ์ ๊ฐ๋จํ๊ฒ ์์๋ณธ ์๋ฒ ํต์ ๋ณธ๊ฒฉ์ ์ผ๋ก ์๋ฒ๋ฅผ ๋ค๋ฃจ๊ธฐ ์ ์, ์์๋ณด๋ฉด ์ข์ ๋ด์ฉ์ด๋ค. ๊ฐ์ฅ ์ด๋ ค์ ๋ ๊ณผ์ ์ด ์ฒ์์ผ๋ก ์๋ฒ๋ฅผ iOS์์ ํ์ฉํ ๋์๋ ๊ธฐ์ต์ด ์๋ค. ๋ก๊ทธ์ธ์ ์ฑ์๋น์ค์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ ๊ฐ๋ฐ์ ์ ์ฅ์์๋, ๋ก๊ทธ์ธ ์ดํ์ ๋ท๊ณผ์ ์ด ๋ ์ค์ํ๋ค. ์๊ฐํด๋ณด๋ฉด ์ข์ ๊ฒ - ์ฐ๋ฆฌ๊ฐ ์ดํ ์ฌ์ฉํ ๋ ๋ก๊ทธ์ธ ์ดํ์ ์ด๋ค ์ผ์ด ์ผ์ด๋๋์ง? ์๋ ๋ก๊ทธ์ธ(User defaults), ๋ง์ด ํ์ด์ง ํญ, ๋ก๊ทธ์ธ ์ ๋ณด์ ์ฐ๋๋ ๋ฐ์ดํฐ๋ค, ๋๋ค์, ํ๋กํ ์ปค๋ฎค๋ํฐ ์ดํ์ ๋ด๊ฐ ์์ฑํ..
2022.11.28 -
UMC 9์ฃผ์ฐจ iOS ์ธ๋ฏธ๋
iOS ๊ฐ๋ฐ์ด๋ผ๋ฉด? ์๋ฒ์ ์์ฌ์ํตํ๊ฒ ๋๋ค ํด๋น ๊ท์น์ด ์ง์ผ์ง์ง ์๋๋ค๋ฉด ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ์๋ก ์์๋ค์ ์ ์๋ ๋จ์ด๋ก ๋งํ๋ ์ํฉ == ์์ฌ์ํต์ด ์ด๋ฃจ์ด์ง์ง ์๋ ์ํฉ ๋ง์ฝ์ ์ฌํฌ๋ฆฌ๊ฐ ์ถ๊ฐ๋๋ค๋ฉด? ํ์ค์ด์ ์ฐจ์ด๋ ์์ง๋ง, ์์๋ค์ ์ ์๋ or ๊ณต์ ์ธ ์๋ฆฌ์์์ ๋ํ ๋ฐฉ์๊ณผ ํธํ ์๋ฆฌ์์์ ๋ํ ๋ฐฉ์ - ์ธ์ฐ์ง ๋ง๋ผ - ์ฌ๋ฌ ์ต์ ์ด ์๋ค๋ ์ ๋๋ง ์๊ณ ๊ฐ์ - ์ง๊ธ์ ์ธ์ฐ์ง ๋ง๊ณ , ์ดํด๋ณด์ - ์ค์ ๋ก ๋ํ๋ฅผ ๋๋๋ค๋ฉด ๋ฌธ์ฅ์ ์ฃผ๊ณ ๋ฐ๊ฒ ์ง - ์ด๋ฌํ ๋ฌธ์ฅ์ API ๋ผ๊ณ ํ๋ค (์๋ฒ์ ํด๋ผ์ด์ธํธ๊ฐ ์ฃผ๊ณ ๋ฐ๋ ๋ฌธ์ฅ == API) - ์๋ฒ์ ํด๋ผ์ด์ธํธ, iOS์ ์๋๋ก์ด๋ (๋ค๋ฅธ ํ๋ซํผ) : ๋ค๋ฅธ ํ๊ฒฝ๋ผ๋ฆฌ ์ ๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ์ ๋ - ์ ๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๋ฌธ์ฅ์ API ๋ผ๊ณ ์ดํดํ๋ฉด ์ข๋ค. - REST API -..
2022.11.21 -
UMC iOS ์ธ๋ฏธ๋ 8์ฃผ์ฐจ
9:20 ~ ๋ ์ด์์์ ๋ฐ๊พธ๊ณ ์ถ์ ๋ ์คํ ๋ฆฌ๋ณด๋์ ์กํ์๋ ์คํ ๋ ์ด์์์ ๋์ด์ฌ ์ ์๋ค ํ๋ ์ค์ ์ ๋๊ณ ์จ๋ค. (IBOutlet์ผ๋ก ์ฌ์ฉ) ์ฐ๋ฆฌ์ ๋ชฉํ: ์ค๋ ์ง ๋ทฐ์ ํ๊ณผ ํค์ดํธ ์์๊ฐ์ ๋ณํ์ํจ๋ค ์ ๋๋ฉ์ด์ ์ด ์ ์ฉ์ด ์๋๊ณ (3์ด๊ฐ) ๋ฐ๋ก ์ซ ํด์ง -> ๋ณ๊ฒฝ๋ UI ๋ด์ฉ์ด ๋ฐ์๋์ด์ผ ํ๋ค. -> ๋ณ๊ฒฝ๋์ง ์๋ ๊ฒ : ๋ ์์ธํ๊ฒ ์์๋ณด์ layout์ ์ ๋ฐ์ดํธ๋ฅผ ๋ช ๋ นํ๋ ์ฝ๋๊ฐ ๊ผญ ํ์ํ๋ค ์ ์ ๋๋ฉ์ด์ ์ด ์ ์ฉ์ด ์๋์ง? ํด๋ฉ๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํ๋ค. layoutIfNeeded() ๊ผญ ํ์ฉ! ๋ฐ๋ก๋ฐ๋ก UI ์ ๋ฐ์ดํธ๋ค์ด ์ ์ฉ์ด ๋๋ค. ์ ๋๋ฉ์ด์ ์ ์ฉํ ๋๋, UIView์ animate ๋ฉ์๋๋ฅผ ํ์ฉํ ์ ์๋ค. animate ๋ฉ์๋์๋ ๋ค์ํ parameter์ด ์๋๋ฐ, ๊ทธ๊ฒ ์ค์์ ํ์ํ ๊ฒ๋ง ํ์ฉ..
2022.11.14 -
UMC iOS ์ธ๋ฏธ๋ 7์ฃผ์ฐจ : DB
์ค๋ ๋์ ์ด์์ฒด์ ๋ฅผ ์ ๋ค๋ฃจ๋๊ฒ iOS์์ ๋ง์ด ์ค์ํ๋ค. iOS ์ฌ๋ฌ ๊ธฐ๋ฅ๋ค์ ํ์ฉํ์ฌ ์์ ํ ๋ ๋์์ด ๋ ๊ฒ DBMS ์น๋ช ์ ์ธ ๋จ์ ๋ฐ์ดํฐ๋ฅผ ํ์ผ ํ์์ผ๋ก ๋ค๋ฃฌ๋ค ์ํ ๊ฐ์ ๊ฒฝ์ฐ -> ๋ณด์์ ๋ฌธ์ ๊ฐ๊ฐ์ ๋ฐ์ดํฐ๊ฐ ์กด์ฌ RDBMS ๋ฐ์ดํฐ๊ฐ ํ ์ด๋ธ ํํ๋ก ์กด์ฌ ํ ์ด๋ธ ํ์์ ์คํค๋ง, ํ ์ด๋ธ ๊ฐ์ ๊ด๊ณ์ฑ ๋จ์ํ ๋ฐ์ดํฐ๋ฅผ ํ์ผ ํํ๋ก ์ ์ฅํ๋ DBMS์์ ๋จ์ ์ ๋ณด์ํจ PK : Primary key, ๊ธฐ๋ณธํค FK : Foreign Key, ์ธ๋ํค SQL ํ ์ด๋ธ์ ํตํด ์ํ๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ฑฐ๋ ์์ฑ ๋ฐ ์ญ์ , ์ ๋ฐ์ดํธ๋ฅผ ํ๊ธฐ ์ํ ์ธ์ด ์ ๋ฆฌ ์ํ์ ์ ์ฐ ๋ฐ์ดํฐ์ ๊ฐ์ ๊ฒ๋ค ๋ฐ์ดํฐ๋ค์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ ๋ฌถ์ฌ์๋ค. ์ด๋ฌํ DB๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์์คํ ์ผ๋ก ๊ด๋ฆฌํ๋ค. RDBMS๊ฐ ๋ฌด์กฐ๊ฑด DBMS๋ณด๋ค ์ข์ ๊ฒ์ ..
2022.11.07 -
UMC iOS ์ธ๋ฏธ๋ 6์ฃผ์ฐจ: Thread
DispatchQueue.main() -> main ์ค๋ ๋, UI ๊ด๋ จ ์์ ์ ๋ฐ๋์ ๋ฉ์ธ ์ค๋ ๋์์๋ง! DispatchQueue.global() -> ์ด์ธ์ ๋ค์ํ ์ฒ๋ฆฌ๋ค์ ๋ฐฑ๊ทธ๋ผ์ด๋์์ == global ์ด๋, UI ๊ด๋ จ ์์ ์ main์์! ๋ฐ๋ผ์ global ๋ด๋ถ์์, UI ์ฝ๋๋ง main์ผ๋ก ๊ฐ์ผ๋ค. ๋ฐฑ๊ทธ๋ผ์ด๋์์ ๋๋ฆฌ๋ฉด์, ํด๋น ์์ ์ main์ผ๋ก ๊ฐ์ ธ๊ฐ๋ ๊ฒ ์ด์ ์ ๋์คํจ์น ํ ์ฝ๋๋ฅผ ์ ๋ ๊ฒ ์ฐ๋์ง ์ดํด๊ฐ ๊ฐ๋ค ;;
2022.10.31 -
UMC iOS 5์ฃผ์ฐจ ์ธ๋ฏธ๋ (10/17 ์์์ผ)
https://developer.apple.com/documentation/uikit/uitableviewcell/1623223-prepareforreuse If a UITableViewCell object has a reuse identifier, the table view invokes this method just before returning the object from the UITableView method dequeueReusableCell(withIdentifier:). To avoid potential performance issues, you should only reset attributes of the cell that are not related to content, for exa..
2022.10.18 -
UMC iOS 4์ฃผ์ฐจ ์ธ๋ฏธ๋ (10/10 ์์์ผ)
๊ฐ์๋ก ๋์ฒด ๋ฆ์ ์๊ฐ์ ์ฌ๋ผ์์, ๋ค์๋ ๋ค์๋ค. Table view, Collection view -> Protocol ๋ฏธ์ ์ ๊ฒ ๋! ์ค๋์ ๋ด์ฉ ~ - ๋๋ ๋ฐฅ๋จน์ธ ์ค์ ํ๋ฉด ๊ตฌํํ ๋ table view ํ์ฉํจ ! : Cell ๊ด๋ จํ์ฌ ์ด๋ ค์์ ๊ฒช์๋ ๊ธฐ์ต์ด ๋๋ค.. - ์ฌ์ฌ์ฉ Queue : ๋ค์์ ์ค๋ช - ๋์ผํ ๋ด์ฉ๋ค์ ๋์ดํ ๋ ์ฌ์ฉํ๋ฉด ๋๋ค. - ์ค์ ํ๋ฉด, ์นด์นด์คํก ํ ํ๋ฉด ๋ฑ๋ฑ - Table view : swift option (๋ฉ๋ชจ ์ญ์ , ์นด์นด์ค ์ฑํ ๋ฐฉ ๋๊ฐ๊ธฐ ๋ฑ) - Collection view : paging option (์ดํ ์๋จ์ ๋ฐฐ๋ -> ํ์ด์ง ์ค์์ดํ ๊ฐ๋ฅ) - ๋ ๋ค Scroll view๋ฅผ ์์๋ฐ๊ณ ์๋ค. - table view๋ก ๊ตฌํ ๊ฐ๋ฅํ ๊ฒ์ collection..
2022.10.11 -
UMC iOS ์ธ๋ฏธ๋ 3์ฃผ์ฐจ (10/3, ๊ฐ์๋ก ๋์ฒด)
- present - ๋ชจ๋ฌ์ฐฝ์ฒ๋ผ ์๋์์ ์๋ก ์ฐฝ์ด ๋ฌ๋ค - push - ์ค๋ฅธ์ชฝ์ผ๋ก ํ๋ฉด ์ ํ (์์ธ๋ค) - back ๋ฒํผ ์๋ ์์ฑ - result Label : UI Label, UI๋ก ๊ทธ๋ ค์ง๋ ๋ถ๋ถ -> Label ์ ํ์๋๋ ๊ฐ์ด๋๊น, IBOutlet์ผ๋ก ์ ์ธ - resultString : ๊ทธ๋ฆด ๋ด์ฉ์ ๋ด๋ ๋ณ์ (๋ฐ์ดํฐ ๋ถ๋ถ), var๋ก ์ ์ธ - ์๋ก์ด ๊ฐ์ ์ธ๋ถ์์ resultString์ผ๋ก ๋ฐ์์จ ๋ค์, ํด๋น ๊ฐ์ Label์ Text ๊ฐ์ผ๋ก ๋๊ธด๋ค. ๋ทฐ์ ์๋ช ์ฃผ๊ธฐ์ ๋ง์ฐฌ๊ฐ์ง๋ก ์ฑ์ ์๋ช ์ฃผ๊ธฐ ๊ฐ๋ ๋ ์๋ค! :) SceneDelegate ํ์ผ์ ๊ธฐ๋ณธ์ ์ผ๋ก ์์ฑ๋์ด์๋ ์ฝ๋๋ค ์ํ๋ ๋์๋ค์ ๋ฃ์ด์ ํ์ฉํ๋ฉด ๋จ
2022.10.04 -
AppDelegate & SceneDelegate โ๏ธ
1. AppDelegate https://dev200ok.blogspot.com/2020/05/ios-appdelegate.html https://developer.apple.com/documentation/uikit/uiapplicationdelegate Apple Developer Documentation developer.apple.com @MainActor protocol UIApplicationDelegate Your app delegate object manages your app’s shared behaviors. The app delegate is effectively the root object of your app, and it works in conjunction with UIAppl..
2022.09.27 -
UMC iOS ์ธ๋ฏธ๋ 2์ฃผ์ฐจ 2022.09.26