Loading...

[GP] C++ ์–ธ์–ด์—์„œ MQTT ์‚ฌ์šฉํ•ด๋ณด๊ธฐ

์ด ๊ธ€์€ N.K Dev lab์˜ ๋‚ด์šฉ ์ค‘ ์ผ๋ถ€๋ฅผ ๋‹ด์•„์˜จ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์˜ค๋Š˜์€ ์ง€๋‚œ ํฌ์ŠคํŠธ์— ์ด์–ด์„œ, ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ํ™œ์šฉํ•œ MQTT ์‚ฌ์šฉ์— ๋Œ€ํ•ด ์ ์–ด๋ณด๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ์˜ค๋Š˜์€ C++ ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•ด๋ณด๋„๋ก ํ•˜์ฃ . libmosquitto C++ ์–ธ์–ด์—์„œ ์‚ฌ์šฉํ•  MQTT ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ libmosquitto๋ฅผ ์‚ฌ์šฉํ•˜๋ ค ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿผ libmosquitto ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์„ค์น˜ํ•ด์•ผ๊ฒ ์ฃ ? ๊ทธ๋Ÿผ ์„ค์น˜๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. $ sudo apt install libmosquitto ์šฐ๋ถ„ํˆฌ ๋ฆฌ๋ˆ…์Šค์—์„œ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ ˆํฌ์ง€ํ„ฐ๋ฆฌ์—์„œ ์ œ๊ณตํ•˜๋Š” libmosquitto ํŒจํ‚ค์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•ด์„œ libmosquitto๋ฅผ ์‰ฝ๊ฒŒ ์„ค์น˜ํ•ด๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์œˆ๋„์šฐ ์šด์˜์ฒด์ œ์—์„œ๋Š” ์•„๋ž˜์˜ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์…”์„œ ์„ค์น˜ํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Wind..

[GP] Android์—์„œ MQTT๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•

์ด ๊ธ€์€ ์ €์˜ Github Page์˜ ๋‚ด์šฉ ์ค‘ ์ผ๋ถ€๋ฅผ ๋‹ด์•„์˜จ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์•ˆ๋…•ํ•˜์„ธ์š”. ์š”์ฆ˜ ์ทจ์—… ์‹œ์ฆŒ์ด ํ•œ์ฐฝ์ด๋‹ค๋ณด๋‹ˆ, ๋ธ”๋กœ๊ทธ์— ๊ธ€์“ฐ๋Š”๊ฒŒ ๋˜ ๊ฒŒ์„๋Ÿฌ์ง€๊ฒŒ ๋˜์—ˆ๋„ค์š”. ใ…œใ…œ ์˜ค๋Š˜์€ ์ง€๋‚œ ํฌ์ŠคํŠธ์— ์ด์–ด์„œ, ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ฝ”๋“œ๋ฅผ ์ด์šฉํ•œ MQTT ๋ฉ”์‹œ์ง€ ๊ตํ™˜ - ์•ˆ๋“œ๋กœ์ด๋“œ ํŽธ์„ ํฌ์ŠคํŠธํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ํ˜น์‹œ ์•„์ง MQTT์— ๋Œ€ํ•œ ๊ฐœ๋…์ด๋‚˜, Broker๋ฅผ ์„ค์น˜ํ•˜์ง€ ์•Š์œผ์‹  ๋ถ„๋“ค์€ ์•„๋ž˜ ๋งํฌ๋ฅผ ํ†ตํ•ด, ์ด์ „ ๊ธ€์„ ๋ฐ˜๋“œ์‹œ ๊ตฌ๋…ํ•ด์ฃผ์‹  ํ›„, ์ด ํฌ์ŠคํŠธ๋ฅผ ์ฐธ์กฐํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. ์•„์ง MQTT์— ์ž˜ ๋ชจ๋ฅด์‹ ๋‹ค๊ตฌ์š”? ์•„๋ž˜ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์…”์„œ ์ž์„ธํžˆ ์•Œ์•„๋ณด์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. MQTT์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ธฐ Eclipse Paho MQTT ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•ด ๋ฉ”์‹œ์ง€ ๊ตํ™˜์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” MQTT ํ†ต์‹ ์ด ๊ฐ€๋Šฅํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ์ค‘์—์„œ๋„ ์ €ํฌ๋Š” Java์™€..

