.ipa ํ์ฅ์๋? iOS์ฑ ์คํ ํ์ผ์ ํฌํจํ ์ ํ๋ฆฌ์ผ์ด์ ํ์ผ ํจํค์ง ํ์. ์ฑ ์คํ ์ด(App Store)๋ฅผ ํตํด ๋ฐฐํฌ๋๊ฑฐ๋, ์ํฐํ๋ผ์ด์ฆ ๋ฐฐํฌ ๋๋ ํ ์คํ ๋ชฉ์ ์ผ๋ก ๋ด๋ถ์ ์ผ๋ก ๋ฐฐํฌ๋ ๋ ์ฌ์ฉ๋ฉ๋๋ค. ๋น๋ํ ์์นด์ด๋ธ๋ฅผ Distribute App์ ํตํด ์ฝ๋ ์๋ช ๊น
์๋ ํ์ธ์! ๋ฆด๋ฆฌ์ ๋๋ค~์ค๋์ Xcode์ Build phase์์ custom script๋ฅผ ์คํํ๋ ๋ฐฉ๋ฒ๊ณผ ์ฉ์ด๋ค์ ๋ํด ์ด์ฌ์์ ๋์ผ๋ก ํ๋ํ๋ ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋น๐ค
ํฌ์คํธ๋งจ์์๋ ์ ์์ ์ผ๋ก ์ค๋ ์๋ต์ด,์ฑ์์ ํธ์ถํ๋ SERVICE_KEY_IS_NOT_REGISTERED_ERROR๋ผ๋ ์๋ต์ ๋ฐ์๋ค. ๊ตฌ๊ธ๋ง์ ํด๋ณด๋ APIkey ์ธ์ฝ๋ฉ์ด ์ฃผ๋ ์์ธ์ด์๋ค.๊ณต๊ณต๋ฐ์ดํฐํฌํธ์ ์ฌ๋ผ์ ์๋ Q&A์ ๊ฐ์ด, ์ฐ์ APIKey๋ URL ์ธ์ฝ๋ฉ
์๋ ํ์ธ์!์ค๋์ ๋ฐฑ์ค์ 10172๋ฒ ๊ฐ, 10171 ๊ณ ์์ด, 25083 ์์น์ ํ๋ค๊ฐ ์๊ฒ๋ String Literal์ ๋ค์ํ ๊ธฐ๋ฅ๋ค์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค!๐ถ๐๐ฑ
Swift Concurrency + Realm + SerialQueue ๋ค ๊ฐ์ด ์จ๋ณด๊ธฐ
์์ ๋๋ ๋ฅผ ๋ฐ๋ผ ์์ง์ด๋ฉฐ ์ ๋ ๋ ๋ฒํผ์ ๊ฐ๋ฆฌํค๋ ํ์ดํ๋ฅผ ๊ตฌํํ ๊ณผ์ ์ ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค.
์๋ ํ์ธ์~ ๋ฆด๋ฆฌ์ด์ ๋๋ค๐ ์ค๋์ ๋น์ทํ ์ญํ ์ ํ๋ ๊ฒ ๊ฐ์ง๋ง, ๋ค๋ฅธ UIView์ CALayer์ ํน์ง๋ค๊ณผ ์ฐจ์ด์ ์ ๋ํด ๊ณต๋ถํด๋ณด๊ฒ ์ต๋๋ค. CALayer ์ด๋์ ๋ดค๋๋ผ? UIView์ ๊ทธ๋ฆผ์(shadow)๋ ๊ฒฝ๊ณ์ (border)์ ์ค์ ํ ๋, layerํ๋กํผ
๋ถ๋ถ~, ํ ํฑ์ ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ด ์๋ค.
Commit hitch๋ฅผ Instrument๋ก ํฌ์ฐฉ, ๋ถ์ํ๋ ๋ฐฉ๋ฒ๊ณผ hitch๋ฅผ ์ ๊ฑฐํ๋ ๋ฐฉ๋ฒ์ ๋ํด ๊ณต๋ถํด๋ณด๊ฒ ์ต๋๋ค!
hitch์ ๊ฐ๋ , ์ด๋ฏธ์ง๊ฐ ๋ง๋ค์ด์ง๋ ๊ณผ์ ์ธ render loop๋ฅผ ์์๋ด ์๋ค
์ค๋์ HIG์์ iOS๋ผ๋ ํ๋ซํผ์ ์ํ ๋์์ธ ๊ฐ์ด๋๋ฅผ ๊ฐ๋ตํ๊ฒ ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.
Special Case Pattern (ํน์ ์ฌ๋ก ํจํด) ์ด๋ค ์ํฉ์์ ํ์ฉํ ์ ์๊ณ , ์ด๋ป๊ฒ ์ฐ๋ ๊ฑด์ง ์์๋ณด์๋ฏธ~
rxSwift์ Trait์ ์ด๋ค ๊ฒ์ผ๊น? ์์๋ณด์๋ฏธ~๐
์๋ฌ ์ก์ผ๋ฌ ๊ฐ์๋ฏธ~
rxCocoa๋ฅผ ์ฌ์ฉํด UITableView ์ ๋ฐ์ดํฐ๋ฅผ ๋ฟ๋ ค์ฃผ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด์๋ฏธ~
Domain, Entity + layered architecture์ ๋ํด ๊ณต๋ถํด๋ณด์๋ฏธ~
Carplay์์ ์๋กญ๊ฒ ์ถ๊ฐ๋ ์ฑ ํ์ , Carplay simulator, ๊ณ๊ธฐํ ๋งต ํ์์ ๋ํด ์์๋ด ์๋ค๐๐จ
์คํ ๋ฆฌ๋ณด๋๋ก UICollectionViewCell์ ๋ง๋ค์ด์ ์ฌ์ฉํ๋ ค๋ ์์ค์ CollectionViewCell์ subview(ContentView)๊ฐ ๋ํ๋์ง ์๋ ๋ฌธ์ ๋ฅผ ๋ง๋ฑ๋จ๋ ธ๋ค.์คํ ๋ฆฌ๋ณด๋์์ CollectionViewCell์ ๋ง๋ค์ด์ CollectionVie