/NEWSTUDY

๐ŸŒ ๋‚œ์ด๋„ ๋งž์ถคํ˜• ํ•ด์™ธ ๋‰ด์Šค ๊ธฐ์‚ฌ๋ฅผ ํ†ตํ•œ ์˜์–ด ๊ณต๋ถ€ ์›น ์„œ๋น„์Šค

Primary LanguageJavaScript


๐Ÿ“œ Contents

  1. Overview
  2. ์„œ๋น„์Šค ํ™”๋ฉด
  3. ์ฃผ์š” ๊ธฐ๋Šฅ
  4. ๊ฐœ๋ฐœ ํ™˜๊ฒฝ
  5. ์‹œ์Šคํ…œ ์•„ํ‚คํ…์ฒ˜
  6. ๊ธฐ์ˆ  ํŠน์ด์ 
  7. ๊ธฐํš ๋ฐ ์„ค๊ณ„ ์‚ฐ์ถœ๋ฌผ
  8. Conventions
  9. ํŒ€์› ์†Œ๊ฐœ

๐Ÿ“ฐ Overview

๋‚œ์ด๋„ ๋งž์ถคํ˜• ํ•ด์™ธ ๋‰ด์Šค ๊ธฐ์‚ฌ๋ฅผ ํ†ตํ•œ ์˜์–ด ๊ณต๋ถ€ ์›น ์„œ๋น„์Šค

๐Ÿ† ์‚ผ์„ฑ ์ฒญ๋…„ SW ์•„์นด๋ฐ๋ฏธ 7๊ธฐ 2ํ•™๊ธฐ ํŠนํ™” ํ”„๋กœ์ ํŠธ ๋Œ€์ „ 2๋ฐ˜ ์ตœ์šฐ์ˆ˜์ƒ [๋ฐœํ‘œ์˜์ƒ]
๐Ÿ† ์‚ผ์„ฑ ์ฒญ๋…„ SW ์•„์นด๋ฐ๋ฏธ 7๊ธฐ 2ํ•™๊ธฐ ํŠนํ™” ํ”„๋กœ์ ํŠธ UCC๊ฒฝ์ง„๋Œ€ํšŒ ์ž…์ƒ [UCC]
โœจ NEWSTUDY์˜ ๋ชจํ†  - ํผ์ƒํผ์‚ฌ, ๊ฐ„์‚ด๊ฐ„์ฃฝ

๐Ÿ‘€ ์„œ๋น„์Šค ํ™”๋ฉด

โœจ ๋ชจ๋“  ํŽ˜์ด์ง€ ๋‹คํฌ๋ชจ๋“œ, ๋ชจ๋ฐ”์ผ(์•„์ดํฐ 12 Pro ๊ธฐ์ค€ max-width:480px) ์ง€์›

์˜จ๋ณด๋”ฉ

  • fullpage๋ฅผ ์ ์šฉํ•œ ์˜จ๋ณด๋”ฉ
  • ์ง€๊ตฌ๋ณธ ์ƒํ˜ธ์ž‘์šฉ
  • ๋ชจ๋ฐ”์ผ ๋ฒ„์ „์—์„œ๋Š” ํด๋ฆญ์„ ํ†ตํ•œ fullpage ๋™์ž‘

ํšŒ์›๊ฐ€์ž… & ๋กœ๊ทธ์ธ & ๋กœ๊ทธ์•„์›ƒ

  • ๊ตฌ๊ธ€ ๋ฉ”์ผ ์ธ์ฆ์„ ํ†ตํ•œ ์œ ์ € ํšŒ์›๊ฐ€์ž…/๋กœ๊ทธ์ธ

๋งˆ์ดํŽ˜์ด์ง€

  • ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ ๋ณ€๊ฒฝ
  • ๋‚ด๊ฐ€ ์Šคํฌ๋žฉํ•œ ๊ธฐ์‚ฌ, ๋‚˜๋งŒ์˜ ๋‹จ์–ด์žฅ, ๋‚ด๊ฐ€ ํš๋“ํ•œ ๋ฑƒ์ง€, ๋‚ด ๊ด€์‹ฌ ์นดํ…Œ๊ณ ๋ฆฌ ํ‘œํ˜„