2017. 8. 28. 10:52

Linux์—์„œ MQTT Broker, Mosquitto ์„ค์น˜

MQTT๋ฅผ ์ฒ˜์Œ ์‚ฌ์šฉํ•ด๋ณด๋ ค ํ•˜์‹œ๋‚˜์š”? ๊ทธ๋ ‡๋‹ค๋ฉด, ๋จผ์ € ์•„๋ž˜์˜ ๊ธ€์„ ์ฝ์–ด๋ณด์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. MQTT ํ”„๋กœํ† ์ฝœ ๊ฐœ๋…๊ณผ ์ดํ•ด ์ง€๋‚œ ํฌ์ŠคํŠธ์—์„œ MQTT์— ๋Œ€ํ•œ ๊ฐœ๋…๊ณผ ๊ฐ„๋‹จํ•œ ํŠน์ง•์„ ์†Œ๊ฐœํ•ด ๋“œ๋ ธ์Šต๋‹ˆ๋‹ค. ์ด์ œ ์šฐ๋ฆฌ๋Š” MQTT Broker๋ฅผ ์„ค์น˜ํ•ด์„œ, ์ด๋ฅผ ๊ตฌ๋™ํ•ด๋ณด๊ณ  ์„œ๋น„์Šค๋ฅผ ํ•ด๋ณด๋ ค ํ•ฉ๋‹ˆ๋‹ค. MQTT Broker์—๋Š” ์—ฌ๋Ÿฌ๊ฐ€์ง€๊ฐ€ ์กด์žฌํ•˜์ง€๋งŒ, ๊ทธ ์ค‘์—์„œ๋„ ๊ฐ€์žฅ ๋ณดํŽธ์ ์ด๊ณ  ๋ฌด๋‚œํ•œ mosquitto๋ฅผ ์„ค์น˜ํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. Mosquitto ์„ค์น˜ ๋ฆฌ๋ˆ…์Šค์—์„œ Mosquitto๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋ฆฌ๋ˆ…์Šค์˜ ๋ ˆํฌ์ง€ํ„ฐ๋ฆฌ์— ์žˆ๋Š” Mosquitto ํŒจํ‚ค์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‰ฝ๊ฒŒ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. $ sudo apt install mosquitto ํ„ฐ๋ฏธ๋„์„ ์‹คํ–‰ํ•˜์—ฌ ์œ„ ๋ช…๋ น์–ด๋ฅผ ํƒ€์ดํ•‘ํ•ฉ๋‹ˆ๋‹ค. $ sudo systemctl ..

2017. 8. 26. 15:57

MQTT ํ”„๋กœํ† ์ฝœ ๊ฐœ๋…๊ณผ ์ดํ•ด

