
์ ๋ค๋ฆญ ์ ๋ค๋ฆญ์ด๋ ? ํ์ ์ ์์กดํ์ง ์๋ ๋ฒ์ฉ ์ฝ๋๋ฅผ ์์ฑ ํ ๋๋ง๋ค ์ฌ์ฉํ๋ค. ์ ๋ค๋ฆญ์ ์ฌ์ฉํ๋ฉด ์ค๋ณต์ ํผํ๊ณ , ์ฝ๋๋ฅผ ์ ์ฐํ๊ฒ ์์ฑํ ์ ์๋ค. Apple์ ์ํ๋ฉด Swift์์ ๊ฐ์ฅ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ค ํ๋์ด๋ฉฐ, Swift ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋๋ค์๋ ์ ๋ค๋ฆญ์ผ๋ก ์ ์ธ๋์ด ์๋ค. ์๋ฅผ ๋ค์ด Array, Dictionary ๋ํ ์ ๋ค๋ฆญํ์ ์ด๋ค. ์ ๋ค๋ฆญ ํจ์ ๋๊ฐ์ ์ธ์๋ฅผ ๋ฐ์ Intํ์ ์ ๊ฐ์ swapํ๋ ํจ์๋ฅผ ๊ตฌํํ๋ค๋ฉด, func swapTwoInts(_ a: inout Int, _ b: inout Int) { let tempA = a a = b b = tempA } ์ด๋ ๊ฒ ๊ตฌํํ๋ค. ํ๋ผ๋ฏธํฐ๊ฐ ๋ชจ๋ Intํ ์ผ๊ฒฝ์ฐ์ ์ ๋์๊ฐ๋ ์ฝ๋์ด๋ค. ํ์ง๋ง ๋ง์ฝ์ ํ๋ผ๋ฏธํฐ ๊ฐ์ด Double, String์ผ ๊ฒฝ์ฐ์..

์์ฃผ ๋ฐ์ํ๋ iOS ์ฑ ์ฌ์ฌ ๋ฆฌ์ ์ฌ์ 1. ์์ ๋ก๊ทธ์ธ ๊ธฐ๋ฅ ์ ์ฉ ์ ์ ํ ๋ก๊ทธ์ธ ์ ์ฉ ์นด์นด์ค ๋ก๊ทธ์ธ๊ฐ์ SNS ๋ก๊ทธ์ธ๊ธฐ๋ฅ์ด ์ฑ์ ๋ค์ด๊ฐ๋ค๋ฉด ์ ํ ๋ก๊ทธ์ธ๋ ๊ฐ์ด ๊ตฌํ ํ ๊ฒ ex) firebase Auth๋ก ๊ฐ๋จํ ์ด๋ฉ์ผ ๋ก๊ทธ์ธ ๊ตฌํ์ ์ ํ ๋ก๊ทธ์ธ ๊ตฌํ ํ์ X 2. ํ ํ๋ซํผ ๋ฌธ๊ตฌ๋ ์์ด์ฝ ์ฌ์ฉ ๊ธ์ง iOS ์ฑ์ ๊ตฌ๊ธ์ด๋ผ๋ ๋จ์ด๋ ๊ตฌ๊ธ ํ๋ ์ด์คํ ์ด ๋ฑ์ ์ปจํ ์ธ ๊ฐ ์๋ค๋ฉด ๋ฆฌ์ ์ฌ์ ๊ฐ ๋๋ค. ์๋ฅผ ๋ค๋ฉด ์ด๋ฒคํธ ํ์ ์ผ๋ก ๊ตฌ๊ธ ํ๋ ์ด ์คํ ์ด ๋งํฌ๋ ์๋๋ก์ด๋ ์ฑ ์ถ์ ์๋ฃ ๊ฐ์ ๋ฌธ๊ตฌ๋ฅผ ๋์ด์ค๋ค๋ฉด ๋ฆฌ์ ์ฌ์ ๋ค. 3. ๊ตฌํ๋์ง ์์ ๊ธฐ๋ฅ, ์ฑ ๋ฒ๊ทธ ( ํ๊น ) ๊ตฌํ๋์ง ์๋ ๊ธฐ๋ฅ์ ๋ฃ์ด๋ ๋ฆฌ์ ์ฌ์ ์ด๋ค. ์๋ฅผ ๋ค์ด ์ฌ์ง ์ดฌ์ ๋ฒํผ์ด ์๋๋ฐ ํด๋น ๋ฒํผ์ ๋๋ฌ๋ ์๋ฌด ๋ฐ์์ ํ์ง ์์ผ๋ฉด ๋ฆฌ์ ์ฌ์ ๊ฐ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฑ์ด..

