๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์˜ค๋Š˜์˜ ์‚ฝ์งˆ

[์›น] SeeMe ํ”„๋กœ์ ํŠธ 1์ฃผ์ฐจ : ์ฝ”๋”ฉ ์ด์ „ ์„ค๊ณ„

by nitronium102 2021. 7. 7.

- API ์ŠคํŽ™ ์„ค๊ณ„

- Gitbook ์ œ์ž‘

- DB ๋ชจ๋ธ๋ง

- RDS ๋„์šฐ๊ณ  ๊ธฐ์ดˆ ๋ฐ์ดํ„ฐ๋กœ ์ดˆ๊ธฐํ™”

 

21.07.02 API ์ŠคํŽ™ ์„ค๊ณ„

๋™์•„๋ฆฌ ์ฒซ ๋งŒ๋‚จ! 1์‹œ๋ถ€ํ„ฐ 6์‹œ๊นŒ์ง€ ์ง„ํ–‰ํ–ˆ๋‹ค.

01. ๋ฉ”์ธ ํŽ˜์ด์ง€(๋‚ ์”จ) / ๋ฏธ์„ธ๋จผ์ง€ ํŽ˜์ด์ง€ / ์ฝ”๋กœ๋‚˜ ํŽ˜์ด์ง€๋ฅผ ๋‚˜๋ˆ„๊ณ , ๊ทธ ์•ˆ์—์„œ ์„œ๋ฒ„ํ†ต์‹ ์ด ํ•„์š”ํ•œ ๊ธฐ๋Šฅ๋“ค์„ ์ •๋ฆฌํ•˜๊ณ  URL path ์ง€์ •ํ–ˆ๋‹ค.

02. ๋…ธ์…˜์— response body์˜ key-value ์˜ˆ์‹œ ์จ๋†จ๊ณ  ๋ณ€์ˆ˜ ์ด๋ฆ„, ํƒ€์ž…, ์„ค๋ช…์„ ํ‘œ๋กœ ์ •๋ฆฌํ–ˆ๋‹ค(Typora ์‚ฌ์šฉ)

03. figma์—์„œ ํ•„์š”ํ•œ ์ด๋ฏธ์ง€ ๋‹ค์šด๋ฐ›๊ณ  ๋””์ž์ธ ๊ด€๋ จ ํ”ผ๋“œ๋ฐฑ ๋“œ๋ ธ๋‹ค. ๋””์ž์ธ์ด ์•„์ง ์™„์„ฑ๋˜์ง€ ์•Š์€ ์ƒํƒœ์—ฌ์„œ ์ˆ˜์ • ์š”์ฒญ ๋“œ๋ ธ๊ณ  OOTD ๊ด€๋ จ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์–ด๋–ป๊ฒŒ ์งœ์•ผ ํ• ์ง€ ๊ฐ์ด ์•ˆ ์žกํ˜€์„œ ์ผ๋‹จ์€ ๋‚ ์”จ๋ž‘ ๋งˆ์Šคํฌ ์ด๋ฏธ์ง€๋งŒ ๋‹ค์šด๋ฐ›์•„๋†จ๋‹ค. 

 

์ง‘

๋ ˆํฌ ์ดˆ๊ธฐํ™”ํ–ˆ๋‹ค. java 11, gradle, package ์ด๋ฆ„์„ ๋ฐ›์•„์„œ spring web๊ณผ lombok ๋„ฃ๊ณ  ๋งŒ๋“ค์—ˆ๋‹ค. ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋„ ์ •ํ•ด์ ธ ์žˆ์–ด์„œ ์ˆ˜์›”ํ•˜๊ฒŒ ํ–ˆ๋‹ค!(์• ์ดˆ์— ์–ด๋ ค์šด ๊ฒƒ๋„ ์•„๋‹ˆ์—ˆ์ง€๋งŒ ๊ทธ๋ž˜๋„ ๊ณต๋™ ํ”„๋กœ์ ํŠธ ์ดˆ๊ธฐํ™”๋Š” ๋–จ๋ฆฐ๋‹ค)

 

