Skip to content

mitoconcrete/waiting-catch-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

1,151 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

โฒ๏ธ WAITING CATCH! โฒ๏ธ

"์‚ฌ์šฉ์ž๊ฐ€ ์„ค์ •ํ•œ ์ง€์—ญ์˜ ๋ ˆ์Šคํ† ๋ž‘์„ ๋ถˆ๋Ÿฌ์™€ ์ค„์„œ๊ธฐ๋ฅผ ๋Œ€์‹ ํ•ด์ฃผ๊ณ , ๊ทธ๊ฒƒ๊ณผ ๊ด€๋ จ๋œ ์„œ๋น„์Šค๋ฅผ ํŽธ๋ฆฌํ•˜๊ฒŒ๋ฅผ ๋Œ€์‹  ํ•ด์ฃผ๋Š” ์›น์‚ฌ์ดํŠธ ์ž…๋‹ˆ๋‹ค."
๋ฐฑ์—”๋“œ ๋กœ์ง์— ์ง‘์ค‘ํ•˜๊ธฐ ์œ„ํ•ด์„œ ํ™”๋ฉด์€ ์ตœ๋Œ€ํ•œ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ๋งŒ๋“ค๊ณ  ์„ค๊ณ„ํ•˜์˜€์œผ๋ฉฐ REST API ์„œ๋ฒ„๋กœ ๋Œ€์šฉ๋Ÿ‰ ํŠธ๋ž˜ํ”ฝ์„ ๊ณ ๋ คํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ๊ฐœ๋ฐœํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๐Ÿš€ Tech Stack

๐Ÿš€ Architecture

architecture

๐Ÿš€ WIKI

ํ™”๋ฉด ์„ค๊ณ„์— ๋Œ€ํ•œ Figma ํ”„๋กœํ† ํƒ€์ž… ๋””์ž์ธ๊ณผ Usecase๋ฅผ ๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ์ˆ ์ ์ธ ๋ฌธ์ œ์— ๋ถ€๋”ชํ˜€ ํ•ด๊ฒฐํ•œ ์ด์•ผ๊ธฐ์— ๋Œ€ํ•œ ๊ฐœ์ธ ํ…Œํฌ ๋ธ”๋กœ๊ทธ์˜ ์ฃผ์†Œ๋„ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ‘ฅ Members

  • ๊น€ํƒœํ›ˆ(๋ฆฌ๋”) : ์œ ์ € - ์‹œํ๋ฆฌํ‹ฐ, ๋กœ๊ทธ์ธ, ๋กœ๊ทธ์•„์›ƒ
  • ๋ฐ•์ •ํ›ˆ(๋ถ€๋ฆฌ๋”) : ๋ ˆ์Šคํ† ๋ž‘ - ํŒ๋งค์ž์‹ ์ฒญ, ๋ธ”๋ž™๋ฆฌ์ŠคํŠธ,๋ ˆ์Šคํ† ๋ž‘์ˆ˜์ •
  • ํ•œ์ •๊ทœ : ๋ ˆ์Šคํ† ๋ž‘ - ๋ฉ”๋‰ด, ์นดํ…Œ๊ณ ๋ฆฌ, ๊ฒ€์ƒ‰
  • ์กฐ์„ฑ์ œ : ์ค„์„œ๊ธฐ - ํ˜ธ์ถœ, ๋ฆฌ๋ทฐ
  • ์†ก๊ฒฝํ—Œ : ์ด๋ฒคํŠธ - ์ฟ ํฐ ์œ ์ € ๋ฐœ๊ธ‰์ฟ ํฐ

๐Ÿš€ Focus

