https://iwntberich.tistory.com/๋ธ๋ก๊ทธ ์ด์ฌํ ํด๋ณด๊ฒ ์ต๋๋ค..
๐ก UserDefaults ์ฑ์ ์คํํ๋ ๋์์ ํค-๊ฐ ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๊ธฐ๋ณธ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธํฐํ์ด์ค์ด๋ค. ์ ํ์์ ๊ธฐ๋ณธ์ผ๋ก ์ ๊ณตํ๋ ์ ์ฅ์๋ก ๋์ ๋๋ฆฌ์ ๋น์ทํ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๊ณ ์๋ค. ๋ฐํ์ ์์ ์ ๊ธฐ๋ณธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์์ฑ๋๊ณ .plist ํ์ผ์ ์ ์ฅ์ด ๋๋ค
AutoLayout์ ์๊ฒ ๋๋ฐ ๋ชจ๋ฅด๊ฒ ๋ค(?) ๋จธ๋ฆฟ์์ผ๋ก ์์ํ์ฌ ๋ฉ์ง ๊ฒฐ๊ณผ๋ฅผ ๊ฟ๊ฟจ์ง๋ง ํ์ค์ ํฌ๊ธฐ๋ ์๋ง ์์น๋ ์๋ง ์ธ์คํ UI๋ฅผ ๋ง๋ค์ด๋ณด์ -> ๋ด๊ฐ ๊ฟ๊พผ ์์ฑ์ ์์ดํฐ 14 pro๋ก ์คํํ์ ๋ ๋ ๋น ์ง๊ฒ ๋ง๋ ๋ณด๋์ด ์์๋ค. ํ์ง๋ง ์คํ ๋ ์์ด์์.. ๋ค์ํ
iOS 13.0 ๋ฒ์ ios 13.0 ๋ฒ์ ์ ๋ฐ์ดํธ๊ฐ ๋๋ฉด์ iPad OS๊ฐ ๋ฑ์ฅํ๊ฒ ๋์๋ค. ์์ดํจ๋์์๋ ๋ ๊ฐ์ ์ฑ์ ๋์์ ์คํํ ์ ์๊ฒ ๋๋ฉด์ ์ฑ์ ์๋ช ์ฃผ๊ธฐ ๊ด๋ฆฌ ๋ฐฉ์์ ๋ณํ๊ฐ ์๊ฒผ๋ค. ์ฑ์ ์๋ช ์ฃผ๊ธฐ(Life Cycle) ์๋ช ์ฃผ๊ธฐ๋? ์ฑ์ ์คํ๋ถํฐ ์ข ๋ฃ,
์์ ๊ฐ์ ์ค๋ฅ ๋ฌธ๊ตฌ๊ฐ ๋์จ๋ค.\-> ๋ค๋น๊ฒ์ด์ ๋ฐ์ ๋ชจ์์ด 13.0๋ถํฐ ๋ณ๊ฒฝ๋์ด ๋ฐ์ํ๋ ๋ฌธ์ ์ธ์คํํฐ ์์ญ์์ ๋ค๋น๊ฒ์ด์ ๋ฐ์ Appearances์ ์ฒดํฌ๋ฐ์ค๋ฅผ ๋ชจ๋ ํด์ ํ์๋๋ ํด๋น ์ค๋ฅ๋ ์ฌ๋ผ์ก๋ค.UIScene ๊ด๋ จํ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ๋ฏ ํ๋ค.13.0 ๋ฒ์ ์ ๋ฐ์ดํธ
swift์์ ๋ฌธ์์ด์ ์ธ๋ฑ์ค๋ฅผ ๋ค๋ฃฐ ๋ ์ ์(Int)๋ฅผ ์ฌ์ฉํ์ง ์์ \-> String.Indexโ๏ธ ์๋ก์ด ๋ฌธ์์ด ๋ณ์์ ๊ฐ ๋ถ๋ถ์ ์๋ผ์ ๋ถ์ฌ ๋ฃ๋ ๋ฐฉ์์ผ๋ก ์์ฑโ๏ธ ์ธ๋ฑ์ค 0๋ถํฐ s-1 ๋ฌธ์๋ค๊ณผ (s+๊ฒน์ณ ์ธ ๋ฌธ์์ด ๊ธธ์ด)์ ์์น ๋ถํฐ ๋๊น์ง๋ my_strin
๋ฌธ์ : https://school.programmers.co.kr/learn/courses/30/lessons/181187์ ๋ต ์ฝ๋: https://github.com/ji-yeon224/coding-test/blob/master/programmers
๋ฌธ์ https://school.programmers.co.kr/learn/courses/30/lessons/150365์ ๋ตhttps://github.com/ji-yeon224/coding-test/blob/master/programmers/%EB%AF
์ธ์ฌ๊ณ ๊ณผ ๋ฌธ์ ์ ์ ํ๊ฒ ์ ๋ ฌํ์ฌ ๋น๊ตํ๋ ๋ฐฉ์์ ์ ์๊ฐํด์ผ ํ๋ ๋ฌธ์ ์ด๋ค.์ ๋ ฌ๋จผ์ , scores๋ฐฐ์ด์ ์ ๋ ฌํด์ผ ํ๋ค. 0๋ฒ์งธ ์ ์๋ ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋๋ฐ, 0๋ฒ์งธ ์ ์๊ฐ ๋์ ์ด๋ผ๋ฉด 1๋ฒ์งธ ์ ์๋ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ์๋ค. \[3, 2] -> \[3, 2] -> \[2
ํํ ๊ฐ๋ฅํ ์ด์งํธ๋ฆฌ ๋ฌธ์ ๋ฌธ์ ์ค๋ช ์ด ๋๋ฌด ์ด๋ ต๊ฒ ๋์ด์์ด์ ์ง๋ฌธํ๊ธฐ ํ์ด์ง์ ๋ค๋ฅธ ๋ถ๋ค์ด ๋จ๊ฒจ์ฃผ์ ์ค๋ช ๋ค์ ๋ง์ด ์ฐธ๊ณ ํ๋ค.์ฝ๊ฒ๋งํด ํฌํ์ด์งํธ๋ฆฌ๋ฅผ ๋ง๋ค์ด์ ์ค์์ํ๋ก ์ด์ง์๋ฅผ ๋ง๋ค ์ ์๋๊ฐ์ ๋ํ ๋ฌธ์ ์ธ ๊ฒ ๊ฐ๋ค.ํต์ฌ ํฌ์ธํธ๋ ๋ถ๋ชจ๊ฐ 0์ผ๋ ์์์ด ์์ผ๋ฉด ์๋๋ค๋ ๊ฒ
๐SOLID ๐กSPR(Single responsibility principle): ๋จ์ผ ์ฑ ์ ์์น ํ๋์ ํด๋์ค๋ ํ๋์ ์ฑ ์๋ง ๊ฐ์ ธ์ผํ๋ค๋ ์์น ๋ณ๊ฒฝ์ด ์์ ๋ ํ๊ธ ํจ๊ณผ๊ฐ ์ ์ผ๋ฉด ๋จ์ผ ์ฑ ์ ์์น์ ์ ๋ฐ๋ฅธ ๊ฒ ๐กOCP(Open/Closed Principle
์ ํ๋ฒํธ ๋ชฉ๋ก์ฒ์์ ์ด ๋ฌธ์ ๋ฅผ ํด์๋ฅผ ์ด์ฉํ์ฌ ํ๋ผ๊ณ ํ๊ธธ๋ ๊ตณ์ด..? ํ๊ณ ์ฒ์์ ์๊ฐ๋๋๋ก startsWith()๋ฅผ ์ฌ์ฉํ์ฌ ๋ฌธ์ ๋ฅผ ํ์๋ค. ์ ํ์๋๋ฐ ๊ณ์ ํจ์จ์ฑ 3, 4๋ฒ์งธ์์ ์คํจ๋ฅผ ํ๋ค. ๋ฌธ์ ๋ฅผ ๋ณด๋ ์ต๊ทผ ๋ณ๊ฒฝ๋ ํ ์คํธ์ผ์ด์ค๊ฐ startsWith()๋ฅผ ์ฌ์ฉ
๐ํด์๋งต์ ์ด์ฉํ์ฌ ์ ์ ์ ์์ด๋์ ๋๋ค์์ ์ ์ฅํ๋ค. Enter์ Change์ธ ๊ฒฝ์ฐ put์ ํ์ฌ ๋๋ค์ ๋ณ๊ฒฝ์ ์ ์ฉํ๋ค. ๐์ ์ ๊ฐ ๋ค์ด์ค๊ฑฐ๋ ๋๊ฐ๋ ๊ฒฝ์ฐ์ ๋ฉ์ธ์ง๋ฅผ ์์๋๋ก ๋ณด๊ดํ๊ธฐ์ํ์ฌ ์ถ์ ๋ฉ์ธ์ง ๋ฆฌ์คํธ์ ์ ์ ์์ด๋ ๋ฆฌ์คํธ๋ฅผ ์์ฑํ์ฌ ์์๋๋ก ์ฝ์ ํ๋ค.
๐ป ๋ฌธ์ ์ค๋ช ![](https://images.velog.io/images/ji-yeon224/post/2bc3e6d1-cafb-4931-b583-3ef7279f9
์ฌ์ค ์ฒ์๋ถํฐ ํผ์ ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐํด๋ด์ง๋ ๋ชปํ๋ค. ๊ทธ๋์ ๋ค๋ฅธ ์ฌ๋๋ค์ ์ฝ๋๋ฅผ ๋ณด๊ณ ํ์ด ๋ฐฉ์์ ์ดํดํ๋ค.๋์ฒด ์ค๊ฐ์ 2, 5, 8, 0์ ๋๋ฅผ ๋ ์ด๋ค ๋ฐฉ์์ผ๋ก ์ต๋จ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํด์ผํ๋์ง ์ดํด๊ฐ ์๋๋๋ฐ, ๋ค๋ฅธ ์ฝ๋๋ฅผ ๋ณด๊ณ ๋๋ ์ถฉ๋ถํ ์๊ฐํด๋ผ ์ ์์๋ ๋ฌธ์ ์๋ค.1,