- ์ด๋ฒˆ์— Gitbook๊ณผ Typora์— ๋Œ€ํ•ด์„œ ์•Œ๊ฒŒ ๋˜์—ˆ๋Š”๋ฐ ์ •๋ง ์‹ ๊ธฐํ–ˆ๋‹ค! ์ง€๊ธˆ๊นŒ์ง€ ๊นƒ์— ์žˆ๋Š” markdown ํŒŒ์ผ๋“ค์€ ์ง์ ‘ ###์ œ๋ชฉ ์ด๋ ‡๊ฒŒ ์น˜๋Š” ์ค„ ์•Œ์•˜๋Š”๋ฐ ํˆด์ด ์žˆ์—ˆ๋‹ค๋‹ˆใ…Ž....

 

21.07.03 Gitbook ์ƒ์„ฑ ๋ฐ API ์ฐพ๊ธฐ + RDS ๋„์šฐ๊ณ  ๊ธฐ์ดˆ ๋ฐ์ดํ„ฐ๋กœ ์ดˆ๊ธฐํ™”

๋‘ ๋ฒˆ์งธ ๋งŒ๋‚จ! ์˜ค๋Š˜์€ 9์‹œ๋ถ€ํ„ฐ 6์‹œ๊นŒ์ง€ ๋‹ฌ๋ ธ๋‹คใ…Ž

Issue, pull request, Project ๊ด€๋ จ ์„ค๋ช… 

code์™€ setting๋ฐ–์— ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜๋˜ ๊ณผ๊ฑฐ์˜ ๋‚˜

์ง€๊ธˆ๊นŒ์ง€ ์™œ ์žˆ๋Š”์ง€ ๋ชฐ๋ž๋˜ ๊นƒํ—ˆ๋ธŒ์˜ ๊ธฐ๋Šฅ์„ ์ƒˆ๋กญ๊ฒŒ ์•Œ๊ฒŒ ๋๋‹ค! 

๊ฐ€์žฅ ๋จผ์ € project๋ฅผ ๋งŒ๋“ค๊ณ  To do / In progress / Done์œผ๋กœ ๋‚˜๋ˆ„์–ด์„œ ์ง€๊ธˆ๊นŒ์ง€ ํ•œ ํ™œ๋™์„ ์ •๋ฆฌํ–ˆ๋‹ค. 

Issue์—์„œ๋Š” Commit message convention์„ ์ •ํ–ˆ๋‹ค! ๋Œ€์ถฉ ์–‘์‹์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค. 

feat() : ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€ํ•  ๋•Œ
fix() : ๋ฒ„๊ทธ ์ˆ˜์ •ํ•  ๋•Œ ....
()๊ด„ํ˜ธ ์•ˆ์—๋Š” ํด๋ž˜์Šค๋ช…๋“ฑ ์–ด๋””๋ฅผ ๊ณ ์ณค๋Š”์ง€ ์ •๋„๋ฅผ ์ ๊ณ ,๋’ค์— ๋ฌด์—‡์ด ๋‹ฌ๋ผ์กŒ๊ณ  ์™œ ์ˆ˜์ •ํ–ˆ๋Š”์ง€ ํ˜„์žฌํ˜•์œผ๋กœ ์ ์Œ.

pull request์—์„œ๋Š” reviewer ๊ธฐ๋Šฅ์„ ์ฒดํ—˜ํ•ด๋ดค๋‹ค. ๋ˆ„๊ฐ€ ์ฝ”๋“œ๋ฅผ ์˜ฌ๋ฆฌ๊ณ  ๋ฆฌ๋ทฐ์–ด๋กœ ์šฐ๋ฆฌ๋ฅผ ์ดˆ์ฒญํ•˜๋ฉด ์šฐ๋ฆฌ๊ฐ€ ๋ฆฌ๋ทฐ๋ฅผ ํ•˜๊ณ  merge๋ฅผ ํ—ˆ๋ฝํ•˜๋Š” ์‹์ด๋‹ค. ๋ญ”๊ฐ€ ์ง„์งœ ํ˜‘์—…ํ•˜๋Š” ๋Š๋‚Œ์ด ๋“ค์—ˆ๋‹ค!

 

00. ํ”„๋กœ์ ํŠธ local test : ์›๋ž˜ jdk 14๋กœ ์ง„ํ–‰ํ–ˆ์ง€๋งŒ ๋ฏธ๋ฌ˜ํ•œ ๊ฒฝ๊ณ ์ฐฝ์ด ์ž๊พธ ๋œจ๊ธธ๋ž˜ jdk 11๋กœ ๋‹ค์‹œ ๊น”์•„์„œ project structure ์ง€์ •ํ–ˆ๋‹ค. 