โœ”๏ธ ๋Œ€์šฉ๋Ÿ‰ ํŠธ๋ž˜ํ”ฝ์˜ ์ƒํ™ฉ์—์„œ ์ง€์†์ ์ธ ์„œ๋ฒ„ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•˜์˜€์Šต๋‹ˆ๋‹ค.
โœ”๏ธ ๊พธ์ค€ํ•œ ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง์„ ์ง„ํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค.
โœ”๏ธ ์ด์œ ์™€ ๊ทผ๊ฑฐ๊ฐ€ ๋ช…ํ™•ํ•œ ๊ธฐ์ˆ ์˜ ์‚ฌ์šฉ์„ ์ง€ํ–ฅํ•ฉ๋‹ˆ๋‹ค.
โœ”๏ธ ๊ฐ์ฒด์ง€ํ–ฅ์  ๊ฐœ๋…์„ ์ดํ•ดํ•˜๊ณ  ์ด๋ฅผ ์ฝ”๋“œ์— ๋…น์—ฌ๋‚ด์–ด ์˜๋ฏธ ์žˆ๋Š” ์„ค๊ณ„๋ฅผ ์ง€ํ–ฅํ•˜์˜€์Šต๋‹ˆ๋‹ค.
โœ”๏ธ ์„ฑ๊ณต๋งŒ ํ•˜๋Š” ํ…Œ์ŠคํŠธ๋ณด๋‹จ ์‹คํŒจํ•  ๋งŒํ•œ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค.
โœ”๏ธ ๋ฐ˜๋ณต์ ์ธ ์ž‘์—…์€ ์ž๋™ํ™”ํ•˜์—ฌ ๊ฐœ๋ฐœ์˜ ํšจ์œจ์„ ๋†’์ด๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๐Ÿš€ Layout

๊ณ ๊ฐ ํŽ˜์ด์ง€

Capture

ํŒ๋งค์ž ํŽ˜์ด์ง€

ํŒ๋งค์ž

๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€

๊ด€๋ฆฌ์ž

๐Ÿš€ ERD

ERD

๐Ÿš€ API Document

๊ณ ๊ฐ API ๋ช…์„ธ์„œ : ๊ณ ๊ฐ์— ๊ด€ํ•œ API
ํŒ๋งค์ž API ๋ช…์„ธ์„œ : ํŒ๋งค์ž์— ๊ด€ํ•œ API
๊ด€๋ฆฌ์ž API ๋ช…์„ธ์„œ : ๊ด€๋ฆฌ์ž์— ๊ด€ํ•œ API

๐Ÿš€ Rules

Git-flow

Git-flow ๋ธŒ๋žœ์น˜ ์ „๋žต์— ๋”ฐ๋ผ ๊ธฐ๋Šฅ๋ณ„๋กœ ๋ธŒ๋žœ์น˜๋ฅผ ๋‚˜๋ˆ„์–ด ์ž‘์—…ํ•˜๊ณ  ์žˆ๊ณ  ๋ชจ๋“  ๋ธŒ๋žœ์น˜์— ๋Œ€ํ•ด pull request๋ฅผ ํ†ตํ•œ ๋ฆฌ๋ทฐ ์™„๋ฃŒ ํ›„ merge๋ฅผ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.


๊นƒํ—ˆ๋ธŒ ์ „๋žต


โœ… master : ์ œํ’ˆ์œผ๋กœ ์ถœ์‹œ๋  ์ˆ˜ ์žˆ๋Š” ๋ธŒ๋žœ์น˜๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
โœ… develop : ๋‹ค์Œ ์ถœ์‹œ ๋ฒ„์ „์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋ธŒ๋žœ์น˜์ž…๋‹ˆ๋‹ค. feature์—์„œ ๋ฆฌ๋ทฐ ์™„๋ฃŒํ•œ ๋ธŒ๋žœ์น˜๋ฅผ Mergeํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
โœ… feature : ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•˜๊ณ  hotfix ๋ฒ„๊ทธ ์ˆ˜์ •๋„ ๊ฐ™์ดํ•˜๋Š” ๋ธŒ๋žœ์น˜์ž…๋‹ˆ๋‹ค.

