์ด ๋ฌธ์์ ์๋ณธ์ ์ธ๋ถ ์ํค์์ ๊ฐ์ ธ์์ต๋๋ค.
1. ๊ฐ์[ํธ์ง]
U+FEFF.[1] ์ ๋์ฝ๋ ๋ฌธ์์ ํ๋.
์ด๋ฆ์ ZERO WIDTH NO-BREAK SPACE์ด๋, ์ค์ ๋ก๋ ๊ณต๋ฐฑ์ ์ผ์ข ์ผ๋ก ์ฐ์ด์ง๋ ์๊ณ ๋ฐ์ดํธ ์์ ๋งํฌ(byte order mark, BOM)๋ก ์ฐ์ธ๋ค. zero width non-breaking space์ ์ญํ ์ U+2060 WORD JOINER๊ฐ ๋์ ํ๋ค. ๊ทธ๋ฆฌ๊ณ ์๋ ๋ฌธ์์ฉ ๋ธ๋ญ์ธ Arabic Presentation Forms-B์ ๋ผ์ด ์๋ค.
์ด๋ฆ์ ZERO WIDTH NO-BREAK SPACE์ด๋, ์ค์ ๋ก๋ ๊ณต๋ฐฑ์ ์ผ์ข ์ผ๋ก ์ฐ์ด์ง๋ ์๊ณ ๋ฐ์ดํธ ์์ ๋งํฌ(byte order mark, BOM)๋ก ์ฐ์ธ๋ค. zero width non-breaking space์ ์ญํ ์ U+2060 WORD JOINER๊ฐ ๋์ ํ๋ค. ๊ทธ๋ฆฌ๊ณ ์๋ ๋ฌธ์์ฉ ๋ธ๋ญ์ธ Arabic Presentation Forms-B์ ๋ผ์ด ์๋ค.
2. ์์ธ[ํธ์ง]
์ด ๋ฌธ์๋ UTF-16์ผ๋ก ๋ ํ์ผ์ ์๋์ธ[2]์ด ์ฌ๋ฐ๋ฅด๊ฒ ํ๋จ๋ ์ ์๋๋ก ํ๊ธฐ ์ํด์ ํ์ผ์ ๋งจ ์์ ์ฝ์
๋๋ค. UTF-16์ ์ฒ๋ฆฌ ๋ฐฉ์์๋ ๋น
์๋์ธ๊ณผ ๋ฆฌํ ์๋์ธ์ด ์๋ค. ์๋ฅผ ๋ค์ด ๊ฐ(U+AC00)์ ๋น
์๋์ธ์์๋
AC 00์ผ๋ก ์ ์ฅ๋๊ณ ๋ฆฌํ ์๋์ธ์์๋ 00 AC๋ก ์ ์ฅ๋๋ค.[3] ์ด AC 00์ด๋ 00 AC๋ผ๋ ๋ฐ์ดํธ๋ง์ผ๋ก๋ ํ๋ก๊ทธ๋จ์ด ์๋์ธ์ ํ๋จํ ์ ์๊ธฐ์, ํ์ผ์ ๋งจ ์์ ์ด ๋ฌธ์๋ฅผ ์ฝ์
ํด์ ํ๋ก๊ทธ๋จ์ด ์๋์ธ์ ํ๋จํ ์ ์๋๋ก ๋์์ค๋ค. ์ฆ ์ด ๋ฌธ์๊ฐ ํ์ผ์ ๋งจ ์์ ์ฝ์
๋ ๊ฒฝ์ฐ, ํ๋ก๊ทธ๋จ์ด ํ์ผ์ ์ฝ์ด๋ค์์ ๋ ์ฒซ ๋ ๋ฐ์ดํธ๊ฐ FE FF์ด๋ฉด ๋น
์๋์ธ, FF FE์ด๋ฉด ๋ฆฌํ ์๋์ธ์์ ๋ฐ๋ก ํ๋จํ ์ ์๊ณ , ํ์ผ์ ์ฌ๋ฐ๋ฅด๊ฒ ์ด ์ ์๋ค.FF FE 00 ACโ (U+FEFF) U+AC00 โ ๊ฐFE FF 00 ACโ (U+FEFF) U+00AC โ ยฌ[4]FF FE AC 00โ (U+FEFF) U+00AC โ ยฌFE FF AC 00โ (U+FEFF) U+AC00 โ ๊ฐ
UTF-8์ ๊ฒฝ์ฐ ์ด๋ฐ ์๋์ธ ๋ฌธ์ ๊ฐ ์๋๋ฐ๋ ์ผ๋ถ ํ ์คํธ ์๋ํฐ๋ ๊ฐ์ ๋ก ์ด ๋ฌธ์๋ฅผ ์ฝ์ ํด์ ๋ฌธ์ ๋ฅผ ์ผ์ผํค๊ธฐ๋ ํ๋ค. ๋ค๋ง ์ ๋์ฝ๋ ๋ณด๊ธ์จ์ด ๋๋ฆฌ๋ค๋ณด๋ ์ผ๋ฐ ์ ์ ๋ฅผ ๋์์ผ๋ก ํ๋ ํ ์คํธ ์๋ํฐ๋ค์ ๊ฒฝ์ฐ BOM์ด ์์ผ๋ฉด ์ผ๋จ ์์ฑํ(๋ฐ ๊ฐ ์ธ์ด๋ณ ์ฝ๋ํ์ด์ง)์ผ๋ก ์ฝ๊ณ ๋ณด๋ ์์ผ๋ก ์ฒ๋ฆฌํ๋ ๊ฒฝ์ฐ๊ฐ ์๋น์. ๊ทธ๋ฌ๋ค๋ณด๋ UTF-8 ๋ฌธ์์๋ BOM์ ๋ฃ์ด๋๋๊ฒ ํธํ ๊ฒ ์ฌ์ค์ด๋ค. ์ฌ์ค ์ ๋์ฝ๋ ์ฒ๋ฆฌ์ ์ ๋๋ก ์ ๊ฒฝ์ฐ์ง ์๋ ์๋ํฐ ์ ์์๋ค์ด ๋ฌธ์ ๊ธด ํ์ง๋ง. UTF-8์์ BOM์
EF BB BF์ ๊ฐ์ด ํ๊ธฐ๋๋ค.๊ทธ๋ฐ๋ฐ ์ด๊ฒ ์ ๋์ค ์ชฝ๊น์ง ํฌํจํ๋ค๋ฉด ์๊ธฐ๊ฐ ๋ฌ๋ผ์ง๋ค. PHP์ ๊ฒฝ์ฐ ์ฝ์ด๋ค์ด๋ ๋ด์ฉ์ด PHP ์์ค๋ก ๋์ด ์์ผ๋ฉด PHP๋ก ์คํํ๊ธฐ ์์ํ๊ณ , ์ผ๋ฐ ํ ์คํธ๋ก ๋์ด ์์ผ๋ฉด ํ ์คํธ๋ก ์ฝ์ด๋ค์ด๊ธฐ ์์ํ๋๋ฐ PHP๋ BOM์ ์ธ์ํ์ง ๋ชปํ๋ค. ๊ทธ๋์ ์ผ๋ฐ ํ ์คํธ๋ก ์๊ณ ๋ณด๋๋๋ฐ PHP๊ฐ ์์๋๋ ์ค์๋์ ์ผ์ผํค๋ ๊ฒ. ์ด์ธ์ ์ฝ์์์ ํ ์คํธ ํ์ผ ํฉ์น๋ ๋ฐ๋ ์ ๋ก์ฌํญ์ด ์๊ธธ ์ ์๋ ๋ฑ, ๊ฐ๋ฐ์ ์ ์ฅ์์๋ BOM์ ์๋์ผ๋ก ๋ฃ์ด์ฃผ๋ ํ๋ก๊ทธ๋จ์ด ์คํ๋ ค ์๋จน๋๋ค. ์ด๋ฐ ๊ฒฝ์ฐ ์ ์ฅ ์ BOM์ ์ถ๊ฐํ ์ง ๋ง์ง ์ ํํ ์ ์๋ ์๋ํฐ ๋๋ IDE๋ก ๋ฌธ์๋ฅผ ์ ์ฅํด์ผ ํ๋ค. Notepad++, IntelliJ IDEA, Visual Studio Code, EditPlus ๋ฑ์ ๊ฐ๋ฐ ํด์ UTF-8์ BOM์ ์ถ๊ฐํ ์ง ์ฌ๋ถ๋ฅผ ์ ํํ ์ ์๋ค.
๋ํ์ ์ผ๋ก BOM์ ์๋ ์ฝ์ ํ๋ ํ ์คํธ ์๋ํฐ๊ฐ Microsoft Windows์ ๋ณด์กฐ ํ๋ก๊ทธ๋จ์ธ ๋ฉ๋ชจ์ฅ์ด๋ค. Windows ์ชฝ ์๋ํฐ ํ๋ก๊ทธ๋จ๋ค์ BOM์ด ์์ผ๋ฉด UTF-8์ด๋ผ๋ ๊ฒ์ ์ธ์ํ์ง ๋ชปํ๋ ๊ฒฝ์ฐ๊ฐ ์ข ์ข ๋ฐ์ํ๋ค. ๋ค๋ง Windows 10 19H1 ๋น๋์์ ๊ธฐ๋ณธ ์ธ์ฝ๋ฉ์ด ๊ธฐ์กด์ ANSI(=MBCS)์์ BOM ์๋ UTF-8์ผ๋ก ๋ฐ๋์์ผ๋ฉฐ, ์ ์ฅ ์์ BOM์ ๋ถ์ผ์ง ์ ํํ ์ ์๊ฒ ๋ฐ๋์๋ค. ๋น์ฃผ์ผ ์คํ๋์ค์์๋ ์์ค ํ์ผ์ ์ธ์ฝ๋ฉ์ UTF-8 BOM์ผ๋ก ์ค์ ํ๋ฉด ํ๊ธ์ด ์ ์ ์ถ๋ ฅ๋์ง๋ง, UTF-8์ผ๋ก ์ค์ ํ๋ฉด ํ์ผ์ ANSI๋ก ์ธ์ํด ์๋ํฐ์ ์ฝ์์์ ํ๊ธ์ด ์ ๋ถ ๊นจ์ง ์ฑ๋ก ๋์จ๋ค. ์๋์ฐ์์ ํ๊ธ์ ์ถ๋ ฅ์ํค๊ธฐ ์ํด UTF-8์ BOM์ ๋ถ์ฌ ์ ์ฅํ ํ์ผ์ ๊ฒฝ์ฐ, ์ ๋์ค ๊ณํต ์ปดํ์ผ๋ฌ(GCC, LLVM/Clang ๋ฑ)์ ๊ณต์ ํด์ ์ฌ์ฉํ๋ฉด BOM์ ์กด์ฌ๋ก ์ธํ์ฌ ์ค์๋์ ์ผ์ผํฌ ์๋ ์๋ค.
U+FFFE์๋ ๋ฌธ์๊ฐ ๋ฐฐ๋น๋์ด ์์ง ์๊ณ ์์ผ๋ก๋ ๋ฐฐ๋น๋ ์ผ์ด ์๊ธฐ ๋๋ฌธ์ U+FFFE๊ฐ ์ค์ ๋ก ์ฐ์ผ ์ผ์ ์๊ณ , ๋ฐ๋ผ์ U+FEFF๊ฐ U+FFFE์ ํผ๋๋ ์ฌ์ง๋ ์๋ค.
3. Browser Object Model[ํธ์ง]
์๋ฐ์คํฌ๋ฆฝํธ์์ ๋ธ๋ผ์ฐ์ ๊ด๋ จ ๊ธฐ๋ฅ์ ์กฐ์ํ ์ ์๊ฒ ๋ง๋ ๊ฐ์ฒด ๋ชจ๋ธ. window๋ผ๋ ๊ฐ์ฒด๋ก ์ ๊ทผํ์ฌ ์ฌ์ฉํ ์ ์๋ค.
4. Bill Of Material[ํธ์ง]
๊ตฌ๋งคํด์ผ๋ ๋ถํ๋ฑ์ ํ๋๋ก ๋ชจ์๋์ ์ฃผ๋ฌธ ๋ช
์ธ์.
์ฃผ๋ก ์ ์์ชฝ์์ ์ฐ์ด๋ ๋ง์ด๋ฉฐ ์ ํ์ ์ ์ํ ๋ ์ด์ ํ์ํ ๋ถ์ํ๋ฑ์ ๋ฐ์ดํฐ๋ฅผ ํ๋์ ํ์ผ๋ก ๋ชจ์์ ๋ง๋ค์ด๋์๊ฒ์ BOM์ด๋ผ๊ณ ํ๋ค. ํ๋ก ์ค๊ณ ๋จ๊ณ์์ ๋ถํ์ ์ง์ ํด ๋์ผ๋ฉด ECAD์ชฝ์์ BOM์ ํ์ํ ๋ถํ์ ์ด๋ฆ์ ๊ธฐ๋กํด ๋์ผ๋ฉฐ ํ์ ์ด BOM์ ๋ค๊ณ ๋ถํ์ฌ์ดํธ์ ๊ฐ์ ์ฃผ๋ฌธ๊ฐ๋ฅํ ๋ถํ์ด ์๋ ํ์ธํ ์ต์ข ์ฃผ๋ฌธ์ ํ๊ฒ๋๋ค.
์ฃผ๋ก ์ ์์ชฝ์์ ์ฐ์ด๋ ๋ง์ด๋ฉฐ ์ ํ์ ์ ์ํ ๋ ์ด์ ํ์ํ ๋ถ์ํ๋ฑ์ ๋ฐ์ดํฐ๋ฅผ ํ๋์ ํ์ผ๋ก ๋ชจ์์ ๋ง๋ค์ด๋์๊ฒ์ BOM์ด๋ผ๊ณ ํ๋ค. ํ๋ก ์ค๊ณ ๋จ๊ณ์์ ๋ถํ์ ์ง์ ํด ๋์ผ๋ฉด ECAD์ชฝ์์ BOM์ ํ์ํ ๋ถํ์ ์ด๋ฆ์ ๊ธฐ๋กํด ๋์ผ๋ฉฐ ํ์ ์ด BOM์ ๋ค๊ณ ๋ถํ์ฌ์ดํธ์ ๊ฐ์ ์ฃผ๋ฌธ๊ฐ๋ฅํ ๋ถํ์ด ์๋ ํ์ธํ ์ต์ข ์ฃผ๋ฌธ์ ํ๊ฒ๋๋ค.
[1] ์ธ์ฝ๋ฉ ๋ฐฉ์์ ๋ฐ๋ผ์ FF FE๋ก ํ๊ธฐํ๊ธฐ๋ ํ๋, ์ค์ ๋ก ํด์ํ ๋์๋ U+FEFF๋ก ์ฝํ๋ค. ๋ฐ๋ผ์ U+FFFE๋ผ๋ ๋ฌธ์๋ ์กด์ฌํ์ง ์๋๋ค.
[2] ํ๋ก๊ทธ๋๋ฐ์์ ๋ฉ๋ชจ๋ฆฌ ๋ฑ์ 1์ฐจ์ ๊ณต๊ฐ์์ ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ๋ฐฐ์ดํ๋์ง์ ๋ฐฉ์. ๊ฑธ๋ฆฌ๋ฒ ์ฌํ๊ธฐ์ ์์ธ๊ตญ์์ "๊ณ๋๋ฅผ ์ด๋ ์ชฝ์ผ๋ก ๊นจ๋จน๋๊ฐ?" ๋ผ๋ ๋
ผ์์ผ๋ก ์ ์๊น์ง ๋ฒ์ด๊ฒ ๋ ๊ฒ์์ ๋ช
์นญ์ด ์ ๋๋์๋ค.
[3] ์ด๋ ๊ฒ ๋ฐฉ์์ด ๋๋๋ ๊ฒ์ ๋ ๋ฐฉ์ ๋ค ๋๋ฆ์ ์ฅ์ ์ด ์๊ธฐ ๋๋ฌธ์ด๋ค. ํ๊ตญ์ด ์ํค๋ฐฑ๊ณผ์ ์๋์ธ ๋ฌธ์ ์ฐธ๊ณ .