๐ Shadow & cornerRadius ์ผ๋ฐ์ ์ผ๋ก Shadow๋ Radius๋ฅผ ๊ฐ์ดํ๋ฉด ์ ์ฉ์ด ์๋๋๋ฐ, Cell์ ์ฝ๊ฒ ๊ตฌํ์ด ๊ฐ๋ฅํ๋ค. func setUpLayout() { layer.shadowColor = UIColor.black.cgColor layer.shadowOpacity = 0.5 layer.shadowRadius = 10 contentView.layer.cornerRadius = 10 contentView.layer.masksToBounds = true } Cell ์์์ Layout ํ ๋ ์ด๋ ๊ฒ Cell์ Shadow๋ฅผ ๋ฃ๊ณ corner Radius๋ฅผ ์ ์ฉํด์ฃผ๋ฉด ๋๋ค. ๐ก CollectionView Cell์ ํ ๋๋ฆฌ ๋ฅ๊ทผํจ๊ณผ๋ง ์ ์ฉ ๐ก Button์ด๋ View์ ํ ๋๋ฆฌ ๋ฅ๊ธ๊ฒ l..

โ Struct Class ๋น๊ต iOS๊ฐ๋ฐ์๋ก ๋ฉด์ ์ ์ค๋นํ๋ค๋ณด๋ฉด Struct์ Class์ ์ฐจ์ด์ ์ด๋ผ๋ ์ง๋ฌธ์ ์์ฃผ ์ ํ๊ฒ ๋๋ค๊ณ ํ๋ค. ๊ทธ๋์ ํฌ์คํ ์ ํด๋ณด๊ณ ์ ํ๋ค. ๋จผ์ ๊ฐ๋จํ๊ฒ ์ฐจ์ด์ ์ ๋ณด์๋ฉด, "Struct๋ ๊ฐํ์ , Class๋ ์ฐธ์กฐํ์ " ์ ๋์ด๋ค. ์ด ์ง๋ฌธ์ ํตํด ARC๋ฅผ ํตํ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ, ์ฐธ์กฐํ์ ๊ณผ ๊ฐ ํ์ ์ ์ฐจ์ด์ ๋ฑ์ ํจ๊ป ๋ตํ ์ ์์๊ฒ ๊ฐ๋ค. ์ฌ์ค Struct์ Class์ '์ฐจ์ด์ '๋ง ์๊ฐํ๋ค๋ฉด ๋ฌธ๋ฒ์ ์๋ ๋ด์ฉ์ ๊ณง์ด๊ณง๋๋ก ์ธ์ฐ๊ณ ๊ณต๋ถํด๋ ๋ ๊ฒ์ด๋ค. ํ์ง๋ง ์ด ์ง๋ฌธ์ด ๋ฉด์ ์์ ์์ฃผ ๋์จ๋ค๋๊ฒ์ ๋ํด์ ์๊ฐํด๋ณธ๋ค๋ฉด, iOS๊ฐ๋ฐ์์๊ฒ ์ด๋ค ์๋ฏธ๋ฅผ ๊ฐ๋ ์ง๋ฌธ์ธ์ง ์กฐ๊ธ ๋ ์๊ฐํด๋ณผ ํ์๊ฐ ์๋ค. ๊ฒฐ๊ตญ "๊ฐ๋ฐ์๊ฐ ๊ฐ์ฅ ์ค์ํ๊ฒ ๊ณ ๋ คํด์ผ ํ ๊ฒ ์ค ํ๋๋ ์ฑ๋ฅ์ด๊ณ , Struct์ Cl..