PR

  • ๋ธŒ๋žœ์น˜๋Š” develop์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ƒ์„ฑํ•˜๊ณ , ๋„๋ฉ”์ธ ๋‹จ์œ„๋กœ ์ƒ์„ฑํ•˜๊ณ  PR์„ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค. feature/๋„๋ฉ”์ธ๋ช… (์˜์–ด๋กœ)
  • Github Project๋ฅผ ์‚ฌ์šฉ : New: ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ, Ready: ๋งŒ๋“ค์–ด์•ผ ํ•˜๋Š” ๊ธฐ๋Šฅ, In progress: ๋งŒ๋“ค๊ณ  ์žˆ๋Š” ๊ธฐ๋Šฅ,
    In review: ๋ฆฌ๋ทฐ ์ค‘์ธ ๊ธฐ๋Šฅ, Done: ๋๋‚œ ๊ธฐ๋Šฅ์œผ๋กœ ๋‚˜๋ˆ„์–ด ๋ถ„์—…ํ™”ํ•œ๋‹ค.
  • commit์€ C/R/U/D ๊ธฐ๋Šฅ๋‹จ์œ„๋กœ ๋ฌถ๊ณ  [์ปค๋ฐ‹๋ถ„๋ฅ˜] #์ด์Šˆ ๋ฒˆํ˜ธ ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€ ํ˜•์‹์œผ๋กœ ๋งŒ๋“ ๋‹ค. ex:[feat] #1 ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ชจ๋“  PR์€ ๋ฐ˜๋“œ์‹œ ์ง€์ •ํ•œ ๋ฆฌ๋ทฐ์–ด์—๊ฒŒ ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋ฅผ ๋ฐ›์•„์•ผ๋งŒ ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฆฌ๋ทฐ์–ด ์ค‘ ๋ชจ๋“  ๋ฆฌ๋ทฐ์–ด์˜ Approve๋ฅผ ๋ฐ›์•„์•ผ Merge pull request๋ฅผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ชจ๋“  PR์€ Github Action์˜ CI/CD๋ฅผ ํ†ต๊ณผํ•˜๊ณ  ํ†ต๊ณผ๊ฐ€ ๋˜์–ด์•ผ Merge pull request๋œ๋‹ค.

Review

  • ์ •ํ•ด์ง„ ์ปค๋ฐ‹ ์ปจ๋ฒค์…˜๊ณผ ์ฝ”๋”ฉ ์ปจ๋ฒค์…˜์„ ์ง€์ผœ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.
  • ํ•ฉ์˜๋˜์ง€ ์•Š์€ ์ฝ”๋“œ๋Š” ๋ฆฌ๋ทฐ๋ฅผ ํ†ตํ•ด ํ•„ํ„ฐ๋งํ•ฉ๋‹ˆ๋‹ค.
  • ํŒ€์› ์ „์›์˜ ์Šน์ธ์ด ์žˆ์–ด์•ผ, Merge๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
  • ์˜ค์ „(10์‹œ - 13์‹œ)์€ PR์— ๋Œ€ํ•ด ํŒ€์› ์ „์›์ด ๋ฆฌ๋ทฐํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฆฌ๋ทฐ๋Š” ์šฐ์„ ์ˆœ์œ„๋ฅผ ์ •ํ•˜์—ฌ, ๋‹ค๋ฅธ ์ž‘์—…์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ ๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฆฌ๋ทฐ๋Š” ์•„์นจ ํšŒ์˜์—์„œ ๊ฒฐ์ •๋œ ์šฐ์„ ์ˆœ์œ„๋Œ€๋กœ ์ง„ํ–‰ํ•˜๋ฉฐ, ๋ฆฌ๋ทฐ ์ดํ›„์— Merge๋ฅผ ํ•œ ๋ฒˆ์— ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

Commit Message Convention

  • [feat] : ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • [fix] : ๋ฒ„๊ทธ ์ˆ˜์ •
  • [docs] : ๋ฌธ์„œ ์ˆ˜์ •
  • [build] : ๋นŒ๋“œ ๊ด€๋ จ ํŒŒ์ผ ์ˆ˜์ •
  • [style] : ์ฝ”๋“œ ํฌ๋งทํŒ…, ์ฝ”๋“œ ์ž์ฒด์˜ ๋ณ€๊ฒฝ์ด ์—†๋Š” ๊ฒฝ์šฐ
  • [refactor] : ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง
  • [test] : ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€
  • [merge] : ๋ณ‘ํ•ฉ
  • [design] : CSS ๋“ฑ ์‚ฌ์šฉ์ž UI ๋””์ž์ธ ๋ณ€๊ฒฝ
  • [comment] : ํ•„์š”ํ•œ ์ฃผ์„ ์ถ”๊ฐ€ ๋ฐ ๋ณ€๊ฒฝ
  • [rename] : ํŒŒ์ผ, ๋ณ€์ˆ˜, ๋ฉ”์„œ๋“œ, ํด๋”๋ช…์„ ์ˆ˜์ •ํ•˜๋Š” ๊ฒฝ์šฐ
  • [remove] : ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ํŒŒ์ผ ํ˜น์€ ํด๋”๋ฅผ ์‚ญ์ œํ•˜๋Š” ๊ฒฝ์šฐ

