Initializer

ยท๐ŸŒฑ SeSAC
์„ ์–ธ๊ณผ ์ดˆ๊ธฐํ™” ์„ ์–ธ๊ณผ ๋™์‹œ์— ์ดˆ๊ธฐํ™” ์„ ์–ธ๋งŒ ํ•˜๊ณ  ๋‚˜์ค‘์— ์ดˆ๊ธฐํ™” ์˜ต์…”๋„ ๊ฐ’์œผ๋กœ ํƒ€์ž…์„ ์ •ํ•ด์ค„์ง€ ์•„๋‹์ง€ ๊ฒฐ์ • ํŒŒ์ผ ์ถ”๊ฐ€ ์‹ค์ œ ํŒŒ์ผ์˜ ๊ฒฝ๋กœ์™€ ๊ด€๊ณ„(Reference)๋ฅผ ๋Š์–ด์ฃผ์–ด์•ผ ํ•œ๋‹ค. (์ถ”๊ฐ€ํ•  ๋•Œ๋‚˜ ์‚ญ์ œํ•  ๋•Œ) Class(ํด๋ž˜์Šค) Super Class, Sub Class ๋ถ€๋ชจ-์ž์‹์˜ ๊ด€๊ณ„๋Š” ์ƒ๋Œ€์ ์ธ ๊ฒƒ์ด๋‹ค. Super Class(๋ถ€๋ชจ ํด๋ž˜์Šค) Sub Class(์ž์‹ ํด๋ž˜์Šค) -> Sub Classing(์ž์‹์„ ๋งŒ๋“œ๋Š” ๊ณผ์ •) Base Class(์–ด๋””์—์„œ๋„ ์ƒ์†๋ฐ›๊ณ  ์žˆ์ง€ ์•Š๋Š” ํด๋ž˜์Šค) Inheritance ๋‹ค๋ฅธ ํด๋ž˜์Šค๋กœ๋ถ€ํ„ฐ ๋ฉค๋ฒ„(ํ”„๋กœํผํ‹ฐ๋‚˜ ๋ฉ”์„œ๋“œ)๋ฅผ ๊ฐ€์ ธ๋‹ค๊ฐ€ ์“ธ ์ˆ˜ ์žˆ๋Š”๋ฐ ์ด๋ฅผ ์ƒ์†์ด๋ผ๋Š” ์šฉ์–ด๋กœ ๋ถ€๋ฅผ ์ˆ˜ ์žˆ๋‹ค. ์ƒ์†์„ ๋ฐ›์€ ํด๋ž˜์Šค๋ฅผ Sub Class๋ผ๊ณ  ๋ถ€๋ฅด๊ณ , ์ƒ์†์„ ํ•ด์ค€ ํด๋ž˜์Šค๋Š” Super Class์ด๋‹ค. ..
ยท๐ŸŽ iOS & Swift
์•ˆ๋…•ํ•˜์„ธ์š”, ํƒœ๋ผ์ž…๋‹ˆ๋‹ค~ ์˜ค๋Š˜์€ Convenience initializer๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค! ์ด๋‹ˆ์…œ๋ผ์ด์ €๋Š” ํฌ๊ฒŒ 2๊ฐ€์ง€๋ฅผ ์‚ดํŽด๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Designated initializer, Covenience initializer ์ฐจ๋ก€๋Œ€๋กœ ์ง€์ • ์ด๋‹ˆ์…œ๋ผ์ด์ €, ํŽธ์˜ ์ด๋‹ˆ์…œ๋ผ์ด์ €๋ผ๊ณ  ํ•ด์„ํ•ด๋ณผ ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ง€์ • ์ด๋‹ˆ์…œ๋ผ์ด์ €๋Š” ํด๋ž˜์Šค(๊ตฌ์กฐ์ฒด)๋‚ด์˜ ๋ชจ๋“  ํ”„๋กœํผํ‹ฐ๊ฐ€ ์ดˆ๊ธฐํ™”๋  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ๋Š” ์ด๋‹ˆ์…œ๋ผ์ด์ €์ด๊ณ , ํŽธ์˜ ์ด๋‹ˆ์…œ๋ผ์ด์ €๋Š” ์ถ”๊ฐ€์ ์ธ ์ž‘์—…์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ๋Š” ๋ณด์กฐ ์ด๋‹ˆ์…œ๋ผ์ด์ €์ž…๋‹ˆ๋‹ค. Designated init ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ ์ผ๋ถ€๋ฅผ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์„ค์ •ํ•ด์„œ Convenience init ์•ˆ์—์„œ Designated init ์„ ํ˜ธ์ถœํ•ด์„œ ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ค‘์š”ํ•œ ํฌ์ธํŠธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. Convenience i..
taeeekki
'Initializer' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก