profile
๊ฒŒ๋ฐœ์ž๐Ÿฆ€ ๋˜๋Š” ์ค‘.. ๊ถ๊น€ํ•˜๋‹ค.. ๊ถ๊น€ํ•ด..

21. 11. 17 Not ๋…ผ๋ฆฌ์—ฐ์‚ฐ์ž

Bool

2021๋…„ 11์›” 24์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

21. 11. 15 LLDB

LLVM front-end debugger ๋””๋ฒ„๊ฑฐ ๋„๊ตฌ๋‹ค..!@์šฐ๋ฆฌ๊ฐ€ ์ž‘์„ฑํ•œ ์–ธ์–ด๋ฅผ LLVM ํ”„๋กœํ† ์ฝœ์„ ์ค€์ˆ˜ํ•˜๋Š” ๊ณผ์ •์—์„œ ์ƒ๊ธฐ๋Š” ์–ด์ฉŒ๊ตฌ,,์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ ๋‹จ๊ณ„ ์ค‘์— ๋ฐœ์ƒํ•˜๋Š” ์˜ค๋ฅ˜๋‚˜ ๋ฒ„๊ทธ๋ฅผ ์ฐพ์•„๋‚ด๊ณ  ๊ทธ ์›์ธ์„ ๋ฐํžˆ๊ณ  ์ˆ˜์ •ํ•˜๋Š” ์ž‘์—…๊ณผ์ •์–ธ์–ด โ†’ ์–ธ์–ด๋กœ ์ธ์ฝ”๋”ฉํ•˜๋Š” ๊ณผ์ •์›

2021๋…„ 11์›” 24์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

21. 11. 09 Unit test, Double stack

: ์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ์†Œ์Šค ์ฝ”๋“œ์˜ ํŠน์ • ๋ชจ๋“ˆ์ด ์˜๋„๋œ ๋Œ€๋กœ ์ •ํ™•ํžˆ ์ž‘๋™ํ•˜๋Š”์ง€ ๊ฒ€์ฆํ•˜๋Š” ์ ˆ์ฐจ. ๋ชจ๋“  ํ•จ์ˆ˜์™€ ๋ฉ”์„œ๋“œ์— ๋Œ€ํ•œ test case๋ฅผ ์ž‘์„ฑํ•˜๋Š” ์ ˆ์ฐจ๋ฅผ ๋งํ•œ๋‹ค. ํ…Œ์ŠคํŠธ๋ฅผ ํ•œ๋‹ค๋Š” ๊ฒƒ์€ ์•ˆ์ •์„ฑ์„ ๋ณด์žฅํ•˜๋Š” ๊ฒƒ! ์œ ๋‹› ํ…Œ์ŠคํŠธ์˜ ์žฅ์ ํ•ด๋‹น ๋ฉ”์„œ๋“œ์— ๋Œ€ํ•ด ๋…๋ฆฝ์ ์œผ๋กœ ํ…Œ์ŠคํŠธ๋ฅผ

2021๋…„ 11์›” 24์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

21. 11. 08 ์ž๊ตฌ์•Œ