Coding Convention

Naver Hackday Java Coding Convention

Details
  • ์ฃผ์„์€ ํ•œ ์ค„๋กœ ์ •๋ฆฌ ๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด //๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์—”ํ„ฐ๋ฅผ ํ†ตํ•ด ์ค„์ด ๋„˜์–ด๊ฐ€์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ /**/๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
  • Service ๋Š” ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
  • Service ์ธ์ž๋กœ ๋ฐ›๋Š” ๊ฒƒ์€ DTO ์—ฌ์•ผํ•˜๊ณ , ๋•Œ๋ ค์ฃฝ์–ด๋„ ๋ฐ”๋€” ์ผ์ด ์—†๋Š” ๊ฐ’์€ ์ปจํŠธ๋กค๋Ÿฌ DTO๋ฅผ ๊ทธ๋Œ€๋กœ ๊ฐ€์ ธ์™€์„œ ์‚ฌ์šฉํ•œ๋‹ค.
  • DTO๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ์ˆซ์ž์™€ ๊ด€๊ณ„์—†์ด ์ƒ์„ฑํ•˜์—ฌ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.
  • DTO๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜ 2๊ฐœ ์ด์ƒ์ผ ๊ฒฝ์šฐ์—๋งŒ ์ƒ์„ฑํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค.
  • ๋‹จ, InternalService๋Š” DTO๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.
  • ๋ฉ”์„œ๋“œ ๋ช…์€ ๋™์‚ฌ + ๋ช…์‚ฌ์˜ ์กฐํ•ฉ์œผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค.
  • DTO ๋„ค์ด๋ฐ์€ ๋ฉ”์„œ๋“œ ๋„ค์ด๋ฐ + ๋ ˆ์ด์–ด๋„ค์ž„(Service, Controller) + Response/Request ๋กœ ํ•œ๋‹ค.(DTO ๋บ€๋‹ค)
    • ex) XxxControllerRequest, XxxServiceResponse, XxxServiceRequest
  • ๋ณธ์ธ์ด ์ƒ๊ฐํ–ˆ์„ ๋•Œ ๋ฐ”๋€” ์ผ์ด ์—†๋Š” ๊ฒƒ์€ ๋ ˆ์ด์–ด ๋„ค์ž„์„ ์ œ์™ธํ•œ๋‹ค.
    • ex) XxxRequest, XxxResponse
  • ์„œ๋น„์Šค ๋ ˆ์ด์–ด ๋‚ด๋ถ€์—์„œ ์‚ฌ์šฉํ•  ์—”ํ‹ฐํ‹ฐ๋ฅผ return ํ•˜๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์„œ๋น„์Šค ๋‚ด์— _๋กœ ์ •์˜ํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค.
    • ex) _getUser, _getReservation โ†’ Entity๋ฅผ ๋ฐ˜ํ™˜
    • ex) getUser, getReservation โ†’ Dto๋ฅผ ๋ฐ˜ํ™˜
  • ํ•˜๋‚˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์„ ์–ธ๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ : get, create, update, delete + by + ๋งค๊ฐœ๋ณ€์ˆ˜ ๋ช…
  • 2๊ฐœ ์ด์ƒ ๋ณต์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์„ ์–ธ๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ : get, create, update, delete + ์ „๋‹ฌ๋˜๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํ•œ ๋‹จ์–ด๋กœ ์ถ•์•ฝํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค.
  • ๋ณต์ˆ˜ ๋ณ€์ˆ˜๋ช… : ~s(o), ~List(x)

Performance Test

test

๐Ÿš€ ๊ฐœ์ธ ๋ธ”๋กœ๊ทธ

Hits

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors