UniversityMakeUsChallenge(23)
-
UMC 4th DemoDay ํ์ฌ ์ฐธ์ฌ
UMC Demoday 2023. 08. 24 Thursday ๐ฅณ # ๋ฌธ๋, ์ฌ๋๋ง์ธ๋ 2F https://github.com/DeveloperAcademy-POSTECH/MC2-Team9-MUSE GitHub - DeveloperAcademy-POSTECH/MC2-Team9-MUSE: Apple Developer Academy 1๊ธฐ MC2 ํ๋ก์ ํธ Apple Developer Academy 1๊ธฐ MC2 ํ๋ก์ ํธ. Contribute to DeveloperAcademy-POSTECH/MC2-Team9-MUSE development by creating an account on GitHub. github.com Muse ํ๋ก์ ํธ ๊ธฐํํ ๋, ๋ค์ฑ๋ก์ด ์์ ์จ๋ฒ ์ปค๋ฒ ์์ ๋๋ฌธ์ ๋ฐฐ๊ฒฝ์ด๋ ๋ฉ์ธ ์ปฌ๋ฌ ์ก์ ๋ ..
2023.08.26 -
[4์ฃผ์ฐจ ํ์] References ๐ฉ๐ป
1. CocoaPod vs Swift Package Manager https://sohyeonkim-dev.tistory.com/135 [Swift] CocoaPod vs Swift Package Manager 1. CocoaPod vs Swift Package Manager Podfile์ ํตํด ํจํค์ง ์ค์น๋ฅผ ํ๋ ๊ฒ๊ณผ, XCode ๋ด๋ถ์์ ํจํค์ง ๋งค๋์ ๋ฅผ ํตํด ์ค์นํ๋ ๊ฒ ๋์ ์ฐจ์ด(์ฅ๋จ์ )๊ฐ ๊ถ๊ธํ๋ค. ๋ฌด์์ ํจํค์ง ๋งค๋์ ๊ฐ ๋ ์ข์ง! ๋ณด๋ค๋, sohyeonkim-dev.tistory.com 2. SnapKit vs AutoLayout & Pros and cons of using 3rd-Party https://sohyeonkim-dev.tistory.com/136 [Swift] SnapKit vs..
2023.01.27 -
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 -
2022 CMC & CX DemoDay (2022. 11. 19 ํ ์์ผ)
2022 CMC & CX DemoDay ํ์ฌ ํ๊ธฐ UMC ๋์ค์ฝ๋๋ฅผ ํตํด CMC DemoDay ํ์ฌ์ ๋ํด ์ ํ ์ ์์๋ค! festa๋ฅผ ํตํด ์ ์ฒญํ ํฐ์ผ QR ์ฝ๋๋ฅผ ๋ณด์ฌ์ฃผ๋ฉด, ํ์ฌ ํ์ฐ๋ฅผ ์ฐฉ์ฉํ๊ณ ์ ์ฅํ ์ ์๋ค. https://festa.io/events/2834 2022 CMC & CX DemoDay | Festa! Festa์์ ๋น์ ์ด ์ฐพ๋ ์ด๋ฒคํธ๋ฅผ ๋ง๋๋ณด์ธ์. festa.io https://makeus-challenge.notion.site/11th-CMC-2nd-CMC-CX-DemoDay-8d6f63e4bb4847ad82c0c37a77e34b69 ์ ํ ์์นด๋ฐ๋ฏธ์์ ๋ถ์ค๋ฅผ ์ด์ํ๋ ๊ฒฝํ์ ๋ ์ฌ๋ฆฌ๋ฉฐ, , ๋ค์ ๋งคํฌ๋ก ์ฒผ๋ฆฐ์ง ๋ถ์ค์์ ํ์ฉํ ์ ์๋ ๋ค์ํ ์์ด๋์ด๋ค์ ์ป์ ์ ์์๋ค. ํนํ ํ๋ง..
2022.11.21 -
UMC iOS ์ธ๋ฏธ๋ 8์ฃผ์ฐจ
9:20 ~ ๋ ์ด์์์ ๋ฐ๊พธ๊ณ ์ถ์ ๋ ์คํ ๋ฆฌ๋ณด๋์ ์กํ์๋ ์คํ ๋ ์ด์์์ ๋์ด์ฌ ์ ์๋ค ํ๋ ์ค์ ์ ๋๊ณ ์จ๋ค. (IBOutlet์ผ๋ก ์ฌ์ฉ) ์ฐ๋ฆฌ์ ๋ชฉํ: ์ค๋ ์ง ๋ทฐ์ ํ๊ณผ ํค์ดํธ ์์๊ฐ์ ๋ณํ์ํจ๋ค ์ ๋๋ฉ์ด์ ์ด ์ ์ฉ์ด ์๋๊ณ (3์ด๊ฐ) ๋ฐ๋ก ์ซ ํด์ง -> ๋ณ๊ฒฝ๋ UI ๋ด์ฉ์ด ๋ฐ์๋์ด์ผ ํ๋ค. -> ๋ณ๊ฒฝ๋์ง ์๋ ๊ฒ : ๋ ์์ธํ๊ฒ ์์๋ณด์ layout์ ์ ๋ฐ์ดํธ๋ฅผ ๋ช ๋ นํ๋ ์ฝ๋๊ฐ ๊ผญ ํ์ํ๋ค ์ ์ ๋๋ฉ์ด์ ์ด ์ ์ฉ์ด ์๋์ง? ํด๋ฉ๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํ๋ค. layoutIfNeeded() ๊ผญ ํ์ฉ! ๋ฐ๋ก๋ฐ๋ก UI ์ ๋ฐ์ดํธ๋ค์ด ์ ์ฉ์ด ๋๋ค. ์ ๋๋ฉ์ด์ ์ ์ฉํ ๋๋, UIView์ animate ๋ฉ์๋๋ฅผ ํ์ฉํ ์ ์๋ค. animate ๋ฉ์๋์๋ ๋ค์ํ parameter์ด ์๋๋ฐ, ๊ทธ๊ฒ ์ค์์ ํ์ํ ๊ฒ๋ง ํ์ฉ..
2022.11.14 -
UMC ์๋ฒ ์ธ๋ฏธ๋ 7์ฃผ์ฐจ
์ด๋ ํ ํํ๋ก ๊ฐ์ด ๋์ค๋์ง ์๋ ค์ฃผ๊ฑฐ๋, ์๋ฌ ๋ฉ์ธ์ง๊ฐ ๋์ฌ ๋, ์ด๋ป๊ฒ ์๋ชป ์์ฒญํ ๊ฒ์ธ์ง ํ์ ํ์ฌ ์ ๋๋ก ์์ฒญํด๋ผ ๋ฑ๋ฑ ์๋ ค์ฃผ๊ธฐ ์ํจ - ๋ช ์ฌ ์ฐ๋ฉด ์ข๋ค - ๋ณต์ํ์ด ์ข๊ธด ํ์ง๋ง, ํต์ผ๋๋ฉด ๊ด์ฐฎ๋ค - ํด๋๋ช ์ ๋ณต์ํ ๊ถ์ฅ (์ฌ๋ฌ ์ ์ ๊ฐ ๋ค์ด๊ฐ ์์ผ๋, Users) ์ด๋ค ์ฑ ์ด๋ ๊ฐ์, ์คํฐ๋ ๊ถ์ฅ ๋ฑ ๋ฐฉํฅ์ ์๋ดํด๋๋ฆด ์์ ์ด๋, UMC์์ ์๋ ค์ฃผ๋ ๋ถ๋ถ๋ง ์๋ฉด ๊ตฌํ ์์ฒด๋ ์ด๋ ต์ง ์๋ค. ๋ถ์ํ๋๋ผ๋, ๊ณผ์ ์์ฒด๋ฅผ ๋ฐ๋ผ์ฃผ๋ฉด ์ข๊ฒ ๋ค. ํ ํ๋ฆฟ ์ฌ์ฉ -> ์ด๋ค ์๋ฆฌ๋ก ๊ฐํธํด์ง๋๊ฐ? ๊ธฐ์ ์ ์ธ ์๋ฆฌ, ํด์ ๋ํ ์๊ฐ์ ํด๋ณด์. ์ด ๊ณผ์ ๋ค์์ ์๊ธด ๊ถ๊ธ์ฆ๋ค์ ํ ํ๋ฆฟ์ ๋ณด๋ฉด์ ํด๊ฒฐํด๋๊ฐ๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค. ์ค๋ฌด์์๋ ๊ผญ ํ ์คํธ์ฝ๋๋ฅผ ์์ฑํ๋ค. ์ ํจ์ฑ ๊ฒ์ฌ ์๋ํ๋ฅผ ์ํด ํ ์คํธ ์ฝ๋ ์ฐ์ 1์ฐจ์ ๋ชฉํ๋ API ๊ตฌํ ๋์ค..
2022.11.09 -
UMC iOS ์ธ๋ฏธ๋ 7์ฃผ์ฐจ : DB
์ค๋ ๋์ ์ด์์ฒด์ ๋ฅผ ์ ๋ค๋ฃจ๋๊ฒ iOS์์ ๋ง์ด ์ค์ํ๋ค. iOS ์ฌ๋ฌ ๊ธฐ๋ฅ๋ค์ ํ์ฉํ์ฌ ์์ ํ ๋ ๋์์ด ๋ ๊ฒ DBMS ์น๋ช ์ ์ธ ๋จ์ ๋ฐ์ดํฐ๋ฅผ ํ์ผ ํ์์ผ๋ก ๋ค๋ฃฌ๋ค ์ํ ๊ฐ์ ๊ฒฝ์ฐ -> ๋ณด์์ ๋ฌธ์ ๊ฐ๊ฐ์ ๋ฐ์ดํฐ๊ฐ ์กด์ฌ RDBMS ๋ฐ์ดํฐ๊ฐ ํ ์ด๋ธ ํํ๋ก ์กด์ฌ ํ ์ด๋ธ ํ์์ ์คํค๋ง, ํ ์ด๋ธ ๊ฐ์ ๊ด๊ณ์ฑ ๋จ์ํ ๋ฐ์ดํฐ๋ฅผ ํ์ผ ํํ๋ก ์ ์ฅํ๋ DBMS์์ ๋จ์ ์ ๋ณด์ํจ PK : Primary key, ๊ธฐ๋ณธํค FK : Foreign Key, ์ธ๋ํค SQL ํ ์ด๋ธ์ ํตํด ์ํ๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ฑฐ๋ ์์ฑ ๋ฐ ์ญ์ , ์ ๋ฐ์ดํธ๋ฅผ ํ๊ธฐ ์ํ ์ธ์ด ์ ๋ฆฌ ์ํ์ ์ ์ฐ ๋ฐ์ดํฐ์ ๊ฐ์ ๊ฒ๋ค ๋ฐ์ดํฐ๋ค์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ ๋ฌถ์ฌ์๋ค. ์ด๋ฌํ DB๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์์คํ ์ผ๋ก ๊ด๋ฆฌํ๋ค. RDBMS๊ฐ ๋ฌด์กฐ๊ฑด DBMS๋ณด๋ค ์ข์ ๊ฒ์ ..
2022.11.07 -
UMC ์๋ฒ 6์ฃผ์ฐจ ์ธ๋ฏธ๋ (11/2, ์์์ผ)
+ ์กฐ์ธํ ๋, ์ถ์ฝํ ์ฐ๋ ๊ฒ ์ถ์ฒํ์ง ์๋๋ค. + ์ปฌ๋ผ๋ช ์ด ๋ง์์ ์๋ค ๋ ํ์ฉํ๋ ๊ฒ๋ง ๊ถ์ฅ - ๊ฒ์์ ์๋๋ค (์์ง ์๋ฌด ๊ฒ๋ ๊ฒ์ ์ํจ, ๋ก๊ทธ์ธ๋ ๋ง์ฐฌ๊ฐ์ง) - ๊ด๊ณ , ๋ ์จ ๋ฑ๋ฑ: ํ์ฌ ์ํฉ์์ DB์์ ๋ถ๋ฌ์จ ๊ฐ (์๋ฒ์ ์ฐ๊ฒฐ๋ ๋ถ๋ถ๋ค) - ๋ ์ด์์์ ์ ์ธํ ๊ฒ๋ค์ ๋ชจ๋ DB์ ์ ์ฅ๋ ๊ฐ์ ๋ถ๋ฌ์จ ๊ฒ - ์ค์ ์๋น์ค ํ๋ฉด์ ๋ณด๊ณ , ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ด๋ค ๊ฐ๋ค์ ๋ณด๋ด์ค์ผ๊ฒ ๊ตฌ๋ ์๊ฐํ๋ ๊ฒ์ด ๋์์ด ๋๋ค. - ์ฟผ๋ฆฌ๋ฅผ ์งค ๋, Join ๋ฌธ์ ๋ง์ด ์จ๋ด์ผ ํ๋ค. - ์ต๋ํ ๋ง์ ์ ๋ณด๋ฅผ ๋ด์ ์ ์๋๋ก ์ฟผ๋ฆฌ๋ฅผ ์ง๋ด์ผ ํ๋ค. Get ๋ฐ์ดํฐ๋ฅผ ์กฐํํ๋ ๊ฒ ๊ทธ๋ผ http์ body๋ฅผ ๊ฐ์ ธ์ค๋? X Query String & Path Variable ์ ํ์ฉํ๋ค. Post ๋ฐ์ดํฐ ์์ฒด๋ฅผ ๋ณด๋ด๋ ๊ฒ body์ ๋ฐ..
2022.11.02 -
UMC iOS ์ธ๋ฏธ๋ 6์ฃผ์ฐจ: Thread
DispatchQueue.main() -> main ์ค๋ ๋, UI ๊ด๋ จ ์์ ์ ๋ฐ๋์ ๋ฉ์ธ ์ค๋ ๋์์๋ง! DispatchQueue.global() -> ์ด์ธ์ ๋ค์ํ ์ฒ๋ฆฌ๋ค์ ๋ฐฑ๊ทธ๋ผ์ด๋์์ == global ์ด๋, UI ๊ด๋ จ ์์ ์ main์์! ๋ฐ๋ผ์ global ๋ด๋ถ์์, UI ์ฝ๋๋ง main์ผ๋ก ๊ฐ์ผ๋ค. ๋ฐฑ๊ทธ๋ผ์ด๋์์ ๋๋ฆฌ๋ฉด์, ํด๋น ์์ ์ main์ผ๋ก ๊ฐ์ ธ๊ฐ๋ ๊ฒ ์ด์ ์ ๋์คํจ์น ํ ์ฝ๋๋ฅผ ์ ๋ ๊ฒ ์ฐ๋์ง ์ดํด๊ฐ ๊ฐ๋ค ;;
2022.10.31