
๐ณ BodyView - ์ฝ๋ ์ ๋ทฐ bodyView๋ resultView์ collectionView๋ฅผ ์์์ ์์ฑํ๋ค! UICollectionFlowLayout์ UICollectionView์ ๋ ์ด์์์ ๊ด๋ฆฌํ๋ ํด๋์ค๋ก, ์ ์ ๋ฐฐ์น, ์ ์ ํฌ๊ธฐ ๋ฐ ๊ฐ๊ฒฉ ์กฐ์ ,

์ํ์๋งค์ฑ ๋ง๋ค๊ธฐ ํ๋ก์ ํธ ์ฃผ์ : ์ํ์๋งค ์ฑ์ ๋ง๋ค์! ๋ด๊ฐ ๋งก์ ๊ธฐ๋ฅ : ๊ฒ์ ๊ธฐ๋ฅ๊ณผ ํญ๋ฐ ๊นํ๋ธ cell์์์ ์ ์๋ ๋ฒํผ์ ๋๋ ์๋ ์๋ํ๋ ๋ฉ์๋๋ฅผ ์ด๋์ ์ ์ํด์ผํ ์ง! ํญ์ ํท๊ฐ๋ฆฐ๋ค. ๋๋ ์ฝ๋๋ก UI๋ฅผ ์ ์ํ๊ณ ๐ณ View ๊ตฌ์กฐ ๋๋๊ธฐ ์ผ๋จ ๋ด

๋ฐ์น์คํฌ๋ฆฐ ์ค์ ํด๋ณด์

str.replacingOccurrences(of target: , with replacement: )

๐ณ ์์๋ฆฌ์คํธ ์ ์ญ์ ํ๊ธฐ ์์๋ฆฌ์คํธ์ ์ ์ญ์ ๋ ์ผ๋จ ์ต์ํ ๋ฐฉ๋ฒ์ธ ๋ฐ์ด์ ์ญ์ ๋ก ๊ตฌํํด๋ณด๊ธฐ๋ก ํ๋ค! ์ผ๋จ ์ ์ ์ญ์ ํ๋ ๋์์ coredata์์ ํด๋น ๋ด์ฉ๋ ์ญ์ ํด์ฃผ์ด์ผ ํ๋ค. ์ฌ๊ธฐ์ wishListTableView.beginUpdates()๋ wishListTableView.endUpdates()๋ฅผ ์์ ์ผ๋ฉด ์๋ฌ๊ฐ ๋๋ค!! beginUpdate...

์์๋ฆฌ์คํธ ํ๋ฉด์ ์ ์ํด์ผํ๋ค..!!

coredata๊ฐ ๋ญ๋ฐ? ์ด๋ป๊ฒ ์ฌ์ฉํ๋๊ฑด๋ฐ?

๐ KingFisher๋ก ์ด๋ฏธ์ง ๋ถ๋ฌ์ค๊ธฐ ์๋ฒ์์ ํ๋กํ ์ด๋ฏธ์ง๋ url๋ก ๋๊ฒจ์ฃผ๋ฉฐ ์ด url์ String ํ์ ์ผ๋ก ์ค๋ค. ์ด url์ ์น์๋ฒ์์ ์ด๋ฏธ์ง์ ๊ฒฝ๋ก๋ค! ๊ทธ๋์ ์ฐ๋ฆฌ๋ ์ด url๋ก ์ ์ํด์ ์ด๋ฏธ์ง๋ฅผ ๋ก๋ํด์ฌ ์ ์๋ค. ์ ์ฝ๋์ profileํ์ ์ ์ ์ฅ

๊ณผ์ ์ ์กฐ๊ฑด์ ๋ค์๊ณผ ๊ฐ๋ค. alamofire์ kingFisher๋ฅผ ์ฌ์ฉํ ๊ฒ pull to refresh ๊ธฐ๋ฅ ๊ตฌํํ ๊ฒ ํ์ด์ง ์ฒ๋ฆฌํ๊ฒ ํ ๊ฒ tableView๋ collectionView ์ฌ์ฉํ๊ฒ ๊น api ์ด๋ป๊ฒ ๋ฐ์?? ์ผ๋จ ๊นํ๋ธ์ api๊ฐ ์๋ค๋ ์ฌ์ค์

์คํ ๋ฆฌ๋ณด๋ ํ๋๋ฅผ ๊ฐ์ง๊ณ ํ์ ํ๋ ๊ฒ์ ๋ฌด๋ฆฌ์๋ค... ๊ทธ๋์ ์ฐ๋ฆฌ ํ์ ์คํ ๋ฆฌ๋ณด๋ ์์ด ์ฝ๋๋ก UI๋ฅผ ๊ตฌํํ๊ธฐ๋ก ๊ฒฐ์ฌํ๋ค. ๊ทธ๋ฆฌ๊ณ UI ๋์์ธ ๊ฐ์ด๋๋ฅผ ํผ๊ทธ๋ง๋ก ๋ง๋ค์๋ค. ๋์์ธ๊ฐ์ด๋๋ ๋ค์๊ณผ ๊ฐ๋ค. ์ฌ๊ธฐ์ ๋ด๊ฐ ๋งก์ ๋ถ๋ถ์ ์๋จ๋ถ์ด๊ณ , ํฌ๊ธฐ๋ ๊ณ ์ ๋์ด ์๋ค. ๋ด๊ฐ