๋ฐฐ์ง€ ํš๋“

  • ์ถœ์„, ๋ ˆ๋ฒจ, ๊ฒŒ์ž„, ๋‹จ์–ด์žฅ ์ถ”๊ฐ€, ๊ธฐ์‚ฌ ์Šคํฌ๋žฉ ์— ๋Œ€ํ•œ ๋ฐฐ์ง€ ๋ถ€์—ฌ

๋žœ๋”ฉ (HOME)

  • ์‚ฌ์šฉ์ž์˜ ์นดํ…Œ๊ณ ๋ฆฌ, ๋ ˆ๋ฒจ์— ๋”ฐ๋ฅธ ์‚ฌ์šฉ์ž ์ถ”์ฒœ(USER FIT) ๊ธฐ์‚ฌ ์ œ๊ณต
  • ํ•˜๋ฃจ ์ค‘ ๊ฐ€์žฅ ๋งŽ์€ ์กฐํšŒ์ˆ˜๋ฅผ ๊ธฐ๋กํ•œ ๊ธฐ์‚ฌ(HOT TOPIC) ์ œ๊ณต
  • ํ•˜๋ฃจ์˜ ๋‰ด์Šค ๊ธฐ์‚ฌ์—์„œ ์ถ”์ถœํ•œ ๋ฐ์ผ๋ฆฌ ์›Œ๋“œ ํด๋ผ์šฐ๋“œ ์ œ๊ณต
    • ํ•ด๋‹น ์›Œ๋“œ ํด๋ผ์šฐ๋“œ ๊ธฐ์‚ฌ๋“ค ํ•จ๊ป˜ ์ œ๊ณต

๋ ˆ๋ฒจ ํ…Œ์ŠคํŠธ

  • 6๋‹จ๊ณ„์˜ ์˜๋‹จ์–ด ์ œ์‹œ๋ฅผ ํ†ตํ•ด ๋‚˜๋งŒ์˜ ์˜์–ด ๋ ˆ๋ฒจ ํ™•์ธํ•˜๊ธฐ
  • ์œ ๋Ÿฝ์—ฐํ•ฉ ๊ณตํ†ต์–ธ์–ด ํ‘œ์ค€๋“ฑ๊ธ‰(CEFR)์„ ๊ธฐ์ค€์œผ๋กœ ์˜๋‹จ์–ด ๋ ˆ๋ฒจํ™”

๋‰ด์Šค ๊ธฐ์‚ฌ ๋ชฉ๋ก

  • ์„ ๋ณ„๋œ ๋‚œ์ด๋„์— ๋”ฐ๋ฅธ ๊ธฐ์‚ฌ ๋ชฉ๋ก ์ œ๊ณต
  • ์นดํ…Œ๊ณ ๋ฆฌ ๋Œ€,์†Œ๋ถ„๋ฅ˜ ํ•„ํ„ฐ๋ฅผ ํ†ตํ•œ ํ•„ํ„ฐ ๊ธฐ์‚ฌ ์ œ๊ณต
  • ๋ชจ๋“  ๊ธฐ์‚ฌ ๋ชฉ๋ก ํŽ˜์ด์ง€์— ๋”๋ณด๊ธฐ ๊ตฌํ˜„

๋‚˜๋ผ๋ณ„ ๋‰ด์Šค ๊ธฐ์‚ฌ ๋ชฉ๋ก

  • ๋Œ€๋ถ„๋ฅ˜ ๋‚˜๋ผ๋ณ„ ๊ธฐ์‚ฌ๋“ค์„ ์ง€๊ตฌ๋ณธ ์ƒ์˜ ๋งˆ์ปค์™€ ๋ฆฌ์ŠคํŠธ๋ฅผ ํ†ตํ•ด ์‹œ๊ฐํ™”ํ•˜์—ฌ ์ œ๊ณต
  • ๋‚˜๋ผ ์„ ํƒ์‹œ ํ•ด๋‹น ๊ตญ๊ฐ€์˜ ์ƒ์œ„ ์–ธ๊ธ‰ ํ‚ค์›Œ๋“œ๋ฅผ ์˜ค๋ฒ„๋ ˆ์ด์™€ ํ•ด์‰ฌํƒœ๊ทธ ํ˜•ํƒœ๋กœ ์ œ๊ณต