์•ˆ๋…•ํ•˜์„ธ์š”. ์š”์ฆ˜ ์กธ์—… ์ค€๋น„๊ฐ€ ํ•œ์ฐฝ์ด์–ด์„œ, (ํ•‘๊ณ„์ง€๋งŒ.. ใ…œใ…œ) ๋ธ”๋กœ๊ทธ์— ๊ธ€์„ ์ž์ฃผ ๋ชป์“ฐ๊ฒŒ ๋˜๋Š”๊ตฐ์š”. MQTT ํ”„๋กœํ† ์ฝœ์— ๋Œ€ํ•œ ๊ธ€์„ ์ž‘์„ฑํ•ด๋ณด๋ ค ํ•ฉ๋‹ˆ๋‹ค. MQTT๋Š” ์ œ๊ฐ€ ํ˜„์žฌ ์กธ์—… ์ž‘ํ’ˆ์—์„œ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ํ†ต์‹  ํ”„๋กœํ† ์ฝœ์ธ๋ฐ์š”. ์ฒ˜์Œ์—๋Š” XMPP ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฉ”์‹œ์ง€๋ฅผ ๊ตํ™˜ํ•˜๋ ค๊ณ  ํ•˜์˜€์œผ๋‚˜, ๊ต์ˆ˜๋‹˜์˜ ์กฐ์–ธ์œผ๋กœ MQTT ๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. MQTT๋Š” ๋ฌด์—‡์ผ๊นŒ, XMPP๋ž‘ ์ฐจ์ด๋Š”?์ œ ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŠธ์—์„œ XMPP ๊ด€๋ จ ํฌ์ŠคํŠธ๋ฅผ ๋ณด์‹  ๋ถ„์ด์‹œ๋ผ๋ฉด, ์ด ๊ธ€๋„ ๋ฐ˜๋“œ์‹œ ์ฐธ๊ณ ํ•ด๋ณด์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ณผ๊ฑฐ ์ œ๊ฐ€ ์ฑ„ํŒ… ์„œ๋น„์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด XMPP ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•œ ์ ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. XMPP๋Š” ์˜ˆ์ „ Google Talk ๊ณผ Facebook Messenger ์—์„œ ์‚ฌ์šฉํ•œ ์ฑ„ํŒ… ํ”„๋กœํ† ์ฝœ๋กœ ํ˜„์žฌ๋Š” Hangouts ์„œ๋น„์Šค๋Š” XMPP์™€ ํ˜ธํ™˜..

2017. 8. 2. 12:16

[GP] Android CustomView๋ฅผ ๋งŒ๋“ค์–ด๋ณด์ž

์ด ๊ธ€์€ ์ €์˜ Github Page์˜ ๋‚ด์šฉ ์ค‘ ์ผ๋ถ€๋ฅผ ๋‹ด์•„์˜จ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฒŒ์จ 8์›”์ด ์‹œ์ž‘๋๋„ค์š”. ์˜ฌํ•ด ์žฅ๋งˆ๋Š” ๋ฌด์ฒ™ ๊ธธ์—ˆ๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์˜ค๋Š˜์€ ์•ˆ๋“œ๋กœ์ด๋“œ์˜ CustomView๋ฅผ ์ œ์ž‘ํ•˜๋Š” ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์„ ์ ์–ด๋ณด๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ์ €๋Š” ์‚ฌ์‹ค ๋””์ž์ธ์— ๋งŽ์ด ์•ฝํ•ฉ๋‹ˆ๋‹ค. ์ œ๊ฐ€ ํ˜„์žฌ ๋งก๊ณ  ์žˆ๋Š” ์กธ์—… ์ž‘ํ’ˆ์—์„œ๋„ ํด๋ผ์ด์–ธํŠธ๋กœ ์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ ๊ฐœ๋ฐœ์„ ๋‹ด๋‹นํ•˜๊ณ  ์žˆ์ง€๋งŒ, ์•ฑ ๋””์ž์ธ์— ์ฝ”๋“œ๋ฅผ ์—ฌ๋Ÿฌ ๋ฒˆ ๋œฏ์–ด๊ณ ์ณค์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ์—๋Š” ๊ทธ๋‹ค์ง€ ๋””์ž์ธ์— ๋งŽ์ด ์‹ ๊ฒฝ๋„ ์“ฐ์ง€ ์•Š์•˜๊ณ , Android, android-support, material design์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ œ๊ณตํ•ด์ฃผ๋Š” View, Widget์„ ๊ฐ€์ ธ๋‹ค๊ฐ€ ์“ฐ๋Š” ๊ฒƒ์ด ์ „๋ถ€์ด๊ณ , ๊ทธ ์ด์ƒ์€ ์ƒ๊ฐํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ œ๊ฐ€ ๋ณด๊ธฐ์—๋„ ์ œ๊ฐ€ ๋งŒ๋“  ์•ฑ์˜ ๋””์ž์ธ์ด ์ •๋ง ์ดˆ๋ผํ•˜๊ฒŒ ๋Š๊ปด์ง‘๋‹ˆ๋‹ค. ์•ฑ์˜ ํ’ˆ์งˆ..

