14์ฅ: namespace
1. namespace ๊ฐ์
TCL์ namespace๋ ๋ณ์์ ํ๋ก์์ ๋ฅผ ๋ ผ๋ฆฌ์ ์ผ๋ก ๊ทธ๋ฃนํํ์ฌ ์ด๋ฆ ์ถฉ๋์ ๋ฐฉ์งํ๊ณ ์ฝ๋๋ฅผ ๋ชจ๋ํํ๋ ๋ฉ์ปค๋์ฆ์ ๋๋ค.
namespace, double colon, array๋ ๋๊ท๋ชจ ๋ณ์ data ์ฒ๋ฆฌ๋ฅผ ํ๋๋ฐ ์ ๋ฆฌํฉ๋๋ค. ์๊ท๋ชจ ๋ณ์ ์คํฌ๋ฆฝํ ๋ง ํ๋ ๊ฒฝ์ฐ, 14~16์ฅ์ ๋์ด๊ฐ์ ๋ ๋ฉ๋๋ค. (๋์ด๋๊ฐ ์์ด์, ํฌ๊ธฐํ์ค๊น๋ด ๐)
2. namespace ์์ฑ ๋ฐ ์ฌ์ฉ
2.1 namespace ์์ฑ
2.2 namespace ๋ด ์์ ์ ๊ทผ
::๋ Double colon์ด๋ผ๊ณ ๋ถ๋ฆฝ๋๋ค. ๋ค์ ์ฅ์์ ์์ธํ ์ดํด๋ด ๋๋ค.
3. namespace ๋ช
๋ น์ด
3.1 ํ์ฌ namespace ํ์ธ
3.2 namespace ๋ชฉ๋ก ์กฐํ
3.3 namespace ์กด์ฌ ์ฌ๋ถ ํ์ธ
3.4 namespace ์ญ์
4. namespace ์ค์ฒฉ
namespace๋ ์ค์ฒฉ๋ ์ ์์ต๋๋ค.
5. namespace import/export
5.1 ๋ช
๋ น์ด export
5.2 ๋ช
๋ น์ด import
6. namespace path
๋ค๋ฅธ namespace์ ๋ช ๋ น์ด๋ฅผ import ์์ด ์ฌ์ฉํ ์ ์๊ฒ ํฉ๋๋ค.
7. namespace ๋ณ์
7.1 ๋ณ์ ์ ์ธ
7.2 ๋ณ์ ์ ๊ทผ
8. namespace ensemble
๊ด๋ จ ๋ช ๋ น์ด๋ค์ ๊ทธ๋ฃนํํ์ฌ ์ฌ์ฉํ ์ ์์ต๋๋ค.
9. ์ฃผ์์ฌํญ โ ๏ธ
์ ์ญ namespace๋ฅผ ๊ณผ๋ํ๊ฒ ์ค์ผ์ํค์ง ์๋๋ก ์ฃผ์ํ์ธ์.
namespace ์ด๋ฆ ์ถฉ๋์ ์ฃผ์ํ์ธ์.
import ์ฌ์ฉ ์ ์ด๋ฆ ์ถฉ๋ ๊ฐ๋ฅ์ฑ์ ๊ณ ๋ คํ์ธ์.
10. ํ๊ณผ ์๋ น ๐ก
ํฐ ํ๋ก์ ํธ์์๋ namespace๋ฅผ ์ฌ์ฉํ์ฌ ์ฝ๋๋ฅผ ๋ชจ๋ํํ์ธ์.
namespace ์ด๋ฆ์ ์๋ฏธ์๊ณ ๋ช ํํ๊ฒ ์ง์ผ์ธ์.
ํ์ํ ๊ฒฝ์ฐ namespace ๋ณ์นญ์ ์ฌ์ฉํ์ฌ ๊ธด ์ด๋ฆ์ ๊ฐ์ํํ ์ ์์ต๋๋ค.
namespace ๋ด๋ถ์์ ๋ณ์๋ฅผ ์ฌ์ฉํ ๋๋
variable
๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ธ์.
11. ์ฑ๋ฅ ๊ณ ๋ ค์ฌํญ ๐
namespace๋ฅผ ๊ณผ๋ํ๊ฒ ์ค์ฒฉํ๋ฉด ์ฑ๋ฅ์ ์ํฅ์ ์ค ์ ์์ต๋๋ค.
์์ฃผ ์ฌ์ฉ๋๋ ๋ช ๋ น์ด์ ๊ฒฝ์ฐ, ์ ์ฒด ๊ฒฝ๋ก๋ฅผ ์ฌ์ฉํ๋ ๊ฒ๋ณด๋ค importํ์ฌ ์ฌ์ฉํ๋ ๊ฒ์ด ์ฝ๊ฐ ๋ ๋น ๋ฅผ ์ ์์ต๋๋ค.
TCL์ namespace๋ฅผ ๋ง์คํฐํ์ฌ ๊น๋ํ๊ณ ๋ชจ๋ํ๋ ์ฝ๋๋ฅผ ์์ฑํ์ธ์!
Last updated