String.index()์ Array.joined(), Array.popLast()

์ด๋ ๊ฒ ๊นํ๋ธ์ ํด๋์ ํ์ดํ๊ฐ ๋ ์๊ณ ๋ค์ด๊ฐ์ง์ง ์๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. ์ด๋ฐ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ ๊ฒฝ์ฐ subway ํด๋ ์์ .git ํ์ผ์ด ์์ด์ ์ด๋ค!! ์ค์ ๋ก ์ ํด๋๋ ๋ค๋ฅธ ๊น ๋ ํฌ๊ฐ ์ฐ๊ฒฐ๋์ด ์๋ ํด๋์ ํ์์์ ๊ฐ์ ธ์๋ค. ์ปค๋งจ๋์ฐฝ์ผ๋ก ์ค์ ๋ก์ปฌ์ ํ์ผ๋ค์ ํ์ธํด

๋ฏธ๋ ํ๋ก์ ํธ๋ก ํ์๋ถ๋ค๊ณผ subway ์ฃผ๋ฌธ ํ๋ฉด์ ๋ง๋ค์ด ๋ณด๊ธฐ๋ก ํ๋ค! ๊ตฌ์ํ ํ๋ฉด์ ๋ค์๊ณผ ๊ฐ๋ค. ์ฌ๊ธฐ์ top, body, bottom์ผ๋ก 3๋ถ๋ถ์ผ๋ก ๋๋์ด ์์ ํ๊ธฐ๋ก ํ๊ณ ๋๋ top ๋ถ๋ถ์ ๋งก์๋ค. ์คํ ๋ฆฌ๋ณด๋๋ก ๊ตฌํํ๊ธฐ๋ก ํ์ผ๋ฉด ํ์ ์ ๊น์ ํ์ฉํ๋ค. ์ฌ์ค

๋ฌธ์ ๋ ๋จ๊ณ๋ณ๋ก ์ฐจ๊ทผ์ฐจ๊ทผ ์ฝ๋๋ฅผ ์ง๊ธฐ๋ก ํ๋ค. ๋จผ์ 10์ง๋ฒ์ 3์ง๋ฒ์ผ๋ก ๋ง๋ค๊ณ ์๋ค๋ฐ์ ์ ํ ํ 10์ง๋ฒ์ผ๋ก ํํํ ๊ฒ์ด๋ค. ๊ทธ๋ฐ๋ฐ 10์ง๋ฒ ์๋ฅผ 3์ง๋ฒ์ผ๋ก ๋ณํ๋ ๊ณผ์ ์์ ๋ฆฌ์คํธ๋ฅผ ์ฌ์ฉํ๋๊น ์๋ค๋ฐ์ ํ๋ ๊ณผ์ ์์ด ๋ฆฌ์คํธ์ ์๋ค๋ฐ์ ํ ์์๋๋ก ๊ฒฐ๊ณผ๊ฐ ๋ค์ด๊ฐ๋ค.์ ์ฝ

โ๏ธ ์ต๋๊ณต์ฝ์, ์ต์๊ณต๋ฐฐ์ ์ต๋๊ณต์ฝ์๋ ์ ๋ ฅ๋ ์ซ์๋ณด๋ค ์์ ๊ฒ์ด๋ฏ๋ก ๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํ๋ฉด ๋ ๊ฒ์ด๋ค. ์ต์๊ณต๋ฐฐ์๋ ๊ฐ์ ์๋ฆฌ๋ก ์ ๋ ฅ๋ ์์ ๊ฐ๊ฑฐ๋ ๊ทธ ์ด์์ผ ๊ฒ์ด๋ฏ๋ก ๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํ๋ฉด ๋ ๊ฒ์ด๋ค. ๊ตฌํํด ๋ณด๋ฉด ์ด๋ ๊ฒ ๊ตฌํํ๋๋ testCase 2๋ฒ์งธ์์ ์ต๋๊ณต์ฝ์๋ฅผ ์ฐพ์ง ๋ชปํ์๋ค. ์๊ฐํด๋ณด๋ ์์ ์ฝ๋๋ ๋ ์๊ฐ ๋ฐฐ์ ๊ด๊ณ์ ์์ด์ผ์ง๋ง, ์ฆ ๋ ์์ ์ต๋๊ณต...

โ๏ธ ์ง์ฌ๊ฐํ ๋ณ์ฐ๊ธฐ ํด๋น ๋ฌธ์ ๋ฅผ ํ๊ธฐ์ํด commandLine ํ์ผ์ ์ฎ๊ฒผ๋ค. (ํ๋ ์ด๊ทธ๋ผ์ด๋์์๋ readLine()์ด ์คํ์ด ์๋๋ค!!) ๐ readLine()