2017. 7. 13. 20:56

์ž์‹ ์˜ Tistory ๋ธ”๋กœ๊ทธ ๊ฒ€์ƒ‰์— ์Œ์„ฑ ์ธ์‹ ๊ธฐ๋Šฅ์„ ๋„ฃ์–ด๋ณด์ž.

Tistory ๋ธ”๋กœ๊ทธ์—๋Š” ํฌ์ŠคํŠธ๋ฅผ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ์ด ๋‚ด์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์€ Tistory ๋ธ”๋กœ๊ทธ์—์„œ ์ž์ฒด์ ์œผ๋กœ ์ œ๊ณตํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฒ€์ƒ‰์ด ์ด๋ฃจ์–ด์ง€๋Š”๋ฐ์š”. ๋ณดํ†ต ๊ฒ€์ƒ‰์€ ํ‚ค๋ณด๋“œ๋กœ ์ž์‹ ์ด ์ฐพ๊ณ ์ž ํ•˜๋Š” ํ‚ค์›Œ๋“œ๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ๊ฒ€์ƒ‰์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 12 ~ 13๋…„๋„ ์ €์˜ ๋ธ”๋กœ๊ทธ์—๋Š” ๊ฒ€์ƒ‰ ๋ฐ•์Šค์— ์Œ์„ฑ ์ธ์‹ API๋ฅผ ์žฅ์ฐฉํ•œ ์ ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” Speech Input API for HTML5๋ฅผ ์‚ฌ์šฉํ•œ ๊ฒƒ์ธ๋ฐ์š”. ์‚ฌ์šฉ ๋ฐฉ๋ฒ•์ด ๋งค์šฐ ์‰ฝ๊ณ  ํŽธํ•ด์„œ ๋ˆ„๊ตฌ๋‚˜ ๋”ฐ๋ผํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์†Œ์Šค๋ฅผ input ํƒœ๊ทธ ์˜†์— ๋ถ€์ฐฉํ•˜๋ฉด ์‰ฝ๊ฒŒ ์Œ์„ฑ ์ธ์‹ ๊ธฐ๋Šฅ์„ ํƒ‘์žฌ์‹œํ‚ฌ ์ˆ˜ ์žˆ์—ˆ์ฃ . ๋‹น์‹œ Google Chrome ๋ธŒ๋ผ์šฐ์ €์—์„œ ์œ ์ผํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ธŒ๋ผ์šฐ์ €์—์„œ๋Š” ์ง€์›ํ•˜์ง€ ์•Š๋Š” ๋ถˆํŽธํ•จ์ด ์žˆ์—ˆ๊ณ , ํƒœ๊ทธ ์†์„ฑ์œผ๋กœ..

2017. 6. 29. 16:01

Virtualenv๋ฅผ ์‚ฌ์šฉํ•œ Tensorflow ์„ค์น˜