๊ธฐ์‚ฌ ์ƒ์„ธ ํŽ˜์ด์ง€

  • ๋ฒˆ์—ญ, TTS, ์Šคํฌ๋žฉ ๊ธฐ๋Šฅ ์ œ๊ณต
  • ๊ธฐ์‚ฌ ๋‚ด ์ตœ๋‹ค ๋นˆ์ถœ ๋‹จ์–ด ์ œ๊ณต ๋ฐ ์ €์žฅ ๊ธฐ๋Šฅ
  • ํ•ต์‹ฌ ๋‹จ์–ด์—์„œ TF-IDF ๊ณ„์‚ฐํ•œ ๊ฒฐ๊ณผ๋กœ ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„ ๊ณ„์‚ฐํ•ด ๊ด€๋ จ ๊ธฐ์‚ฌ ์ œ๊ณต

์˜์–ด ๊ฒŒ์ž„ - ์Šคํ”ผ๋“œ ํ€ด์ฆˆ

  • ํ•œ ๋ฌธ์ œ๋‹น 10์ดˆ์˜ ์ œํ•œ์‹œ๊ฐ„์„ ๋‘๊ณ  ์˜๋‹จ์–ด ๋งž์ถ”๊ธฐ
  • ์ฒ˜์Œ 5์ดˆ๋Š” ์˜์–ด ์„ค๋ช…์œผ๋กœ ์ •๋‹ต ์œ ์ถ”
  • ์ดํ›„ 5์ดˆ๋Š” ํ•œ๊ธ€ ๋œป ์ถ”๊ฐ€ํ•˜์—ฌ ์œ ์ถ”
  • ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ์œ„ํ•ด ์—”ํ„ฐ์™€ ๋ฐฑ์ŠคํŽ˜์ด์Šค๋ฅผ ํ†ตํ•œ input ์ „ํ™˜
  • ํ•ด๊ฒฐ ์‹œ๊ฐ„์— ๋”ฐ๋ฅธ ๋ฑƒ์ง€ ํš๋“
  • ๊ฒŒ์ž„ ์ข…๋ฃŒ ํ›„ ์ž…๋ ฅ ๋‹ต์•ˆ ๋น„๊ต, ํ•ด๋‹น ๋‹จ์–ด ์ถ”๊ฐ€ ๊ธฐ๋Šฅ ์ œ๊ณต

์˜์–ด ๊ฒŒ์ž„ - ๋‚ฑ๋ง ํผ์ฆ

  • ์ง์ ‘ ๊ตฌํ˜„ํ•œ ๋‚ฑ๋ง ํผ์ฆ ์ƒ์„ฑ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ†ตํ•ด ๊ฒŒ์ž„ํŒ ์ƒ์„ฑ
  • ์˜์–ด ๋œป์œผ๋กœ ์ œ๊ณต๋˜๋Š” ํžŒํŠธ๋ฅผ ๋ณด๊ณ  ๊ฐ€๋กœ์™€ ์„ธ๋กœ ํผ์ฆ ํ•ด๊ฒฐ
  • ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ์œ„ํ•ด ์—”ํ„ฐ์™€ ๋ฐฑ์ŠคํŽ˜์ด์Šค๋ฅผ ํ†ตํ•œ input ์ „ํ™˜
  • ๊ฒŒ์ž„ ์ข…๋ฃŒ ํ›„ ์ž…๋ ฅ ๋‹ต์•ˆ ๋น„๊ต, ํ•ด๋‹น ๋‹จ์–ด ์ถ”๊ฐ€ ๊ธฐ๋Šฅ ์ œ๊ณต