01. Gitbook ์ƒ์„ฑํ•˜๊ณ  ๊นƒํ—ˆ๋ธŒ์™€ ์—ฐ๋™ํ•˜๊ธฐ 

02. Gitbook ์ฑ„์šฐ๊ธฐ : ์ฒ˜์Œ์—๋Š” ๊นƒ๋ถ ์ž์ฒด์—์„œ ์—ฌ๋Ÿฌ ๋ช…์ด ์ˆ˜์ •ํ•  ๊ฑฐ๋ผ ์ƒ๊ฐํ–ˆ๋Š”๋ฐ ํŒ€์œผ๋กœ ํ•˜๋ฉด ์œ ๋ฃŒ์—ฌ์„œใ…Ž...๊ทธ๋ƒฅ ํ•œ ๋ช…์ด ํ…œํ”Œ๋ฆฟ ๋งŒ๋“ค๊ณ  ๋‚˜๋จธ์ง€ ์‚ฌ๋žŒ๋“ค์ด Typora๋กœ ์ปค๋ฐ‹ํ•˜๋Š” ๊ฑธ๋กœ ํ–ˆ๋‹ค. ๊นƒ๋ถ์„ ๊นƒํ—ˆ๋ธŒ์™€ ์—ฐ๋™ํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์žˆ๋Š”๋ฐ ์ฒ˜์Œ์— ์ž˜๋ชป ์„ ํƒํ•ด์„œ ์ปค๋ฐ‹ํ•œ๊ฒŒ ๋ฐ˜์˜์ด ์•ˆ ๋˜๋Š” ์ผ์ด ์žˆ์—ˆ๋‹ค. ์ˆ˜์ •ํ–ˆ๋”๋‹ˆ ์ž˜ ๋Œ์•„๊ฐ„๋‹ค. 

03. branch ๋‚˜๋ˆ„๊ธฐ

04. RDS ๋„์šฐ๊ณ  ๊ธฐ์ดˆ ๋ฐ์ดํ„ฐ๋กœ ์ดˆ๊ธฐํ™” : ์ด๊ฑด ์ฃผ์€์ด๊ฐ€ ํ–ˆ๋‹ค! ์•„๋งˆ์กด์—์„œ ๋ฒ„ํ‚ท ์ƒ์„ฑํ•˜๊ณ  EC2 ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•œ๋‹ค๋Š”๋ฐ ๋ฌด์Šจ ๋ง์ธ์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ๋‹ค...๊ณต๋ถ€๊ฐ€ ํ•„์š”ํ•ด

http://www.yes24.com/Product/Goods/83849117 ๋‚˜์ค‘์— ํ•œ ๋ฒˆ ์ฝ์–ด๋ด์•ผ์ง€

 

์Šคํ”„๋ง ๋ถ€ํŠธ์™€ AWS๋กœ ํ˜ผ์ž ๊ตฌํ˜„ํ•˜๋Š” ์›น ์„œ๋น„์Šค - YES24

๊ฐ€์žฅ ๋น ๋ฅด๊ณ  ์‰ฝ๊ฒŒ ์›น ์„œ๋น„์Šค์˜ ๋ชจ๋“  ๊ณผ์ •์„ ๊ฒฝํ—˜ํ•œ๋‹ค. ๊ฒฝํ—˜์ด ์‹ค๋ ฅ์ด ๋˜๋Š” ์ˆœ๊ฐ„!์ด ์ฑ…์€ ์ œ๋ชฉ ๊ทธ๋Œ€๋กœ ์Šคํ”„๋ง ๋ถ€ํŠธ์™€ AWS๋กœ ์›น ์„œ๋น„์Šค๋ฅผ ๊ตฌํ˜„ํ•œ๋‹ค. JPA์™€ JUnit ํ…Œ์ŠคํŠธ, ๊ทธ๋ ˆ์ด๋“ค, ๋จธ์Šคํ…Œ์น˜, ์Šคํ”„๋ง

www.yes24.com

05. icon data ์ €์žฅํ•˜๊ณ  ๋ฌธ์„œํ™”ํ•˜๊ธฐ : ์„œ๋ฒ„์— ๋„ฃ์–ด๋†“์€ ์ด๋ฏธ์ง€ ๊ฐ€์ง€๊ณ  ์ •๋ฆฌ