Tensorflow๋ฅผ 0.8 ๋ฒ„์ „๋ถ€ํ„ฐ ์‚ฌ์šฉํ–ˆ์—ˆ์ง€๋งŒ, ์–ด๋Š์ƒˆ ์™€์„œ ๋ณด๋‹ˆ ๋ฒŒ์จ ์ •์‹ ๋ฆด๋ฆฌ์ฆˆ 1.0 ๋ฒ„์ „์„ ์ถœ์‹œํ•˜๊ณ , ์ด์ œ๋Š” CPU ๋ฒ„์ „์ด 1.2๊นŒ์ง€ ์˜จ ์ƒํƒœ๋”๊ตฐ์š”. ์ƒˆ์‚ผ์Šค๋Ÿฝ๊ฒŒ๋„ ์ •๋ง ์‹œ๊ฐ„์ด ๋นจ๋ฆฌ ๊ฐ€๊ณ  ์žˆ๋‹ค๋Š” ๋Š๋‚Œ์ž…๋‹ˆ๋‹ค. What is Tensorflow ?์ด ์‹œ์ ์—์„œ Tensorflow๋ฅผ ๋ชจ๋ฅด์‹œ๋Š” ๋ถ„๋“ค์€ ์•„๋งˆ ์—†์„ ๊ฒƒ์ด๋ผ ์ƒ๊ฐ๋˜์ง€๋งŒ, ํ˜น์‹œ๋ผ๋„ ์ด ๋ถ„์•ผ์— ์ฒ˜์Œ ํ•ด๋ณด์‹œ๊ณ , ๋ง‰์ƒ ์ฒ˜์Œํ•ด๋ณด๋Š”๋ฐ, ๋˜ ๋ญ”์ง€ ๋ชจ๋ฅด๋ฉด ๊ณค๋ž€ํ•˜๊ฒ ์ฃ ? ๊ทธ๋ž˜์„œ ๊ฐ„๋‹จํ•œ ์ด์•ผ๊ธฐ๋ฅผ ํ•ด๋ณด๋ฉด์„œ ์‹œ์ž‘ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. Tensorflow: ํ…์„œํ”Œ๋กœ์šฐ๋Š” Google์—์„œ ๊ฐœ๋ฐœํ•ด์„œ ๋‚ด๋†“์€ ๋”ฅ๋Ÿฌ๋‹/๊ธฐ๊ณ„ํ•™์Šต ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ž…๋‹ˆ๋‹ค. ๋ณธ๋ž˜ ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” Python ์–ธ์–ด๋งŒ์„ ์ง€์›ํ•˜์˜€์ง€๋งŒ, ์ •์‹ ๋ฒ„์ „์ธ 1.0 ๋ฒ„์ „์„ ๊ณต๊ฐœํ•œ ์ดํ›„์—๋Š” Java, C, Go ์–ธ์–ด์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ..

[GP] Unix Thread์˜ ๊ธฐ๋ณธ์„ ๋‹ค์ ธ๋ณด์ž