๊ฒ€์ƒ‰

  • ํ‚ค์›Œ๋“œ, ์นดํ…Œ๊ณ ๋ฆฌ ํ•„ํ„ฐ, ๊ธฐ๊ฐ„, ๋ ˆ๋ฒจ์— ๋”ฐ๋ฅธ ๊ธฐ์‚ฌ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์ œ๊ณต
  • ๊ฒ€์ƒ‰ ํ‚ค์›Œ๋“œ๊ฐ€ ์–ด๋Š ์นดํ…Œ๊ณ ๋ฆฌ์— ๋งŽ์ด ๋ฐœ์ƒํ–ˆ๋Š”์ง€ ์ฐจํŠธ๋กœ ์‹œ๊ฐ์  ํšจ๊ณผ ์ œ๊ณต

์˜ค๋Š˜์˜ ๋‹จ์–ด

  • ์‚ฌ์šฉ์ž๊ฐ€ ์˜ค๋Š˜ ํ•˜๋ฃจ ์•Œ๋ฉด ์ข‹์€ 10๊ฐœ์˜ ๋‹จ์–ด
  • ์˜ค๋Š˜ ๋ฐœํ–‰๋œ ๊ธฐ์‚ฌ ์ค‘ ์ตœ๋‹ค ๋นˆ์ถœ๋œ ๋‹จ์–ด ์ƒ์œ„ 10๊ฐœ๋ฅผ ๋ฝ‘์•„ ์ œ๊ณต

โœจ ์ฃผ์š” ๊ธฐ๋Šฅ

  • ๋‹ค์–‘ํ•œ ๋‰ด์Šค ๊ธฐ์‚ฌ ๋ชฉ๋ก ์กฐํšŒ ๋ฐ ๊ฒ€์ƒ‰ ์ œ๊ณต
    • ์กฐํšŒ์ˆ˜๊ฐ€ ๋†’์€ ํ•ซํ† ํ”ฝ ๊ธฐ์‚ฌ ๋ชฉ๋ก ์ œ๊ณต
    • ์‚ฌ์šฉ์ž์˜ ๊ด€์‹ฌ ์นดํ…Œ๊ณ ๋ฆฌ, ๋ ˆ๋ฒจ์— ๋งž๋Š” ๊ธฐ์‚ฌ ์ถ”์ฒœ
    • ์ฝ๊ณ ์žˆ๋Š” ๊ธฐ์‚ฌ์™€ ๊ด€๋ จ๋œ ๊ธฐ์‚ฌ ์ถ”์ฒœ
    • ๋‚˜๋ผ๋ณ„ ๊ธฐ์‚ฌ ๋ชฉ๋ก (์ง€๊ตฌ๋ณธ์„ ํ†ตํ•œ ์‹œ๊ฐ์  ํšจ๊ณผ ์ œ๊ณต)
    • ๊ธฐ์‚ฌ ๋ชฉ๋ก ๋‚ด ์นดํ…Œ๊ณ ๋ฆฌ, ๋‚œ์ด๋„๋ณ„ ํ•„ํ„ฐ ์ œ๊ณต
    • ๊ธฐ์‚ฌ ๊ฒ€์ƒ‰ ์„œ๋น„์Šค
  • ๋‚œ์ด๋„์— ๋งž๋Š” ๋‰ด์Šค ๊ธฐ์‚ฌ ์ œ๊ณต
    • ๋ ˆ๋ฒจํ…Œ์ŠคํŠธ๋ฅผ ํ†ตํ•ด ์œ ์ € ๋ ˆ๋ฒจ ์ธก์ •
    • ๊ธฐ์‚ฌ๋ณ„ ํฌํ•จ ๋‹จ์–ด๋“ค์˜ ๋‚œ์ด๋„ ๋ถ„์„์„ ํ†ตํ•ด ๊ธฐ์‚ฌ ๋ ˆ๋ฒจ ๋ถ€์—ฌ
  • ๋ฐ์ผ๋ฆฌ ์ปจํ…์ธ 
    • ์˜ค๋Š˜์˜ ๋‹จ์–ด
    • ์˜ค๋Š˜์˜ ์›Œ๋“œํด๋ผ์šฐ๋“œ
  • ์˜์–ด ๊ธฐ์‚ฌ ์ •๋ณด ์ œ๊ณต
    • ๊ธฐ์‚ฌ ๋‚ด์šฉ๊ณผ ๊ฐ€์žฅ ์—ฐ๊ด€๋œ ํ•ต์‹ฌ๋‹จ์–ด ๋ชฉ๋ก ์ œ๊ณต
    • ๊ธฐ์‚ฌ ๋ฒˆ์—ญ & TTS ๊ธฐ๋Šฅ & ์Šคํฌ๋žฉ & ๋‹จ์–ด ์ €์žฅ & ๊ด€๋ จ ๊ธฐ์‚ฌ ์ œ๊ณต
    • ์—…์  ๋‹ฌ์„ฑ์„ ํ†ตํ•œ ๋ฑƒ์ง€ ์ˆ˜์ง‘์œผ๋กœ ๊ณต๋ถ€ ํฅ๋ฏธ๋„ ๋†’์ž„
  • ์˜๋‹จ์–ด ํ™œ์šฉํ•œ ๊ฒŒ์ž„ ์ œ๊ณต
    • ๋‚ฑ๋ง ํผ์ฆ
    • ์Šคํ”ผ๋“œ ํ€ด์ฆˆ
  • ์‚ฌ์šฉ์ž ์นœํ™”์  UI
    • ๋‹คํฌ ๋ชจ๋“œ ์ง€์›
    • ๋ชจ๋ฐ”์ผ ๋ทฐ ์ง€์›