๐ Sematic versioning GitHub๋ฅผ ์ฐฝ์ ํ์ ๋ถ์ด ๊ธฐ์กด Versioning์ ๋ฌธ์ ์ ์ ํด๊ฒฐํ๊ณ ์ ๋์จ ๊ฒ Major . Minor . Patch ์ผ๋ฐ์ ์ธ ๊ท์น 1. ๋ฒ์ ๋ฒํธ๋ Major, Minor, Patch ํํ๋ก ๋ฐฐํฌํ๊ณ , Major, Minor, Patch๋ ๊ฐ๊ฐ ์์ฐ์์ด๊ณ ์ ๋ ์์ 0์ด ๋ถ์ด์๋ ์๋๋ค. 2. ๊ฐ ๋ฒํธ์ ์๋ ํญ์ ์ฆ๊ฐํด์ผ ํ๋ค. 3. ํน์ ๋ฒ์ ์ผ๋ก ํจํค์ง๋ฅผ ๋ฐฐํฌํ๊ณ ๋๋ฉด, ๊ทธ ๋ฒ์ ์ ๋ด์ฉ์ ์ ๋ ๋ณ๊ฒฝํ์ง ๋ง์์ผํ๋ค. ๋ณ๊ฒฝ๋ถ์ด ์๋ค๋ฉด ๋ฐ๋์ ์๋ก์ด ๋ฒ์ ์ผ๋ก ๋ฐฐํฌํ๋๋ก ํ๋ค. 4. Major ๋ฒ์ ์ด ๋ณ๊ฒฝ๋ ๋, Minor, Path๋ 0์ผ๋ก ์ด๊ธฐํํ๋ค. 5. Minor ๋ฒ์ ์ด ๋ณ๊ฒฝ๋ ๋, Path๋ 0์ผ๋ก ์ด๊ธฐํํ๋ค. Major ๋ฒ์ ์ฆ๊ฐ ํ์ ๋ฒ์ ๊ณผ ํธํ๋์ง ..

๐ MVC ํจํด ๋์์ธ ํจํด ์ค ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ํจํด Model - View - Controller ๊ตฌ์กฐ์ ์ํคํ ์ฒ ํจํด ๐ก ์ผ๋ฐ์ ์ธ MVC ํจํด - Model ---------- ์ฑ์ ๋ฐ์ดํฐ์ ๋น์ฆ๋์ค ๋ก์ง ( ์ฃผ๋ก struct๋ class ) - View ----------- ํ๋ฉด๊ณผ control๋ฅผ ์คํฌ๋ฆฐ์ ํตํด ๋ณด์ฌ์ฃผ๋ ์ญํ ( ์ฃผ๋ก UiKit ์์ ) - Controller ------ View์ Model์ ์๋ ์ญํ ( ์ฃผ๋ก UiViewController ์์ ) View์ Model์ด ์ง์ ์ ์ผ๋ก ์ํตํ๋๊ฒ ์๋๋ผ Controller๋ฅผ ํตํด ์ํตํ๊ฒ ๋๋ค. ์ฆ, View๋ Model์ ๋ฐ์ดํฐ๋ฅผ ๋ณด์ฌ์ฃผ๊ณ , Model์ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๋ค. ์ด๋ฅผ Controller๊ฐ ์๋๊ฒ ๐ก ์ ํ์ MVC ํจํด V..

