Home - WizardFactory/BlogSyncer GitHub Wiki
Welcome to the BlogSync wiki!
ํ๋ก๊ทธ๋จ ๊ฐ์
๊ฐ๋ฐ ๋ชฉํ(๊ฐ๋ฐ ๋ฐฐ๊ฒฝ, ๋ชฉ์ )
๊ฐ๋ฐ๋ฐฐ๊ฒฝ
์์ ์๋ ์น์ด๋ผ๋ ๊ณต๊ฐ์ ๊ธ์ ๋ฐฐํฌ๋ง ํ๋ฉด ๋ค์ด๋ฒ, ๋ค์, ๊ตฌ๊ธ ๊ฐ์ ๊ฒ์์์ง์ ์ํ์ฌ ๋ ธ์ถ๋์์ง๋ง, ์์ ๋คํธ์ํฌ์ ๋ชจ๋ฐ์ผ์ด ๋ฐ์ ํ๋ฉด์ ์ฌ๋๋ค์ ์์ ๊ณผ ๋ชจ๋ฐ์ผ์ ๋ง์ด ์ฌ์ฉํ๊ฒ ๋์๋ค. ๋ฌธ์ ๋ ์์ ๊ณผ ๋ชจ๋ฐ์ผ ์ปจํ ์ธ ๋ค์ ํจ์์ ์ผ๋ก ์ด์๋์ด ๋ค๋ฅธ ์น๊ณต๊ฐ์ ์ปจํ ์ธ ๋ฅผ ์ ๊ทผํ๊ธฐ ์ด๋ ต๊ณ , ๋ฐ๋๋ก ๊ฒ์์์ง์ ๋ ธ์ถ๋๊ฑฐ๋ ํ์ง๋ ์๋๋ค. ์ด๋ฐ ๋ฌธ์ ๋ก ํ์๋ธ๋ก๊ทธ๋ค์ด๋, ์ผํ๋ชฐ ์ด์์๋ค์ด ์ ๋ณด๋ฅผ ์ ๋ฌํ๋ ์ํด ์ค์ค๋ก ๋์ผํ ๋ด์ฉ์ ๋ณต์ฌํ๊ฑฐ๋ ๋งํฌ๋ฅผ ๊ฑธ์ด์ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ์๋ค. ๊ทธ๋์ ์ฐ๋ฆฌ๋ ์๋์ผ๋ก ๋ธ๋ก๊ทธ, ์์ ์๋น์ค๊ฐ์ ๊ธ์ ๋๊ธฐํ ์์ผ์ฃผ๋ ์๋น์ค๋ฅผ ์ ๊ณตํ์ฌ ๋ธ๋ก๊ฑฐ๋ค์๊ฒ ํธ์๋ฅผ ์ ๊ณตํ๊ณ ์ ํ๋ค.
why
๊ฒ์์์ง์ ๊ฐ์ง ํ์ฌ๋ค์ ์๊ธฐ๋ค ์๋น์ค์์ฃผ๋ก ์ปจํ ์ธ ๋ค์ด ๋์ต๋๋ค. Soical Media๋ ๊ฐ์์ ์๋น์ค์์๋ง ๋ณผ ์ ์์ฃ . ๊ทธ๋ฌ๋ ์ปจํ ์ธ ๋ฅผ ๋ง๋ค๊ณ ๋ฐฐํฌ(publishing)ํ๋ ์ฌ๋๋ค์ ๊ฐ๋ฅํ ๋ง์ ์ฌ๋๋ค์๊ฒ ์์ ์ ์ปจํ ์ธ ๊ฐ ์ ๋ฌ๋์ด์ผ ํฉ๋๋ค.
how
์ฐ๋ฆฌ๋ ๊ฐ ์๋น์ค๋ค์ API๋ฅผ ์ฐ๊ฒฐํ๊ณ , ๊ทธ ์ฌ์ด๋ฅผ ์กฐ์ํ๋ ๋งค์ฌ์ ๊ธฐ์ (Mashup service) ๋ฅผ ํ์ฉํ์ฌ, ์ฌ์ฉ์๋ค์ ์ปจํ ์ธ ์ ๋ค๋ฅธ ์๋น์ค์์๋ ์๋์ผ๋ก ๋ฐฐํฌ(posting)ํฉ๋๋ค.
what
์ฌ์ฉ์๊ฐ ์๊ธฐ๊ฐ ์ฌ์ฉํ๋ ์๋น์ค์ ๊ณ์ ์ ๋ฑ๋กํ๊ณ , ๊ฐ ์๋น์ค๋ฅผ ์ฐ๊ฒฐํ๋ฉด, ๋ฑ๋ก๋ ์ด๋ ์๋น์ค์์๋ ์ปจํ ์ธ ๋ฅผ ์ฌ๋ฆฌ๋ฉด, ์ต์ ์ ๋ชจ์์ผ๋ก ๋ฑ๋ก๋ ๋๋จธ์ง ์๋น์ค์ ์ ๋ฌ๋จ.
๊ฐ๋ฐ๋ชฉ์
๋ชฉ์ : ๋ณธ ํ๋ซํผ์ ๋ค์์ ์๋น์ค๋ฅผ ์ ๊ณตํ๋ค.
- ์ฌ์ฉ์ ๋ฑ๋ก
- ๊ด๋ฆฌํ๊ณ ์ ํ๋ ๋ธ๋ก๊ทธ๋ค ๋ฑ๋ก
- ๋๊ธฐํ ์กฐ๊ฑด ์ค์
- ๋๊ธฐํ ์ด๋ ฅ ๋ณด์ฌ์ฃผ๊ธฐ
- ๊ด๋ฆฌํ๋ ๋ธ๋ก๊ทธ๋ค์ ๋๊ธ์ด๋ ํผ๋๋ฐฑ ๋ชจ์์ ๋ณด์ฌ์ฃผ๊ธฐ
์์คํ ๊ตฌ์ฑ๋
- Model
- ์ฌ์ฉ์ ์ ๋ณด ์ ์ฅ
- ๋ธ๋ก๊ทธ ๋๊ธฐ ๊ตฌ์กฐ ์ ์ฅ.
- ๊ธ ๋ฆฌ์คํธ ๋ฐ ํผ๋๋ฐฑ ์ ๋ณด ์ ์ฅ.
- Controller
- Open API - web client์์ ๋ค์ด์ค๋ ์์ฒญ์ ๋ฐ์์ ์ฒ๋ฆฌ ํ๋ ๋ชจ๋
- Passport - ๊ฐ ๋ธ๋ก๊ทธ๋ค๊ณผ oauth์ฐ๊ฒฐ์ ์ฒ๋ฆฌ
- Scheduler - ์ ๊ธฐ์ ์ผ๋ก ์ฌ์ฉ์ ๋ธ๋ก๊ทธ๋ฅผ ๋ชจ๋ํฐ๋งํ์ฌ ๋ณ๊ฒฝ ์ฌํญ ์ฒดํฌ
- GetContents - ์ ๋ฐ์ดํธ ๋ ๋ธ๋ก๊ทธ์์ ์๊ธ์ ๊ฐ์ง๊ณ ์ด.
- PushContents - ์๊ธ์ ๋๊ธฐํํ๊ณ ์ ํ๋ ๋ธ๋ก๊ทธ๋ค์๊ฒ ์ ๋ฌํจ.
- View
- Blog Syncer ์๊ฐ
- ๋ก๊ทธ์ธ
- ์ฌ์ฉ ์ค์ธ ๋ธ๋ก๊ทธ๋ค ์ค์
- ๋๊ธฐํ ์ด๋ ฅ ์กฐํ
- ๊ด๋ฆฌ์ค์ธ ๋ธ๋ก๊ทธ๋ค ํจ๋๋ฐฑ ์ ๋ฆฌ
๋ฉ๋ด ๊ตฌ์ฑ๋
์๊ฐ ๋๋ฉํ์ด์ง - BlogSyncer๋ฅผ ํด๋ฆญํ๋ฉด ๋๋ฉํ์ด์ง๋ก ์ด๋ํ๋ค
๋ก๊ทธ์ธ - ์ฌ๋ฌ provider id๋ก ๋ก๊ทธ์ธ ํ ์ ์๋ค.
๋ธ๋ก๊ทธ ๊ทธ๋ฃน ์ค์ - ๋๊ธฐํํ๊ณ ์ ํ๋ ๊ทธ๋ฃน์ ์ค์ ํ๋ค.
๋ธ๋ก๊ทธ ๊ทธ๋ฃน ์์ธ ์ค์ - ์ด๊ธฐ ๋ฒ์ ผ์์๋ post ๋ฐฉ๋ฒ์ ๋ณ๊ฒฝํ ์๋ ์๊ณ , enable/disable๋ง ํ ์ ์๋ค. ๋ฐฉ๋ฒ์ ์ด์์์ ์ง์ ํ๋ค.
๋ชจ์๋ณด๊ธฐ : ์ฌ์ฉ์์ ๊ธ ์ ๋ชฉ ๊ธฐ์ค์ผ๋ก ์ฌ๋ฌ provider์ ํผ๋๋ฐฑ์ ๋ชจ์ ๋ณผ ์ ์๋ค.
ํ์คํ ๋ฆฌ : ๋๊ธฐํ ๋ด์ฉ ๋ฐ ์๋ฌ ์ํฉ์ ๋ํ์ฌ ๋ณด์ฌ์ค๋ค.
๊ฐ๋ฐ ์ธ์ด
- HTML5, CSS, angular.js : ์น ๊ธฐ๋ฐ ๋ธ๋ก๊ทธ ์ค์ ์ ์ํ GUI ๋ฐ ์๋น์ค ํ๋ฉด ๊ตฌ์ฑ
- node.js : web client์ ์์ฒญ์ฌํญ์ ์ฒ๋ฆฌํ๊ณ , ์ฃผ๊ธฐ์ ์ธ ๋ธ๋ก๊ทธ ๋ชจ๋ํฐ๋ง์ ํตํ์ฌ ๋๊ธฐํ.
- mongoDB : ์ฌ์ฉ์ ์ ๋ณด์ ์ฑํฌ ์ด๋ ฅ์ ์ ์ฅํ๊ธฐ ์ํ์ฌ ์ฌ์ฉ.
ํ๋ก๊ทธ๋จ ์ฅ๊ธฐ ๋ฐ์ ๋ฐฉ์
First Release
์ฃผ์ ์ธ๊ธฐ service๋ฅผ ์ฐ์ ์ง์ํ๊ณ ์์ฅ์ ์ ๋ณด์.
์ฃผ๋ณ ์ฌ์ฉ์๋ค๋ก๋ถํฐ ํผ๋๋ฐฑ์ ๋ฐ์ผ๋ฉด์ ๊ธฐ๋ณธ ์ปจ์ ๊ฐ์ .
MLP
๋ชจ์๋ณด๊ธฐ ๊ธฐ๋ฅ - ์ฌ์ฉ์์ ๊ธ ์ ๋ชฉ ๊ธฐ์ค์ผ๋ก ์ฌ๋ฌ provider์ ํผ๋๋ฐฑ์ ๋ชจ์ ๋ณผ ์ ์๋ค.
hashtag๊ธฐ๋ฐ์ ์ฌ์ฉ์ ๊ด์ฌ ๋ถ์ผ ์ถ์ฒ.
๋ค์ ๊ตญ๋ด ์ ์ ๋ค์๊ฒ ์๋น์คํ๋ฉด์ ์์ ์ฑ๊ณผ, ํผ๋๋ฐฑ ๊ฐ์
์๋น์ค ํ์ฅ
๋ค๊ตญ์ด ์ง์์ผ๋ก ํด์ธ ์๋น์ค๋ก ํ๋
social media ์ถ๊ฐ๊ฐ ์ฉ์ดํ๋๋ก easy insert ๊ธฐ๋ฅ ์ถ๊ฐ.
์์ต๋ชจ๋ธ ์ ์ฉ.
Socical Media์ ์ ๋ฃ ์ํ์ ๋ฑ๋กํ ์ ์๋ ์ ๋ฃ์๋น์ค ์ง์
๋ชจ์๋ณด๊ธฐ ๊ธฐ๋ฅ์ ํ์ฅํ - ๋๊ธ์ด๋ ํ๊ฐ ๋ฟ๋ง ์๋๋ผ, ์ ์์ ์, ํ์ด์ง ๋ทฐ, ๊ฐ ๋ธ๋ก๊ทธ๋ค ๋ ธ์ถ ๋น๊ต, ๋ธ๋ก๊ทธ ํฉ์ณ์ ๊ฐ์ฅ ์ธ๊ธฐ ์๋ ๊ธ๋ฑ ์ถ๊ฐ ์ ๋ณด ์ ๊ณต
blog express - blog์ ๋ชจ๋ ๊ธ๊ณผ ์ฌ์ง์ ๋ค๋ฅธ ์๋น์ค๋ก ์ด๋์ํค๊ฑฐ๋, ๋ฐฑ์ ํ๋ ๊ธฐ๋ฅ ์ ๊ณต