06. ํ”„๋กœ์ ํŠธ์™€ DB ์—ฐ๋™

- dependency ์ถ”๊ฐ€ํ•˜๊ณ  application.yml ํŒŒ์ผ ์ž‘์„ฑํ•˜๊ธฐ

- ์ด ๋†ˆ...์ง„์งœ ์–ด์ด์—†๋‹ค. C๋“œ๋ผ์ด๋ธŒ๊ฐ€ ๋‹ค ์ฐจ์„œ D๋“œ๋ผ์ด๋ธŒ์— ๋ ˆํฌ์ง€ํ† ๋ฆฌ ๋งŒ๋“ค์—ˆ๋”๋‹ˆ ์ธ์‹์„ ๋ชปํ•ด์„œ ๋‚œ๋ฆฌ๊ฐ€ ๋‚ฌ๋‹ค. ๋„ˆ๋ฌด ํ”ํ•œ ์—๋Ÿฌ๋ผ์„œ 2์‹œ๊ฐ„ ๋™์•ˆ ๊ตฌ๊ธ€๋งํ•ด๋„ ํ•ด๊ฒฐ์ด ์•ˆ ๋๋Š”๋ฐ ํ˜น์‹œ ๋ชฐ๋ผ C๋“œ๋ผ์ด๋ธŒ๋กœ ์˜ฎ๊ฒผ๋”๋‹ˆ ๋ฐ”๋กœ ์‹คํ–‰๋๋‹ค.^^

 

์ง‘

gitbook ์ •ํ•ด์ง„ ํ…œํ”Œ๋ฆฟ๋Œ€๋กœ ์ˆ˜์ •ํ•ด์„œ commitํ–ˆ๋‹ค! github desktop์œผ๋กœ ์ปค๋ฐ‹ํ–ˆ๋”๋‹ˆ ๊นƒ๋ถ์— ๋‚ด ํ”„๋กœํ•„์ด ์•ˆ ๋“ค์–ด๊ฐ€๊ธธ๋ž˜ ์Šฌํผํ•˜๋ฉด์„œ ์–ด๋–ป๊ฒŒ๋“  ๋ฐฉ๋ฒ•์„ ์ฐพ์•„๋ดค๋‹ค. ๋‚ด ์ด๋ฆ„์ด ์—†์œผ๋ฉด ๋‚˜์ค‘์— ์ž๋ž‘ํ•  ์ˆ˜๊ฐ€ ์—†์–ด

๋‹ต์€ ๊ทธ๋ƒฅ ๊นƒํ—™ ์ž์ฒด์—์„œ ์ปค๋ฐ‹ํ•˜๋Š” ๊ฑฐ์˜€๋‹ค. ๊ทผ๋ฐ ์ข€ ์˜์•„ํ•œ ๊ฒŒ....

- ๊นƒํ—™ ๋ฐ์Šคํฌํƒ‘ : verified ๋œจ์ง€๋งŒ ๊นƒ๋ถ์— ํŽธ์ง‘์ž ๋ฐ˜์˜ X(๋ฌผ๋ก  ๋‚ด์šฉ์€ ๋ฐ˜์˜๋œ๋‹ค.) 

- ๊นƒํ—™ ์ž์ฒด : verified ์•ˆ ๋œจ์ง€๋งŒ ๊นƒ๋ถ์— ํŽธ์ง‘์ž ๋ฐ˜์˜ O

 


์ฒซ ๋ฐฑ์—”๋“œ ํŒ€ํ”„๋กœ์ ํŠธ๋ผ ์‹ ๊ธฐํ•˜๋‹ค! ์•„๋Š”๊ฒŒ ๋งŽ์ด ์—†์–ด ๊ฒจ์šฐ ๋”ฐ๋ผ๊ฐ€๋Š”๊ฒŒ ๊ณ ์ž‘์ด์ง€๋งŒ ๊ทธ๋ž˜๋„ ์ข‹์€ ํŒ€์›์„ ๋งŒ๋‚œ ๊ฒƒ ๊ฐ™์•„ ๊ธฐ์˜๋‹ค. ํ™”์ดํŒ…

๋Œ“๊ธ€