๐Ÿ–ฅ๏ธ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ

๐Ÿ”จ Management Tool

  • ํ˜•์ƒ ๊ด€๋ฆฌ : Gitlab
  • ์ด์Šˆ ๊ด€๋ฆฌ : Jira
  • ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ : Mattermost, Webex, Notion
  • ๋””์ž์ธ : Figma, Adobe Illustrator, Adobe Photoshop, Adobe After Effect

๐Ÿณ Backend

  • Java open-JDK zulu 8.33.0.1
  • SpringBoot 2.7.3
  • Gradle 7.5
  • Lombok 1.18.24
  • Mybatis 2.2.2
  • Swagger
  • Spring Security 2.4.5
  • Python 3.7.10
  • Jupyter notebook 6.4.12
  • spark 3.2.1
  • Scala 2.12.15

๐ŸฆŠ Frontend

  • lang: HTML5, CSS3, JAVASCRIPT, Node.js 16.16.0
  • framework: react 16.13.1
  • style : Sass
  • http: axios
  • formatter : eslint + prettier
  • router : react-router-dom 6.3.0
  • state management tool : react-redux 8.0.2
  • Libary
     "@fortawesome/fontawesome-svg-core": "^6.2.0",
     "@fortawesome/free-regular-svg-icons": "^6.2.0",
     "@fortawesome/free-solid-svg-icons": "^6.2.0",
     "@fortawesome/react-fontawesome": "^0.2.0",
     "@nivo/pie": "^0.80.0",
     "@testing-library/jest-dom": "^5.16.5",
     "@testing-library/react": "^10.0.0",
     "@testing-library/user-event": "^13.5.0",
     "aos": "^2.3.4",
     "axios": "^0.27.2",
     "install": "^0.13.0",
     "moment": "^2.29.4",
     "node-sass": "^7.0.1",
     "npm": "^8.19.2",
     "pageable": "^0.6.8",
     "rc-slider": "^9.3.0",
     "react": "^16.13.1",
     "react-calendar": "^3.9.0",
     "react-dom": "^16.13.1",
     "react-globe": "^5.0.2",
     "react-redux": "^8.0.2",
     "react-responsive": "^9.0.0-beta.10",
     "react-router-dom": "^6.3.0",
     "react-scripts": "5.0.1",
     "react-wordcloud": "^1.2.7",
     "redux": "^4.2.0",
     "redux-persist": "^6.0.0",
     "redux-promise": "^0.6.0",
     "redux-thunk": "^2.4.1",
     "sass-loader": "^13.0.2",
     "three": "^0.122.0",
     "web-vitals": "^2.1.4"
  • API

