static ๋ณ์ ๋ฐ ํจ์๋ ์ธ์คํด์ค๋ฅผ ์์ฑํ์ง ์๊ณ ์ ๊ทผํ๊ธฐ ์ํด ์ฌ์ฉํ๋ค. swift์์๋ ์ด๋์ ๊ด๋ฆฌํ๋ ๊ฒ์ด ์ข์๊น?
swift์์ ์ฌ์ฉํ๋ Method๊ฐ ๊ถ๊ธํ๋ค๋ฉด ํด๋น๊ธ์ ์ฝ๊ณ ์ค์.
ํต์ฌ ์ ๋ฆฌ
Swift์์ static ํจ์ ๋ฐ ๋ณ์๋ฅผ ๊ด๋ฆฌํ๊ณ ์ถ๋ค๋ฉด enumeration์ ์ฌ์ฉํ์.
- ์์ฑ์๊ฐ ์๋ค.
๋๊ธฐ
- ํ๋ก์ ํธ๋ฅผ ํ๋ค๋ณด๋ฉด, ์์๋ ์ ์ญ์์ ์ฌ์ฉํ ํจ์๋ฅผ ๊ด๋ฆฌํด์ผํ ํ์์ฑ์ด ์๊ธด๋ค.
- ์ด๋ฐ ๊ฒฝ์ฐ
static
๋ณ์๋ ํจ์๋ฅผ ํตํด ๋ง์ด๋ค ๊ด๋ฆฌํ๋๋ฐ, ์ด๋๋ค๊ฐ ํด์ผํ ์ง์ ๋ํ ์๋ฌธ์ด ๋ ๋ค. - ์ฆ, namespace๋ฅผ ์ด๋ค ๊ฒ์ผ๋ก ํด์ผํ ์ง์ ๋ํ ๊ณ ๋ฏผ์ด๋ค.
- namespace: ์ด๋ฆ ์ถฉ๋ ๋ฐฉ์ง ๋ฐ ์ฝ๋ ๋ถ๋ฆฌ๋ฅผ ์ํ ๊ฐ๋
- ๋ค์ํ ๊ธ์ ์ฝ๊ณ ์ ๋ฆฌํด๋ณธ๋ค.
๊ฒฐ๋ก
- ์ ๋ฆฌ๋ฅผ ์ํด ๋ง์ ๊ธ์ ์ฐพ์๋ณด์์ผ๋, ๋ ๋ง์ ๊ทผ๊ฑฐ๋ฅผ ์ฐพ๊ธฐ ์ด๋ ค์ ๋ค.
Class | Struct | Enum | |
---|---|---|---|
์ฅ์ | - ์์ฑ๋ ์ํ์ด ์๋ค. | ||
๋จ์ | - ์์ฑ๋ ์ํ์ด ์๋ค. | - ์์ฑ๋ ์ํ์ด ์๋ค. |
- Swift์์ enum์ ์ ์ ๋ณ์, ์ ์ ํจ์ ์ ์ธ์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์, ๊ธฐํ ๋์๋ค๋ณด๋ค ๋ช ๋ฐฑํ ์ข๋ค.
- Class, Struct์ ๊ฐ์ด ์์ฑ์๋ฅผ ๋ง๊ฑฐ๋ ํ๋ ์๊ณ ์์ฒด๋ฅผ ํ ํ์๊ฐ ์๋ค.
- ์ถ๊ฐ์ ์ผ๋ก case๋ฌธ๊น์ง ํ์ฉ์ด ๊ฐ๋ฅํ๋ค.
- ๋ฌผ๋ก ์์ฑ์๋ฅผ ๋ง๋ค ์ ์์ผ๋, ๋ง๋ค์ง ์์ผ๋ฉด ๊ทธ๋ง์ด๋ค.
์ถ๊ฐ์ ์ธ ๋์
- Constant๋ก ๋ชจ๋ ๊ฒ์ ๊ด๋ฆฌํ๊ธฐ ์ซ๋ค๋ฉด ์์ ๊ฐ์ด ์ฌ์ฉํ ์๋ ์๋ค.
- static์ผ๋ก ์ ์ธํ๋๋ผ๋, ์ธ์คํด์ค์์ ๋ฐ๋ก ์ ๊ทผํ์ฌ ์ฌ์ฉํ ์ ์๋ค.
- ์ด ๋ถ๋ถ์ ์ด์ฐ๋ณด๋ฉด ์๋ฐ์ ๋น์ทํ ์ง๋..?
- (์๋ฐ๋ static์ผ๋ก class์ ์ ์ธํ๋๋ผ๋ ์ธ์คํด์ค์์ ์ ๊ทผํ ์ ์๋ค.)
- ์ด ๋ถ๋ถ์ ์ด์ฐ๋ณด๋ฉด ์๋ฐ์ ๋น์ทํ ์ง๋..?