์ค๋! ์ด์ ์ ์ค๋ฅ๋ค์ ๋ค ํด๊ฒฐํ์ต๋๋ค!
์ด๊ฒ ๋์ผ!
๋ฟ๋ฏ ๋ฟ๋ฏ! ์์ฃผ ๋ฟ๋ฏํฉ๋๋คใ
์ฐ์ ๋ฟ๋ฏํจ์ ๋ค๋ก ์ ํ๋๊ณ , ์ค๋์ ์ด๋ค ๊ฒ์ ์๋กญ๊ฒ ๋ฐฐ์ ๋์ง ์ ๋ฆฌํด ๋ด ์๋ค!
UUID
UUID๋ Universally Unique IDentifier์ ์ฝ์์ธ๋ฐ์. 36๊ฐ์ ๋ฌธ์์ด๋ก ์ด๋ฃจ์ด์ ธ ๊ณ ์ ์ ์๋ณ์๋ฅผ ์ง์ ํ๋ ๊ตฌ์กฐ์ฒด์ ๋๋ค. UUID๋ ์ฌ๋์๊ฒ ์์ด์๋ ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ๋ผ๊ณ ์๊ฐํ๋ฉด ์ฌ์ธ ๊ฒ ๊ฐ์์! ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ๋ ์ฌ๋๋ง๋ค ๋ค ๋ค๋ฅด๊ณ , ์ ๋ ์ค๋ณต์ด ๋ ์ ์์์์?! ๊ทธ๋ฐ ๊ฒ์ฒ๋ผ ์ด๋ค ๊ณ ์ ์ ID๋ฅผ ์ง์ ํ๊ณ ์ถ์ ๋ ์ด UUID ๊ตฌ์กฐ์ฒด๋ฅผ ์ฌ์ฉํด ์ฃผ์๋ฉด ๋ฉ๋๋ค.
36๊ฐ์ ์ํ๋ฒณ ๋๋ ์ซ์๋ก ์ด๋ฃจ์ด์ ธ ์์ด ๊ฐ์ง์๊ฐ ์์ฒญ ๋ง์๋ฐ์ ๊ทธ ์๋ ๋ฌด๋ ค 10์ 36์ ๊ณฑ๊ฐ๋ผ๊ณ ํ๋ค์!
์ ๋ TodoData์ id์ ์ด UUID๋ฅผ ์ ์ฉํ์ฌ ์๋ณ์๋ฅผ ๋ถ์ฌํด์ฃผ์์ต๋๋ค. Date๋ Priority๋ก ๊ฐ์ ์๋ณํด๋ ๋์ง๋ง, ์ถํ์ ๋ค๋ฅธ ๊ธฐ๋ฅ๋ค์ ๊ตฌํ์ ํ์์ ๋, Date๋ Priority๋ ๋ฐ์ดํฐ๊ฐ ๊ฒน์น ์ํ์ด ์๋๋ผ๊ณ ์! ๊ทธ๋์ UUID๋ฅผ ์ ์ฉํด ์ฃผ์๋๋ฐ ์ ์ฉ ๋ฐฉ๋ฒ์ ์์ฃผ ๊ฐ๋จํ์ต๋๋ค.
todoData.id = UUID()
์๋ก์ด ๋ฐ์ดํฐ ์์๋ฅผ ๋ง๋ค ๋, ์ด ํ ์ค๋ง ์ถ๊ฐํด์ฃผ๋ฉด ๋์์ต๋๋ค.
์ฌ์ฉํ๋ฉด์ ์ฐธ๊ณ ํด์ผํ ๋ถ๋ถ์ ์ฝ์ด๋ฐ์ดํฐ๋ฅผ ์์ฑํ ๋, ๋ฐ์ดํฐ์ ํ์ ์ UUID๋ก ์ง์ ํด์ฃผ์ด์ผ ํฉ๋๋ค. โญ๏ธ
Date
Date๋ ์๊ฐ๊ณผ ๋ ์ง๋ฅผ ๋ค๋ฃฐ ์ ์๋ ๊ตฌ์กฐ์ฒด์ ๋๋ค. ์ ์ธ๊ณ์ ํ์ฌ ์๊ฐ์ ์ ์ ์๊ณ , ๋ค๋ฅธ ๋ ์ง์์ ๋น๊ต๋ ์๊ฐ ๊ฐ๊ฒฉ๋ ๊ตฌํ ์ ์๋ ์์ฃผ ํธ๋ฆฌํ ๊ตฌ์กฐ์ฒด์ ๋๋ค.
https://developer.apple.com/documentation/foundation/date
DateFormatter
DateFormmatter๋ ์์ ์ค๋ช ํ Date๋ฅผ Stringํ์ ์ผ๋ก String์ Dateํ์ ์ผ๋ก ๋ณํํ ์ ์๋ ํด๋์ค์ ๋๋ค. ์ด DateFormatter๋ฅผ ์ด์ฉํด ์ง์ญ์ค์ ๋ ๊ฐ๋ฅํ๊ณ , ์๊ฐ๋ ์ค์ ๋ ๊ฐ๋ฅํฉ๋๋ค!
https://developer.apple.com/documentation/foundation/dateformatter
๋ ๊ฐ์ง์ ์์๋ฅผ ์ด์ฉํด ์ค๋์ ๋ ์ง๋ฅผ ์ถ๋ ฅํ๋ ์ฝ๋๋ ์ง๋ณด์์ด์!
func setDate() {
let now = Date()
let formatter = DateFormatter()
formatter.dateFormat = "yy.MM.dd"
let result = formatter.string(from: now)
date.text = result
}
๋์ด๋ฌด ๊ฐ๋จํ์ฃ ?!ใ
XCode ์ค๋ฅ ํด๊ฒฐ
XCode : Logging Error: Failed to initialize logging system. Log messages may be missing. If this issue persists, try setting IDEPreferLogStreaming=YES in the active scheme actions environment variables.
์ค๋ ์ค๋ฅ๋ฅผ ํด๊ฒฐํ๋ค๊ณ ๋ฐ๋ณตํด์ ์ฑ์ ์คํํ๋ค๋ณด๋ ๊ฐ์๊ธฐ ์์ ๋์ผํ ์ค๋ฅ๊ฐ ๋จ๋๋ผ๊ณ ์. ๊ตฌ๊ธ์ ์ณ๋ดค๋๋ Xcode๋ฅผ ์คํํ๋ ํ๊ฒฝ์ธ scheme์ ์ "IDEProferLogStreaming=YES"๋ผ๋ ๋ฌธ๊ตฌ๋ฅผ ์ค์ ํ๋ผ๊ณ ๋จ๋ ๋ฉ์์ง๋ผ๊ณ ํฉ๋๋ค.
ํด๊ฒฐ ๋ฐฉ๋ฒ์ Product -> Scheme -> Edit Scheme ์ ๋ค์ด๊ฐ์ ์
Run -> Arguments -> Arguments Passed On Launch ์ IDEProferLogStreaming=YES๋ฅผ ์ถ๊ฐํด ์ฃผ์๋ฉด ๋ฉ๋๋ค.
์ด๋ ๊ฒ ์ค๋ ์๋กญ๊ฒ ์ ํ ๊ฐ๋ ๋ค์ด์์ต๋๋ค!
CoreData ๊ด๋ จํ ์ด์๋ค์ ๋ฐ๋ก ํฌ์คํ ํ๊ฒ ์ต๋๋ค~!
๐ ์ฐธ๊ณ ๋ธ๋ก๊ทธ https://velog.io/@ihavebomin/Swift-UUID%EB%9E%80
๐ ์ฐธ๊ณ ๋ธ๋ก๊ทธ https://leeari95.tistory.com/30