๋ฌธ์ œํ•ด๊ฒฐ์„ ์œ„ํ•œ ์ ˆ์ฐจ/ ๋ฐฉ๋ฒ• (์—ฌ๋Ÿฌ ๋™์ž‘๋“ค์˜ ๋ชจ์Œ) ex) ํ…ŒํŠธ๋ฆฌ์Šค์ฒ˜๋Ÿผ ๋ฌธ์ œ๋ฅผ ์ˆœ์ฐจ์ ์œผ๋กœ ํ•ด๊ฒฐํ•ด ๋‚˜๊ฐ€๋Š” ๋Š๋‚Œ, ์—ฌํ–‰๊ฐ€๋ฐฉ์„ ๊พธ๋ฆด ๋•Œ, ํ•„์š”ํ•œ ๊ฒƒ์„ ์–ด๋–ค ์ˆœ์„œ๋Œ€๋กœ ๋„ฃ์„์ง€ ๊ณ ๋ฏผํ•˜๋Š” ๊ฒƒ์ด๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค ๋Œ€ํ‘œ์  ์•Œ๊ณ ๋ฆฌ์ฆ˜ - ์ •๋ ฌ, ํƒ์ƒ‰, ์žฌ๊ท€ ๋“ฑ (์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋น„๊ต์˜์ƒ

2021๋…„ 11์›” 24์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

21. 11. 07 Protocol, Delegation

Protocol โ†’ ๋ฉ”์„œ๋“œ, ํ”„๋กœํผํ‹ฐ ๊ทธ๋ฆฌ๊ณ  ํŠน์ • ์ž‘์—…์ด๋‚˜ ๊ธฐ๋Šฅ์˜ ๋ถ€๋ถ„์ด ์ ํ•ฉํ•œ ๋‹ค๋ฅธ ์š”๊ตฌ์‚ฌํ•ญ์˜ ์ฒญ์‚ฌ์ง„์„ ์ •์˜ํ•œ๋‹ค. ํ”„๋กœํ† ์ฝœ์€ ์š”๊ตฌ์‚ฌํ•ญ์˜ ๊ตฌํ˜„์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ํด๋ž˜์Šค, ๊ตฌ์กฐ์ฒด ๋˜๋Š” ์—ด๊ฑฐํ˜•์— ์˜ํ•ด ์ฑ„ํƒ๋  ์ˆ˜ ์žˆ๋‹ค. ํ”„๋กœํ† ์ฝœ์˜ ์š”๊ตฌ์‚ฌํ•ญ์— ์ถฉ์กฑํ•˜๋Š” ๋ชจ๋“  ํƒ€์ž…์€ ํ”„๋กœํ† ์ฝœ์„

2021๋…„ 11์›” 24์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

21. 11. 06 Generic

๋ญ”๊ฐ€ ํฌ๊ด„์ ์ด๊ณ  ์ผ๋ฐ˜์ ์ผ ๊ฒƒ ๊ฐ™์€ ๋Š๋‚Œ์  ๋Š๋‚Œ..generic์€ Swift์˜ ๊ฐ•๋ ฅํ•œ ๋„๊ตฌ์ค‘ ํ•˜๋‚˜! Swift ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋Œ€๋ถ€๋ถ„์€ Generic์œผ๋กœ ์ž‘์„ฑ๋˜์–ด์žˆ๊ณ , Array์™€ Dictionary๋Š” Generic ์ปฌ๋ ‰์…˜์ด๋‹ค.์—ฌ๊ธฐ์„œ T๋ผ๋Š” ๊ฒƒ์€ Placehorlder

2021๋…„ 11์›” 24์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

21. 11. 04 TDD, ์—ฐ์‚ฐํ”„๋กœํผํ‹ฐ

TDD๋ž€ Test Driven Development์˜ ์•ฝ์ž๋กœย ํ…Œ์ŠคํŠธ ์ฃผ๋„ ๊ฐœ๋ฐœ์ด๋‹ค. ๋ฐ˜๋ณต ํ…Œ์ŠคํŠธ๋ฅผ ์ด์šฉํ•œ ์†Œํ”„ํŠธ์›จ์–ด ๋ฐฉ๋ฒ•๋ก ์œผ๋กœ, ์ž‘์€ ๋‹จ์œ„์˜ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ์ด๋ฅผ ํ†ต๊ณผํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๋‹จ๊ณ„๋ฅผ ๋ฐ˜๋ณตํ•˜์—ฌ ๊ตฌํ˜„ํ•œ๋‹ค. ์ด ๋ฐฉ๋ฒ•์„ ๋งŒ๋“  Kent Beck์€ TDD๊ฐ€

2021๋…„ 11์›” 24์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

21. 10. 22 IBOutlet & IBAction, Access Control

Interface Builder@๋Š” ์ปดํŒŒ์ผ๋Ÿฌ์—๊ฒŒ ์–ด๋–ค ์†์„ฑ์„ ๊ฐ€์ง€๊ณ ์žˆ๋‹ค๊ณ  ์ „ํ•˜๋Š” ์—ญํ• ์„ ํ•˜๋Š” ์˜ˆ์•ฝ์–ด์ปดํŒŒ์ผ๋Ÿฌ์—๊ฒŒ @๊ฐ€ ๋ถ™์€ ๋ช…๋ น์–ด์— ๋Œ€ํ•ด ์–ด๋–ค attribute๊ฐ€ ๋ถ€์—ฌ๋˜์—ˆ์Œ์„ ๋งํ•œ๋‹ค.@IBAction โ†’ Interface Builder์™€ ์—ฐ๊ฒฐ๋œ Action์ด ์žˆ๋‹ค.@UI

2021๋…„ 11์›” 24์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

21. 10. 20 Namespace, CustomStringConvertible

: ๊ด€๋ จ์žˆ๋Š” ๊ฒƒ๋“ค๋ผ๋ฆฌ ๋ชจ์•„๋†“์€ ๊ณต๊ฐ„?case๊ฐ€ ์—†๋Š” ์—ด๊ฑฐํ˜•์€ ์ธ์Šคํ„ด์Šคํ™” ๋˜์ง€ ์•Š๊ณ  ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์—ญํ• ์„ ํ•œ๋‹ค. ํƒ€์ž…ํ”„๋กœํผํ‹ฐ ์‚ฌ์šฉ!case๊ฐ€ ์—†๋Š” ์—ด๊ฑฐํ˜•์„ ์‚ฌ์šฉํ•  ๋•Œ ์žฅ์ ์€, ๋œปํ•˜์ง€ ์•Š์€ ์ดˆ๊ธฐํ™”๋ฅผ ๋ง‰์„ ์ˆ˜ ์žˆ๊ณ  namespace์˜ ์—ญํ• ๋งŒ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.์—ด๊ฑฐํ˜•์ด๋‚˜ ๊ตฌ์กฐ์ฒด๋ฅผ

2021๋…„ 11์›” 24์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

21. 10. 19 ์ €์žฅํ”„๋กœํผํ‹ฐ, ์—ฐ์‚ฐํ”„๋กœํผํ‹ฐ, init, ์ค‘์ฒฉํƒ€์ž…

ํ”„๋กœํผํ‹ฐ๋Š”ย ๊ฐ’์„ ํŠน์ • ํด๋ž˜์Šค(class), ๊ตฌ์กฐ์ฒด(struct), ์—ด๊ฑฐํ˜•(enum)๊ณผ ์—ฐ๊ฒฐํ•œ๋‹ค.Swift์˜ PropertiesStored Property(์ €์žฅ ํ”„๋กœํผํ‹ฐ)Computed Property(์—ฐ์‚ฐ ํ”„๋กœํผํ‹ฐ)Type Property(ํƒ€์ž… ํ”„๋กœํผํ‹ฐ)์ €์žฅ ํ”„๋กœํผํ‹ฐ๋Š”

2021๋…„ 11์›” 24์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

21. 10. 18 ๊ตฌ์กฐ์ฒด์™€ ํด๋ž˜์Šค

๊ตฌ์กฐ์ฒด์™€ ํด๋ž˜์Šค์˜ ๊ณตํ†ต์ ๊ฐ’์„ ์ €์žฅํ•  ํ”„๋กœํผํ‹ฐ๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ๋‹ค.๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ฉ”์†Œ๋“œ๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ๋‹ค.subscripts ๋ฌธ๋ฒ•์„ ํ†ตํ•ด ํ”„๋กœํผํ‹ฐ์— ์ ‘๊ทผํ•˜๋„๋ก subscripts๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ๋‹ค.์ดˆ๊ธฐํ™” ์ƒํƒœ๋ฅผ ์„ค์ •ํ•˜๊ธฐ ์œ„ํ•œ ์ด๋‹ˆ์…œ๋ผ์ด์ €๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ๋‹ค.๊ธฐ๋ณธ ๊ตฌํ˜„ ์ด์ƒ

2021๋…„ 11์›” 24์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

21. 10. 15 ์žฌ๊ท€ํ•จ์ˆ˜

array.shuffle()shuffle()์€ ๋ฐฐ์—ด์˜ ์ˆœ์„œ๋ฅผ ๋žœ๋ค์œผ๋กœ ์„ž๋Š” ํ•จ์ˆ˜์ด๋‹ค! ์ง€๊ธˆ ์ง„ํ–‰์ค‘์ธ ๊ฐ€์œ„๋ฐ”์œ„๋ณด๊ฒŒ์ž„ ํ”„๋กœ์ ํŠธ์—์„œ ๋งค์ง๋„˜๋ฒ„ ์‚ฌ์šฉ์„ ์ง€์–‘ํ•˜๊ณ ์ž ๋ฐฉ๋ฒ•์„ ์ฐพ๋‹ค๊ฐ€ array์— 1~3d์˜ ์ •์ˆ˜๋ฅผ ๋„ฃ๊ณ  shuffle์„ ํ†ตํ•ด ์ˆœ์„œ๋ฅผ ๋žœ๋คํ™”ํ•œ ํ›„ ์š”์†Œ๋ฅผ ๋ฝ‘์•„์„œ ์“ฐ๋Š” ๋ฐฉ๋ฒ•

2021๋…„ 11์›” 23์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

21. 10. 14 ์—ด๊ฑฐํ˜•, ์˜ค๋ฅ˜์ฒ˜๋ฆฌ

์ดˆ๊ธฐ ์ผ€์ด์Šค ๊ฐ’์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด initializer๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ๋‹ค.์›๋ž˜ ๊ตฌํ˜„์„ ๋„˜์–ด ๊ธฐ๋Šฅ์„ ํ™•์žฅํ•˜๋„๋ก ํ™•์žฅ๋  ์ˆ˜ ์žˆ๋‹ค.ํ‘œ์ค€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ํ”„๋กœํ† ์ฝœ์„ ์ค€์ˆ˜ํ•  ์ˆ˜ ์žˆ๋‹ค.์—ด๊ฑฐํ˜•์—๋Š” ๋‹จ์ˆ˜ํ˜• ์ด๋ฆ„์„ ์“ด๋‹ค.switch๋ฌธ์€ ์—ด๊ฑฐํ˜•์˜ ๊ฒฝ์šฐ๋ฅผ ๊ณ ๋ คํ•  ๋•Œ ์ฒ ์ €ํ•ด์•ผ ํ•œ๋‹ค.์—ด๊ฑฐ

2021๋…„ 11์›” 20์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

21. 10. 07 ํ•˜๋“œ์ฝ”๋”ฉ, ํƒ€์ž…

์ผ์ผํšŒ๊ณ 

2021๋…„ 11์›” 3์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€