์ด ๊ธ€์€ ์ €์˜ Github Page์˜ ๋‚ด์šฉ ์ค‘ ์ผ๋ถ€๋ฅผ ๋‹ด์•„์˜จ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ๊ธ€์„ ์จ์˜จ์ง€ ๋ฒŒ์จ 4๊ฐœ์›”์ด ์ง€๋‚ฌ์ง€๋งŒ, ํ•™๊ต ์ƒํ™œ๊ณผ ์„ฑ์  ๊ด€๋ฆฌ ๋“ฑ์œผ๋กœ ์ธํ•ด ์ปจํ…์ธ ๊ฐ€ ๋งŽ์ด ๋ถ€์กฑํ•˜์—ฌ ์ด๋ฆฌ์ €๋ฆฌ ์ƒ๊ฐํ•ด ๋ณธ ๊ฒฐ๊ณผ, ์ด ๊ฐœ๋ฐœ ๋ธ”๋กœ๊ทธ์— ์ œ๊ฐ€ ์•Œ๊ณ  ์žˆ๋Š” ๋ชจ๋“  ๊ฐœ๋ฐœ ์ง€์‹๋“ค์„ ์˜ฌ๋ฆฌ๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋ฌผ๋ก  ์šฉ๋„๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€๊ฐ€ ์žˆ๊ฒ ์ง€๋งŒ, ์ฃผ ์šฉ๋„๋Š” ์‚ฌ๋žŒ์˜ ๊ธฐ๋ณธ์ ์ธ ํŠน์„ฑ์ธ ๋ง๊ฐ ํŠน์„ฑ ๋•Œ๋ฌธ์ด๊ฒ ์ฃ ? ใ…Žใ…Ž ์˜ค๋Š˜์€ Unix Programming์— ๋Œ€ํ•œ ์นดํ…Œ๊ณ ๋ฆฌ๋ฅผ ์ƒˆ๋กœ ์ถ”๊ฐ€ํ•˜์—ฌ, pthread๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด๋ณด๋ ค ํ•ฉ๋‹ˆ๋‹ค. ์™œ ์“ฐ๋ ˆ๋“œ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋ƒ๊ณ ์š”? ๊ทธ๋ ‡๊ตฐ์š”. ์˜ฌํ•ด๋Š” ์œ ๋‚œํžˆ ์ œ ํ”„๋กœ์ ํŠธ, ๊ณผ์ œ ๋“ฑ์—์„œ ๋ชจ๋‘ ์“ฐ๋ ˆ๋“œ๋ฅผ ์‚ฌ์šฉํ–ˆ๊ธฐ ๋–„๋ฌธ์ด๋ผ๊ณ  ์ด์•ผ๊ธฐ ํ•˜๊ณ  ์‹ถ๋„ค์š”.. ์ด ๊ธ€์„ ์ฝ์–ด๋ณด์‹œ๊ธฐ ์ „์—, Thread์— ๋Œ€ํ•œ ๊ธฐ์ดˆ์ ์ธ ๊ฐœ๋…์ด ์ˆ™์ง€๋œ ์ƒํ™ฉ์—์„œ ์ฝ๊ธฐ๋ฅผ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค..

2017. 6. 26. 14:55

Scene Builder 8.3.0 ์‚ฌ์šฉ์‹œ, Segmentation Fault ์˜ค๋ฅ˜ ์กฐ์น˜ ๋ฐฉ๋ฒ• (Ubuntu)

์ตœ๊ทผ์— ์ œ๊ฐ€ ์šฐ๋ถ„ํˆฌ๋ฅผ ๋‹ค์‹œ ์ƒˆ๋กœ ์„ค์น˜ํ•˜๊ฒŒ ๋˜๋ฉด์„œ, ๊ธฐ์กด์— ์žˆ๋˜ ๊ฐœ๋ฐœ ๋„๊ตฌ, ๋ฌธ์„œ ํŽธ์ง‘๊ธฐ ๋“ฑ์„ ๋‹ค์‹œ ์„ค์น˜ํ•ด์•ผ ๋˜๋Š” ์ผ์„ ๋งž์ดํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ, ์˜ค๋Š˜ JavaFX ์ฝ”๋”ฉ์„ ์œ„ํ•ด Scene Builder๋ฅผ ์„ค์น˜ํ•ด ์‹คํ–‰ํ•˜๋‹ˆ ์‹คํ–‰์ด ๋˜์ง€ ์•Š์€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ์—๋Š” ๋ฐ”์ด๋„ˆ๋ฆฌ ํŒŒ์ผ์— ๋ฌธ์ œ๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š๊ณ , ๋ฌด์–ธ๊ฐ€ ๊ฐ’์„ ์ฃผ์ง€ ์•Š์•„์„œ ๊ทธ๋Ÿฐ๊ฐ€ ์‹ถ์–ด, IntelliJ IDEA ํ”„๋กœ๊ทธ๋žจ๊ณผ ์—ฐ๋™ํ•˜์—ฌ ์‹คํ–‰๋„ ์‹œ์ผœ๋ดค์ง€๋งŒ ๊ฒฐ๊ณผ๋Š” ๋˜‘๊ฐ™์•˜์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ์˜ ์›์ธ์›์ธ์„ ํ™•์ธํ•ด๋ณด๊ณ ์ž, gdb ๋””๋ฒ„๊ฑฐ๋กœ ์—ด์–ด๋ดค์Šต๋‹ˆ๋‹ค. ๋Ÿฐํƒ€์ž„ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ •ํ™•ํ•˜๊ฒŒ ๋ถ„์„ํ•ด๋ณด์ง„ ์•Š์•˜์ง€๋งŒ, ์–ด๋”˜๊ฐ€ ์ดˆ๊ธฐํ™” ๋˜์ง€ ์•Š์€ ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์— ์ ‘๊ทผํ•˜๋ ค๋‹ค๊ฐ€ ์‹คํŒจํ–ˆ๊ฑฐ๋‚˜, NULL์„ ์ฐธ์กฐํ•œ ๊ฒƒ ๊ฐ™์•˜์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ์˜ ํ•ด๊ฒฐํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ์˜์™ธ๋กœ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. ์ฒ˜์Œ์—๋Š” Sce..