๐Ÿ—‚๏ธ DB

  • MySQL 8.0.30

๐ŸŒ Server

  • https (TLS 1.0)
  • Ubuntu 20.0.4
  • Nginx 1.23
  • PuTTY 0.77
  • mobaXterm 22.1
  • Docker 20.10.18
  • Jenkins Jenkins/jenkins:lts-jdk11 (Docker image tag name)

๐Ÿ”จ IDE

  • IntelliJ 2022.2
  • MySQL Workbench 8.0.29
  • VSCode 1.69.2

๐Ÿ’ซ ์‹œ์Šคํ…œ ์•„ํ‚คํ…์ฒ˜

์‹œ์Šคํ…œ ์•„ํ‚คํ…์ฒ˜


โœจ ๊ธฐ์ˆ  ํŠน์ด์ 

  • ๋‚œ์ด๋„๋ณ„ ๋‰ด์Šค ๊ธฐ์‚ฌ ์ œ๊ณต
  • ์‚ฌ์šฉ์ž ๊ด€์‹ฌ ์นดํ…Œ๊ณ ๋ฆฌ & ๋ ˆ๋ฒจ ๊ธฐ๋ฐ˜์œผ๋กœ ๋งž์ถค ๋‰ด์Šค ์ œ๊ณต
  • ๋‹คํฌ๋ชจ๋“œ & ๋ชจ๋ฐ”์ผ ์ง€์›
  • ๋‚˜๋ผ๋ณ„ ๊ธฐ์‚ฌ ๋ชฉ๋ก ์ง€๊ตฌ๋ณธ ์‹œ๊ฐํ™”
  • CEFR์„ ํ†ตํ•œ ๋ ˆ๋ฒจํ…Œ์ŠคํŠธ
  • ๊ฒŒ์ž„ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ง์ ‘ ๊ตฌํ˜„
  • ๊ธฐ์‚ฌ ๋‚œ์ด๋„ ๋ถ„์„
    • CEFR์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‚œ์ด๋„ ๊ณ„์‚ฐํ•ด ์ง€์ •
  • 6๊ฐœ์˜ ํ•ด์™ธ๋‰ด์Šค ์‚ฌ์ดํŠธ์—์„œ ๋งค์ผ ๊ธฐ์‚ฌ ์ˆ˜์ง‘
  • ํ•˜๋‘ก์„ ์‚ฌ์šฉํ•œ ๋ถ„์‚ฐ ์ฒ˜๋ฆฌ
    • ํด๋Ÿฌ์Šคํ„ฐ ์„œ๋ฒ„์—์„œ ์ŠคํŒŒํฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‰ด์Šค ๊ธฐ์‚ฌ๋“ค์˜ ๋‹จ์–ด์— ๋Œ€ํ•œ TF-IDF๋ฅผ ๊ณ„์‚ฐ
      • 4๋ฒˆ์˜ ๋งตํ•‘๊ณผ 3๋ฒˆ์˜ ๋ฆฌ๋“€์Šค ๊ณผ์ • ์ง„ํ–‰
    • ๋ฐ์ผ๋ฆฌ ์ปจํ…์ธ 
    • ์˜ค๋Š˜์˜ ๋‹จ์–ด : ๋‹น์ผ ์ˆ˜์ง‘๋œ ์ „์ฒด ๊ธฐ์‚ฌ ๋‚ด์šฉ ์›Œ๋“œ์นด์šดํŠธ
    • ๋ฐ์ผ๋ฆฌ ์›Œ๋“œํด๋ผ์šฐ๋“œ & ๋‚˜๋ผ๋ณ„ ํ•ต์‹ฌ ํ‚ค์›Œ๋“œ : ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„ ๋นˆ๋„์ˆ˜ ๋†’์€ k๊ฐœ ์„ ์ •
    • ๊ธฐ์‚ฌ ์ƒ์„ธ ํ•ต์‹ฌ ๋‹จ์–ด : ๊ธฐ์‚ฌ๋ณ„ ์›Œ๋“œ ์นด์šดํŠธ ์ˆ˜ํ–‰ -> TF-IDF ๊ณ„์‚ฐ ํ›„ ์„ ์ •
    • ๊ด€๋ จ ๊ธฐ์‚ฌ ๋ชฉ๋ก : ํ•ต์‹ฌ๋‹จ์–ด ์ถ”์ถœํ•œ ๊ฒฐ๊ณผ๋กœ ๋‹ค๋ฅธ ๊ธฐ์‚ฌ์™€ ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„ ๊ณ„์‚ฐ