๋์ ๋๋ฒ์งธ ์ฑ ์ถ์ ๊ธฐ๋ก 4.12 ~ 4.27 ( "15์ผ ์ด๋ด" ) ๊ธฐํ ๊ท์น ๊ฐ๋ฐ ๊ฐ๋ฐ์ด์ธ์ ๊ณผ์ ์ถ์๋ฅผ ๋ง์น๊ณ ๋ฆฌ์ ๋๋์ ๊ธฐํ ์ด๋ฒ ์ฑ์ ๊ธฐํ ๋ชฉ์ ๋ "๋์ ์ํ"์์ ๋์๋ค. ๋ฐฐ๋ฌ์์์ ์ํฌ ๋ ๋ฌด์์ ์ํฌ์ง ๊ณ ๋ฏผ์ด ๋ผ์ ์ด๊ฒ์ ๊ฒ ๋ค์ด๊ฐ๋ณด๊ณ , ์ฐพ์๋ณด๋ ๊ฒฝํ์ ๋๊ตฌ๋ ํ์๊ฒ์ด๋ค. ๋๊ตฐ๊ฐ ๋ฌด์์ ๋จน์์ง ๋ฆฌ์คํธ๋ฅผ ์ ์ํด์คฌ์ผ๋ฉด ๊ณ ๋ฅผ ์ ์์๊ฑฐ๊ฐ์๋ฐ, ๊ทธ๋ ๋ค๊ณ ์ฐพ์๋ณด๊ธฐ์ ๊ท์ฐฎ๊ณ .. ์ถ์ฒํด์ค์ฌ๋๋ ์๋ค. ๊ทธ๋์ ๋ง๋ค๊ฒ ๋์๋ค. 1. ์์์ด ๋ง์์ ์๋ค๋ฉด ๋ฐ๋ก๋ฐ๋ก ๋๊ฒจ์ผ ํ๊ธฐ ๋๋ฌธ์ ํ์์๋ ๊ธฐ๋ฅ์ ๋ชจ๋ ๋นผ๊ณ ๋จ์ํ๊ณ , ๋น ๋ฅด๊ฒ ๋์ํด์ผํ๋ค. 2. ์ํ๋ ๋ฉ๋ด๊ฐ ๋ฑ์ฅํ์ผ๋ฉด, ๋ฐ๋ก ์ฑ์ ๋ ๋ค์ด๊ฐ์ง ์๊ณ ๋ฐ๋ก ์ด๋ํ ์ ์์ด์ผ ํ๋ค. 3. ๊ฐ๋ฐ์ ํ๋ฉด์ ๋ํ์ ์ด๊ณ ๊ธฐ๋ณธ์ ์ธ ์์ ๋ฆฌ์คํธ๋ ์ฃผ์ด์ง์ง๋ง, ์ฌ์ฉ์์ ..

๋์ ์ฒซ ์ฑ ์ถ์ ๊ธฐ๋ก 2023.02.24 ~ 2023.03.24 ( "1๊ฐ์" ) ๊ธฐํ ๊ท์น ๊ฐ๋ฐ ๊ฐ๋ฐ์ด์ธ์ ๊ณผ์ ์ถ์๋ฅผ ๋ง์น๊ณ ์ค์ ์ฑ์ ์ฌ์ฉํ๋ฉฐ ์์ฌ์ด์ ๋๋์ ๊ธฐํ ์ฑ์ ๊ธฐํ ๋ชฉ์ ์ "๋ด๊ฐ ํ์ํด์, ๋ด๊ฐ ์ฌ์ฉํ๊ธฐ ์ํด์" ์๋ค. ์ด๋์ ํ ๋ ์ด๋์๊ฐ๊ณผ, ์ฌ๋์๊ฐ ํ์ธ์ ์ํ์ฌ ์ ํ์์น๋ฅผ ์ฐจ๊ณ ํ๋๋ฐ ์๋ชฉ์ ์๊ณ๋ฅผ ์ฐจ๊ณ ์๋ค๋๊ฒ ์ด๋ ์๊ฐ๋ถํฐ ์กฐ๊ธ ๊ฑธ๋ฆฌ์ ๊ฑฐ๋ฆฌ๊ฒ ๋๊ปด์ง๊ณ , ์ฌ๋์๊ฐ์ด ๋ช ๋ถ์ ์์๋์๋์ง ๊ธฐ์ตํ๊ณ ์์ด์ผ ํ๊ธฐ ๋๋ฌธ์ด๋ค. 1. ๊ธฐ์กด์ ์์ดํฐ ๋ด์ ํ์์์น๋ฅผ ์ด์ฉํ๋ ๋ฐฉ๋ฒ๋ ์์์ง๋ง, ์ฌ๋ ์๊ฐ์ด ์ธ์ ๋๋๋๊ฑด์ง ๋์ผ๋ก ํ์ธํด์ผ ํ๋ค. -> ์๋ฆฌ๋ก ์๋ฆผ์ด ์์ผ๋ฉด ์ข๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์๋ค. ๋ฉ์ธ ๊ธฐ๋ฅ์ 'ํ์ด๋จธ'์ด๊ณ ๋ถ๊ฐ์ ์ธ ๊ธฐ๋ฅ๋ค์ ๋ฃ๊ณ ์ถ์๋ค. ๊ทธ๋์ ํ๋ฉด์ Tab Bar๋ฅผ ์ด์ฉํ์ฌ ..