2017. 6. 23. 17:40

[GP] Android, ๋‹ค๋ฅธ ์“ฐ๋ ˆ๋“œ์—์„œ UI ์ฒ˜๋ฆฌ๋ฅผ ํ•˜๋Š” ๋ฐฉ๋ฒ•

์ด ๊ธ€์€ ์ €์˜ Jekyll ๋ธ”๋กœ๊ทธ์˜ ๋‚ด์šฉ ์ค‘ ์ผ๋ถ€๋ฅผ ๋‹ด์•„์˜จ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์˜ค๋Š˜ ํฌ์ŠคํŠธ๋Š” ์–ด์ œ์— ์ด์–ด์„œ, ์“ฐ๋ ˆ๋“œ์— ๋Œ€ํ•œ ์ด์•ผ๊ธฐ๋ฅผ ๊ณ„์†ํ•ด๋ณด๋ ค ํ•ฉ๋‹ˆ๋‹ค. ์•„๋ฌด๋ž˜๋„ UI ํ”„๋กœ๊ทธ๋ž˜๋ฐ์— ๋Œ€ํ•œ ์ด์•ผ๊ธฐ๋‹ค๋ณด๋‹ˆ, UI ํ”„๋กœ๊ทธ๋ž˜๋ฐ์— ๋งŽ์ด ์œ ๋ช…ํ•˜๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋Š” Windows ์ชฝ์˜ ์ด์•ผ๊ธฐ๋ฅผ ๋งŽ์ด ์„ž์–ด๋ณด์ž ํ•ฉ๋‹ˆ๋‹ค. ์ฝ์œผ์‹ค ๋•Œ, ์ดํ•ด๊ฐ€ ์กฐ๊ธˆ ์•ˆ๋˜์‹œ๋Š” ๋ถ€๋ถ„๋„ ์žˆ์„ํ…Œ๋‹ˆ ์ฐธ๊ณ ํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. UI ๋ฆฌ์†Œ์Šค๋ฅผ Sub Thread์—์„œ ์ง์ ‘ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ. ์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ์—๋Š” UI๊ฐ€ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. UI๋ผ๊ณ  ํ•˜๋Š” ๊ฒƒ์€ ์‚ฌ์šฉ์ž๋“ค์ด ํ„ฐ์น˜ํ•˜๋Š” ๋ฒ„ํŠผ, ํ…์ŠคํŠธ ๋ฐ•์Šค ๋“ฑ์˜ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋งํ•˜๋Š”๋ฐ์š”. ์ฃผ๋กœ ๊ฐ„๋‹จํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ๋Š” ์ด UI๋ฅผ ๋ฉ”์ธ ์“ฐ๋ ˆ๋“œ์—์„œ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์•ฑ์ด ์ปค์ง€๊ฒŒ ๋˜๋ฉด, ์“ฐ๋ ˆ๋“œ๊ฐ€ ์ƒ๊ธฐ๊ฒŒ ๋  ์ˆ˜ ์žˆ๊ณ , ํ•ด๋‹น ์“ฐ๋ ˆ๋“œ์—์„œ UI๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ..