๋ด๊ฐ ์๊ธฐ๋ก json ํ์ ์๊ณ ,
์ด๊ฑฐ ๋ง๊ณ ๊ฐ์ ์ง์ ?? ์๋ฅผ๋ค์ด C#ํด๋ผ์ด์ธํธ์ C++์๋ฒ๊ฐ ํต์ ํ๋ค๊ณ ํ๋ฉด... ๋ฐ์ดํฐ ๋จ์๊ฐ ๋ญ์ผ? ์ด์๋ธ๋ฆฌ ๋ญ ์ด๋ฐ๊ฑด ์๋๊ฑฐ๊ฐ๊ณ
์ด๋ฐ๊ฑธ ํจํท์ด๋ผ๊ณ ๋ถ๋ฅด๋๊ฑฐ์ผ?
๋ด๊ฐ ์๊ธฐ๋ก json ํ์ ์๊ณ ,
์ด๊ฑฐ ๋ง๊ณ ๊ฐ์ ์ง์ ?? ์๋ฅผ๋ค์ด C#ํด๋ผ์ด์ธํธ์ C++์๋ฒ๊ฐ ํต์ ํ๋ค๊ณ ํ๋ฉด... ๋ฐ์ดํฐ ๋จ์๊ฐ ๋ญ์ผ? ์ด์๋ธ๋ฆฌ ๋ญ ์ด๋ฐ๊ฑด ์๋๊ฑฐ๊ฐ๊ณ
์ด๋ฐ๊ฑธ ํจํท์ด๋ผ๊ณ ๋ถ๋ฅด๋๊ฑฐ์ผ?
๋ฐ์ด๋๋ฆฌ๋ฅผ ์ฃผ๊ณ ๋ฐ๋๋ค๊ณ ์๊ฐํ์๋ฉด ๋ ๊ฒ๋๋ค. ์ฒซ ๋ฐ์ดํธ๋ ๋๋ถ๋ถ ํ๋กํ ์ฝ์ด๋ผ๊ณ ๊ท์น์ ์ ํ๊ณ ์ฐจ๋ก๋๋ก ๋ชจ๋ ์ฝ์ด๋ธ ํ์ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ผ๋ก์.
ใด ๊ทธ ๋ฐ์ด๋๋ฆฌ ์์ ์๋ฅผ๋ค์ด x,y,z ์ขํ๋ฅผ ๋ด์์ ๋๊ธธ์ ์๋๊ฑด๊ฐ์?
์๋ฅผ ๋ค์ด์ ๋ด๊ฐ A0์ด๋ผ๋ HEX๊ฐ์ ํ๋ ์ด์ด ์ขํ ๋ผ๊ณ ๊ท์น์ ์ ํ๋ฉด, [A0 <x์์น> <y์์น> <์ฒดํฌ์ฌ>]์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ง๋ ฌํ๋ฅผ ํ ๋ค์ ๋ณด๋ด๋ฉด, ๋ฐ์ ์ชฝ์์๋, A0์ ์ฝ๊ฒ ๋ ๊ฒฝ์ฐ ๊ทธ ๋ค์์ x์ y๋ ์ฒดํฌ์ฌ๊น์ง ๋ชจ๋ ์ฝ์ ํฌ๊ธฐ๊ฐ ๋๋ฉด ๋ชจ๋ ์ฝ์ด๋ค์ด๊ณ ์ฒ๋ฆฌํ๊ฒ ์ฃ .
ใด ์๋๋ ๊ถ๊ธํฉ๋๋ค. ๊ทธ๊ฒ http, jsonํต์ ๋ณด๋ค ๋น ๋ฅธ๊ฐ์? ์๋๋ผ๋ฉด, tcp ํต์ ์ ํ๋ ์ด์ ๋ ๋ฌด์์ธ๊ฐ์? ๋ถ๋ช ์ฅ์ ์ด ์์ผ๋ ํ๋๊ฑธํ ๋ฐ์
์๋ฒ์ ํด๋ผ์ด์ธํธ ๊ฐ์ ํต์ ์ ๋ฐ์ด๋๋ฆฌ๋ผ๋ ๋ฐ์ดํธ ๋ฐฐ์ด๋ก ์ฃผ๊ณ ๋ฐ์ต๋๋ค. ๊ทธ๋ฌ๋๊น x y z ๊ฐ์ ์ฌ๋ฌ๊ฐ์ง ๋ฐ์ดํฐ๋ค์ ์ง๋ฌธ์๋๊ป์ '๊ท์น'์ ์ ํ์๊ณ ํต์ ํด์ผ ํ๋ ๊ฑฐ์ฃ
bson ์ฐธ๊ณ ํ์ json์ ๋ฐ์ด๋๋ฆฌ๋ก ๋ฐ๊พผ ํ์์
์๋๋ฉด ๋ฐ์ด๋๋ฆฌ ๋จ์๋ก ํต์ ํ๋ ๊ฒ์ด ๋ฐ์ดํฐ ๋จ์์์ byte๋ณด๋ค ๋ ๊ฐ๋ฒผ์ธ ๊ฒ ์์ผ๋๊น์
A0์ ํ๋ ์ด์ด ๋ฐ์ดํฐ ์งํฉ์ด๋ผ๋ ๊ท์น์ ์ ํ๊ณ , ๊ทธ ์์ ์์น, ๋ชจ์ ๋ฑ๋ฑ์ HEX๊ฐ์ผ๋ก ๋ฒํธ๋ฅผ ๋งค๊ธด๋ค๋ฉด, ๋๊ฐ 0๋ฒ์ ์์น ์ ๋ณด, 1๋ฒ์ ์คํจ ์ ๋ณด, 2๋ฒ์... ์ด๋ ๊ฒ ์ด์ด๊ฐ๋ฉด์
[A0 00 <x์ขํ> <y์ขํ>] [A0 01 <์คํจ ๋ฒํธ ๋๋ ์ด๋ฆ ๋ฑ>] [A0 02 ...] ์ด๋ฐ์์ผ๋ก ์ผ๋ จ์ ๊ท์น์ ์ ํ๊ณ ์๋ฒ์ ํด๋ผ์ด์ธํธ ๋ชจ๋ ์ ๊ท์น์ ๋ง๊ฒ ๋คํธ์ํฌ ํจํท์ ํด์ํ๋ฉด ๋ฉ๋๋ค.
ใด ๊ทธ๋ ๊ตฐ์. ๋ต๋ณ ๊ฐ์ฌํฉ๋๋น.
๋คํธ์ํฌ ์์์๋ ๋ฐ์ดํฐ๊ฐ ์์ ํ ๋์ฐฉํ์ง ๋ชปํ ๋๋ฅผ ๋๋นํด์, ๋ฒํผ(์ ์ฅ์)๋ฅผ ๋ง๋ค๊ณ ๋ด๊ฐ ํ์ํ ๋ฐ์ดํฐ๊ฐ ์ถฉ๋ถํ ๋๊น์ง ๊ธฐ๋ค๋ฆฌ๋ ๊ฒ๋ ํ์ํฉ๋๋ค.
์๋ฅผ ๋ค์ด์, A0 00 <x ์ขํ> |์๋ฆผ| <y ์ขํ> ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ฐ๋ ์์ธ๊ฐ ์๊ฒ ์ฃ ?
x y ์ขํ ๋ชจ๋ floatํ์์ด๋ฉด 4๋ฐ์ดํธ์ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง ๊ฒ๋๋ค. ์ฐ์ ๋คํธ์ํฌ์์ ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ฒํผ์ ์ ์ฅํ๊ณ , ๋ฒํผ์์ ํด์ํ์ ๋ ํ๋ ์ด์ด ์ขํ๋ผ๋ ๊ฒ์ ํ์ธํ๋ฉด ํ์ํ ํฌ๊ธฐ๋งํผ ๋ฐ์ดํธ๊ฐ ์๋ ์ง ๊ฒ์ฌํ๊ณ , ์ถฉ๋ถํ์ง ์๋ค๋ฉด ๋ค์ ํจํท์ด ๋์ฐฉํ๊ณ ๋ฒํผ์ ๋ค์ด์ฌ ๋ ๊น์ง ๊ธฐ๋ค๋ฆฝ๋๋ค.
์ด๊ฑธ ๋ค๋ค ํํ๋ค ๋งํ๋ ๋ฒํผ๋ง์ด๋ผ๊ณ ํ๋ ์์์ฑ์ฐฐ์ ์๊ฐ์ด์ฃ .
[A0<1๋ฐ์ดํธ> 00<1๋ฐ์ดํธ> 00 00 00 01<float, 4๋ฐ์ดํธ> 00 00 00 00<float, 4๋ฐ์ดํธ>] = ์ด 10๋ฐ์ดํธ๋ฅผ ํ๋ ์ด์ด ๋ฐ์ดํฐ์ ์ต๋ ํฌ๊ธฐ๋๊น, ๋ฒํผ์ ์ขํ๋ผ๋ ๊ฒ์ ํ์ธํ๊ณ , ํฌ๊ธฐ๊ฐ 10๋ฐ์ดํธ ์ด์์ด ๋ ๋๊น์ง ๊ธฐ๋ค๋ฆฌ๊ณ ์ฝ์ด์ผ ํ๊ฒ ์ฃ ?
๋์ถฉ ํต์ ์ ์ด๋ฐ ๋ฐฉ์์ผ๋ก ์ด๋ฃจ์ด์ง๋๋ค.
๋ฒํผ์ ํฌ๊ธฐ๋ง์ผ๋ก ๊ฐ์ ๊ฒ์ฆํ๋ค๋ฉด, ์๋ฑํ ๊ฐ์ ๋๊ฒจ์ ๋ณ์กฐํ๋๊ฒ๋ ๊ฐ๋ฅํ๊ฒ ๋ค์ฉ?
๋ฌผ๋ก ํฌ๊ธฐ๋ก ๊ฒ์ฆ -> ๊ฐ ๊ฒ์ฆ ํ๋ฉด ๋๊ธด ํ๊ฒ ์ง๋ง... ์ผ๋จ ๋ณ์กฐ๋ ๊ฐ์ ๋๊ธฐ๋๊ฑด ๊ฐ๋ฅํ๊ฑด์ง๋..?
์ด์ ๊ทธ๋ฐ ์ชฝ์ผ๋ก ๊ฐ๋ฉด ๊ฝค ๋ณต์กํด์ง์ฃ ใ ใ
๋ฒํผ์ ํฌ๊ธฐ๋ก ๊ฒ์ฆํ๋ ๊ฑด ์๋๊ณ , ๋ค์ ๋ฐ์ดํฐ๊ฐ ํด์ํ๋ ๋ฐ ํ์ํ ํฌ๊ธฐ์ ๋๋ฌํ๋ ์ง ๊ฒ์ฌ๋ง ํ๋ ์ฉ๋์์