User Activity Tracking Tool ๊ฐ๋ฐ
NAVER Winter HackDay
๊ตฌ์กฐ
- client
- dashboard
- Spring Server
- server.js
- client: ๋ก๊ทธ ์์ง
- dashboard: materialUI ๊ธฐ๋ฐ ๋์๋ณด๋ ์คํ์์ค ํ์ฉ (GoogleChart component)
- Spring Server: ์คํ๋ง ์๋ฒ๋ฅผ ์ฌ์ฉํ ๋ฒ์
- server.js: Express ์๋ฒ๋ฅผ ์ฌ์ฉํ ๋ฒ์
์ฃผ์
- ์๋น์ค์ ์ ๊ตํ ํจ์จ ์ธก์ ์ ์ํ ์ ์ ์ด์ฉํํ์ ์์ง ๋ฐ ๋ฆฌํฌํ tool ๊ฐ๋ฐ
ํ๋ก์ ํธ ์ค๋ช
- ์ผํ๋ชฐ ๋ฆฌ์คํ
๊ด๊ณ ๋ฅผ ๋ชฉ์
๊ธฐ๋ฐ ๋ก๊ทธ ์์ง
- ์ค์ ์๋น์ค ์ฃผ์ : http://m.trend.shopping.naver.com/trendpick/index.nhn
- ์ ์ ์ view, click ๋ฟ๋ง ์๋๋ผ ์ฌ๋ฌ ํํ์ ์ ์ ์ ๋ก๊ทธ๋ก ๋จ๊ธฐ๊ณ , ๋ค์ํ๊ฒ ์กฐํฉํ์ฌ ์๋ฏธ ์๋ ๋ฐ์ดํฐ๋ฅผ ๋ง๋๋๊ณ ํํ ํ๋๊ฒ์ด ๋ชฉํ ์
๋๋ค.
- ๊ธฐ๋ณธ์ ์ธ HTTP ์คํ ๋ฐ javascript ์ ๋์ ๋ฐฉ์์ ์ดํด๋ฅผ ํตํด ์ต๋ํ ์๋ฏธ ์๋ ๋ก๊ทธ๋ฅผ ์ถ์ถํด์ฃผ์๋ฉด ๋ฉ๋๋ค.
- ๋ก๊ทธ๋ฅผ ๋จ๊ธฐ๋ ๋ฐฉ๋ฒ์ ์์ ์ ๋๋ค. (console, file, api, db, queue...)
- ํด๋น ํ๋ก ํธ ๋ชจ๋์ ์์ ๋กญ๊ฒ ์์ ๊ฐ๋ฐํ์ฌ, web framework ์ ์ ์ฉํ์ฌ๋ ์งํํ์ฌ๋ ๋ฉ๋๋ค. (spring, node, flask ...)
- ๋
ธ์ถ, ํด๋ฆญ ํต๊ณ์ ์ ์ ํธ๋ํน ๊ฒฐ๊ณผ๋ ๊ณผ์ ๊ฒฐ๊ณผ๋ฅผ ์ค๋ช
ํ ์ ์๋ ๋ฐฉ๋ฒ์ ์ฐพ์ data(text), ui๋ฑ์ผ๋ก ์์ ๋กญ๊ฒ ํํํ์ธ์. (ui ํ์ ์๋)
- Request์ ๋ณด ๋ฐ react์ ์ด๋ฒคํธ๋ฅผ ์ด๋ค ๋ฐฉ์์ผ๋ก ๋จ๊ธฐ๋๊ฒ ์ข์์ง ์๊ฐํด๋ณด์๊ธฐ ๋ฐ๋๋๋ค.
- ์ด๋ค๊ธฐ์ค์ผ๋ก ํน์ ์ ์ ์ ์ ์ ๊ณผ ์ดํ์ ํ๋ฒ์ ์ด์ฉ๊ณผ์ ์ผ๋ก ์๊ฐํ ์ ์๋์ง ์๊ฐํด๋ณด์๊ธฐ ๋ฐ๋๋๋ค.
- EX) ํน์ ์ ์ ID : in(์๊ฐ) -> ์คํฌ๋กค(์๊ฐ)-> ์นดํ ๊ณ ๋ฆฌAํด๋ฆญ(์๊ฐ) -> ์คํฌ๋กค(์๊ฐ) -> ์นดํ ๊ณ ๋ฆฌBํด๋ฆญ(์๊ฐ) -> out(์๊ฐ)
ํ๋ก์ ํธ ๊ตฌ์กฐ
- React (16.11.0)
- react-create-app ๊ธฐ๋ฐ (https://github.com/facebook/create-react-app)
- Hook ๊ธฐ๋ฐ์ ์ํ๊ด๋ฆฌ (https://reactjs.org/docs/hooks-intro.html)
- typescript (https://www.typescriptlang.org/docs/home.html)
์ฌ์ฉ๋ฒ
-
React ํ๋ก์ ํธ ๊ตฌ๋
yarn run start
-
Spring ์๋ฒ ๊ตฌ๋
mvnw.cmd spring-boot:run
-
Express ์๋ฒ ๊ตฌ๋
yarn run start