๐Ÿ“‚ ๊ธฐํš ๋ฐ ์„ค๊ณ„ ์‚ฐ์ถœ๋ฌผ

์š”๊ตฌ์‚ฌํ•ญ ์ •์˜ ๋ฐ ๊ธฐ๋Šฅ ๋ช…์„ธ

ํ™”๋ฉด์„ค๊ณ„์„œ

erd


โœจ Conventions

NEWSTUDY ํŒ€์›๋“ค์˜ ์›ํ™œํ•œ Gitlab, Jira ์‚ฌ์šฉ์„ ์œ„ํ•œ โœจ์ปจ๋ฒค์…˜โœจ ์ž…๋‹ˆ๋‹ค :)


๐Ÿ’ž ํŒ€์› ์†Œ๊ฐœ

โค๏ธโ€๐Ÿ”ฅ NEWSTUDY๋ฅผ ๊ฐœ๋ฐœํ•œ ์‹ธํ”ผ๊ทธ๋ฃน ์˜์–ดํ† ์ต๋ฐ˜ ํŒ€์›๋“ค์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค!
ํ•œ์œค์„ ๊น€์ˆ˜๋นˆ ์ดํ™”์—ฐ ์œก๋‹ค๋นˆ ์œค์ผ์ค€ ์ •์ˆ˜๋นˆ
Leader & Frontend Frontend Frontend Backend Backend Backend

๐Ÿ˜ƒ ํŒ€์› ์—ญํ• 

  • ํ•œ์œค์„
    • ํŒ€์žฅ, ์˜จ๋ณด๋”ฉ, ๊ฒŒ์ž„, ๊ธฐ์‚ฌ ์ƒ์„ธ, ๋‚˜๋ผ๋ณ„ ๊ธฐ์‚ฌ
  • ๊น€์ˆ˜๋นˆ
    • ๋””์ž์ธ, UCC, ๋žœ๋”ฉ/๊ธฐ์‚ฌ๋ชฉ๋ก/๊ฒ€์ƒ‰
  • ์ดํ™”์—ฐ
    • ํšŒ์›๊ด€๋ฆฌ, ๋‹คํฌ๋ชจ๋“œ, ๋งˆ์ดํŽ˜์ด์ง€, ๋‚˜๋ผ๋ณ„ ๊ธฐ์‚ฌ
  • ์œก๋‹ค๋นˆ
    • ์„œ๊ธฐ, ๊ด€๋ จ ๊ธฐ์‚ฌ ์ถ”์ฒœ, ๋ฐ์ดํ„ฐ ์ „์ฒ˜๋ฆฌ, ๋‹จ์–ด-์นดํ…Œ๊ณ ๋ฆฌ ๊ด€๋ จ API
  • ์œค์ผ์ค€
    • ๋ฐฐํฌ, ๋ณด์•ˆ, ํšŒ์› ๊ด€๋ จ API, UCC ์ฃผ์—ฐ ๋ฐฐ์šฐ
  • ์ •์ˆ˜๋นˆ
    • ๋‰ด์Šค ๋ ˆ๋ฒจ, ์›Œ๋“œ์นด์šดํŠธ, ๋‰ด์Šค๊ฒ€์ƒ‰ API