๋ฐ˜์‘ํ˜•

swift protocol 1

[Swift] Protocol(ํ”„๋กœํ† ์ฝœ)์— ๋Œ€ํ•ด์„œ

์•ˆ๋…•ํ•˜์„ธ์š”~ ์˜ค๋Š˜์€ ํ”„๋กœํ† ์ฝœ์— ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค : ) ํ”„๋กœํ† ์ฝœ์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€? ํ”„๋กœํ† ์ฝœ(protocol)์€ ํŠน์ • ์ž‘์—… ๋˜๋Š” ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ๋ฉ”์„œ๋“œ, ํ”„๋กœํผํ‹ฐ, ๊ธฐํƒ€ ์š”๊ตฌ์‚ฌํ•ญ ๋“ฑ์˜ ์ฒญ์‚ฌ์ง„์ž…๋‹ˆ๋‹ค. ํ”„๋กœํ† ์ฝœ์€ ์–ด๋–ค ํƒ€์ž…์ด๋“  ํ•ด๋‹น ํ”„๋กœํ† ์ฝœ์„ ์ฑ„ํƒํ•  ์ˆ˜ ์žˆ๋„๋ก ์ •์˜๋ฉ๋‹ˆ๋‹ค. ํ”„๋กœํ† ์ฝœ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜๋ฉ๋‹ˆ๋‹ค. protocol MyProtocol { // ํ”„๋กœํ† ์ฝœ ์ •์˜ } ํ”„๋กœํ† ์ฝœ์€ ํด๋ž˜์Šค, ๊ตฌ์กฐ์ฒด, ์—ด๊ฑฐํ˜• ๋“ฑ ๋ชจ๋“  ํƒ€์ž…์— ์ ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœํ† ์ฝœ์—์„œ ์ •์˜๋œ ์š”๊ตฌ์‚ฌํ•ญ์„ ๊ตฌํ˜„ํ•œ ํƒ€์ž…์€ ํ•ด๋‹น ํ”„๋กœํ† ์ฝœ์„ ์ฑ„ํƒ(adopt)ํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœํ† ์ฝœ์˜ ์‚ฌ์šฉ๋ฐฉ๋ฒ• 1. ๋ฉ”์„œ๋“œ ํ”„๋กœํ† ์ฝœ์—์„œ ๋ฉ”์„œ๋“œ๋ฅผ ์ •์˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. protocol MyProtocol { func myMethod() } ์œ„์˜ ์˜ˆ์ œ์—..

iOS/Swift 2023.04.02
๋ฐ˜์‘ํ˜•