Skip to content

SuminSon/Gym_and_Glory

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๋ชฉ์ฐจ

  1. ์„œ๋น„์Šค ์†Œ๊ฐœ
  2. ๊ธฐํš ๋ฐฐ๊ฒฝ
  3. ๊ธฐ๋Šฅ ์†Œ๊ฐœ
  4. ๊ธฐ์ˆ  ์Šคํƒ
  5. ํ”„๋กœ์ ํŠธ ์ผ์ • ๋ฐ ์‚ฐ์ถœ๋ฌผ
  6. ๊ฐœ๋ฐœ ๋ฉค๋ฒ„ ๋ฐ ํšŒ๊ณ 



๐ŸŒŸ์„œ๋น„์Šค ์†Œ๊ฐœ

์„œ๋น„์Šค ์„ค๋ช…

๊ฐœ์š”

  • ํ•œ์ค„ ์†Œ๊ฐœ : ์šฉ๋„ ์žก๊ณ  ๊ทผ์œก๋„ ์–ป๊ณ  1์„ 2์กฐ
  • ์„œ๋น„์Šค ๋ช… : GYM & GLORY

ํƒ€๊ฒŸ ๐ŸŽฏ

  • ์šด๋™ํ•˜๊ณ  ์‹ถ์€๋ฐ, ํ—ฌ์Šค์žฅ ๊ฐˆ ๋ˆ์ด ์—†๋Š” ์‚ฌ๋žŒ๋“ค
  • ์šด๋™ํ•˜๊ณ  ์‹ถ์€๋ฐ, ํ—ฌ์Šค์žฅ ๊ฐ€๊ธฐ ๊ท€์ฐฎ์€ ์‚ฌ๋žŒ๋“ค
  • ์šด๋™ํ•˜๊ณ  ์‹ถ์€๋ฐ, ํ˜ผ์ž ํ•˜๊ธฐ ์‹ซ์€ ์‚ฌ๋žŒ๋“ค
  • ์šด๋™ํ•˜๊ณ  ์‹ถ์€๋ฐ, ๊ฒŒ์ž„๋„ ํ•˜๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ๋“ค

๐Ÿ‘‰ ** ์—ฌ๋Ÿฟ์ด์„œ ์ง‘์—์„œ ํŽธํ•˜๊ฒŒ ์šด๋™ํ•˜๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ๋“ค **

๐ŸŽž๊ธฐํš ๋ฐฐ๊ฒฝ

๋ฐฐ๊ฒฝ

๊ฒฝ๊ธฐ ์นจ์ฒด๋กœ ์ธํ•ด, ์ง€๊ฐ‘์ด ๊ฐ€๋ฒผ์›Œ์ง„ ์‚ฌ๋žŒ๋“ค... ์—ฌ๋ฆ„์—” ๋ฅ๊ณ , ๊ฒจ์šธ์—” ์ถ”์›Œ์„œ ์šด๋™ํ•˜๋กœ ๋‚˜๊ฐ€๊ธฐ ์‹ซ์€ ์‚ฌ๋žŒ๋“ค... ๊ฐ€๋ณ๊ฒŒ ์šด๋™ํ•˜๋ฉด์„œ ์นœ๊ตฌ๋„ ๋งŒ๋“ค๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ๋“ค...

์ด ์‚ฌ๋žŒ๋“ค์ด ๊ฑด๊ฐ•ํ•˜๊ณ  ํ–‰๋ณตํ•˜๊ธธ ๋ฐ”๋ผ๋Š” ๋งˆ์Œ์— ๋งŒ๋“ค๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

Gym & Glory์˜ ์žฅ์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์šฐ์„  ๊ฒŒ์ž„ ์ž์ฒด๊ฐ€ ์žฌ๋ฐŒ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์™ธ์ถœํ•  ํ•„์š”๊ฐ€ ์—†๊ณ , ๋ˆ ์“ธ ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ ์ด ๊ฒŒ์ž„์€ ํ˜‘๋™์‹ฌ์ด ๊ผญ ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, 1~2ํŒ๋งŒ ํ•ด๋„ ์‚ฌ๋žŒ๋“ค๊ณผ ํ˜‘๋™ํ•˜๋ฉด์„œ ๋น ๋ฅด๊ฒŒ ์นœํ•ด์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชฉ์  ๐Ÿงญ

์žฌ๋ฐŒ๊ฒŒ ์šด๋™ํ•˜๋ฉด์„œ ์นœ๊ตฌ๋„ ์‚ฌ๊ท€์ž

์˜์˜

  • ํ˜‘๋™์‹ฌ๋„ ๊ธฐ๋ฅด๊ณ  ์นœ๊ตฌ๋„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค
  • ์žฌ๋ฐŒ๊ฒŒ ์šด๋™ํ•˜๋ฉด์„œ ๋‚˜๋„ ๋ชจ๋ฅด๋Š” ์‚ฌ์ด ๊ฑด๊ฐ•ํ•ด์ง„๋‹ค.
  • ๊ฐ ์ข… ๋ณด์ƒ ๋ฐ ๋žญํฌ๊ธฐ๋Šฅ์„ ํ†ตํ•ด, ๋…ธ๋ ฅํ•œ ๋งŒํผ ๋Œ์•„์˜ค๋Š” ์„ฑ์ทจ๊ฐ

๐Ÿ’ซ ๊ธฐ๋Šฅ์†Œ๊ฐœ

image-10.png image-11.png image-12.png image-13.png image-14.png image-15.png image-16.png image-17.png image-18.png image-19.png image-20.png image-21.png image-22.png image-23.png image-24.png image-25.png image-26.png image-27.png image-28.png image-29.png image-30.png image-31.png image-32.png image-33.png image-34.png image-35.png image-36.png image-37.png image-38.png image-39.png image-40.png image-41.png image-42.png image-43.png image-44.png image-45.png image-46.png image-47.png

๐Ÿณ๊ธฐ์ˆ  ์Šคํƒ

1. WebRTC

WebRTC๋ž€?

WebRTC (Web Real-Time Communication)๋Š” ์›น ๋ธŒ๋ผ์šฐ์ € ๊ฐ„์— ํ”Œ๋Ÿฌ๊ทธ์ธ์˜ ๋„์›€ ์—†์ด ์„œ๋กœ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋œ API ์ž…๋‹ˆ๋‹ค. ์Œ์„ฑ ํ†ตํ™”, ์˜์ƒ ํ†ตํ™”, P2P ํŒŒ์ผ ๊ณต์œ  ๋“ฑ์œผ๋กœ ํ™œ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. -์ถœ์ฒ˜ ๊ตฌ๊ธ€ ์œ„ํ‚คํ”ผ๋””์•„ ![webRTC](https://velog.velcdn.com/images/jsw4215/post/b6706bea-56de-4b49-b86d-65131aa0dad9/image.webp)

openvidu

๋‹ค์–‘ํ•œ ํ”„๋ ˆ์ž„์›Œํฌ์™€ ํ˜ธํ™˜์„ฑ์ด ๋†’์„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ WebRTC๋ฅผ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํ‚คํŠธ(Software Development Kit, SDK)๋กœ ์ œ๊ณตํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ์‚ฌ์šฉํ•˜๊ธฐ ํŽธ๋ฆฌํ•˜๊ณ  ์ถ”๊ฐ€์ ์ธ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•์„ ํ†ตํ•ด์„œ ๊ณ ์„ฑ๋Šฅ์˜ ์„œ๋น„์Šค๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

์ ์šฉ

Gym & Glorty ์—์„œ๋Š” ๊ฒŒ์ž„ ํ™”๋ฉด ๋ฐ inGame์—์„œ์˜ ์›ํ™œํ•œ ์†Œํ†ต์„ ์œ„ํ•ด openVidu๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

2. Teachable Machine

Teachable Machine์ด๋ž€?

webSocket

Teachable Machine์€ ๊ตฌ๊ธ€์—์„œ ๋งŒ๋“  ์›น๊ธฐ๋ฐ˜ ๋…ธ์ฝ”๋“œ ์ธ๊ณต์ง€๋Šฅ ํ•™์Šต ํˆด์ž…๋‹ˆ๋‹ค. ์ด๋ฏธ์ง€, ์‚ฌ์šด๋“œ, ์ž์„ธ๋ฅผ ์ธ์‹ํ•˜๋„๋ก ์ปดํ“จํ„ฐ๋ฅผ ํ•™์Šต์‹œ์ผœ์„œ ์‚ฌ์ดํŠธ, ์•ฑ ๋“ฑ์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ์„ ์‰ฝ๊ณ  ๋น ๋ฅด๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Teachable Machine ์€ ํฌ๊ฒŒ 3๊ฐ€์ง€ ๋‹จ๊ณ„๋กœ ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค. ์ฒซ๋ฒˆ์งธ โ€˜๋ชจ์œผ๊ธฐโ€™ ๋‹จ๊ณ„์—์„œ๋Š” ์˜ˆ์‹œ๋ฅผ ์ˆ˜์ง‘ํ•˜์—ฌ ์ปดํ“จํ„ฐ๊ฐ€ ํ•™์Šตํ•˜๊ธฐ๋ฅผ ์›ํ•˜๋Š” ํด๋ž˜์Šค ๋˜๋Š” ์นดํ…Œ๊ณ ๋ฆฌ๋กœ ๊ทธ๋ฃนํ™”ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ํ›„์—๋Š” โ€˜ํ•™์Šต ์‹œํ‚ค๊ธฐโ€™๋ฅผ ํ†ตํ•ด ๋ชจ๋ธ์„ ํ•™์Šต์‹œ์ผœ์„œ ์ƒˆ๋กœ์šด ์˜ˆ์‹œ๋ฅผ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๋ถ„๋ฅ˜ํ•˜๋Š”์ง€ ์ฆ‰์‹œ ํ…Œ์ŠคํŠธํ•ด ๋ณด๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ โ€˜๋‚ด๋ณด๋‚ด๊ธฐโ€™๋กœ ์‚ฌ์ดํŠธ, ์•ฑ ๋“ฑ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ๋ชจ๋ธ์„ ๋‚ด๋ณด๋‚ด๊ฒŒ ๋˜๋ฉด ๋ชจ๋ธ์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ฑฐ๋‚˜ ์˜จ๋ผ์ธ์œผ๋กœ ํ˜ธ์ŠคํŒ…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ ์šฉ

Gym & Glorty ์—์„œ๋Š” ์‚ฌ์šฉ์ž์˜ ์›€์ง์ž„์„ ์ธ์‹ํ•˜๊ธฐ ์œ„ํ•ด n๊ฐ€์ง€ ๊ณผ์ •์„ ๊ฑฐ์นฉ๋‹ˆ๋‹ค.

  1. ๊ฐ ์šด๋™์— ๋Œ€ํ•œ ๋ชจ๋ธ ํ•™์Šต (์Šค์ฟผํŠธ,๋Ÿฐ์ง€,์ ํ•‘์žญ,ํŒ”๊ตฝํ˜€ํŽด๊ธฐ)
  2. Teachable Machine๊ณผ ๋ฆฌ์•กํŠธ ์—ฐ๊ฒฐ
  3. ์šด๋™ ์‹œ ๋ฆฌ์•กํŠธ์—์„œ ์ •ํ™•๋„ ๋น„๊ต ํ›„ ์šด๋™ ํšŸ์ˆ˜ ์นด์šดํŠธ ์ฆ๊ฐ€ ๋ฐ ์œ ๋‹ˆํ‹ฐ์— ์‹ ํ˜ธ ์ „์†ก

3. Docker

๋„์ปค๋Š” ๋ฆฌ๋ˆ…์Šค์˜ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ๋“ค์„ ํ”„๋กœ์„ธ์Šค ๊ฒฉ๋ฆฌ ๊ธฐ์ˆ ๋“ค์„ ์‚ฌ์šฉํ•ด ์ปจํ…Œ์ด๋„ˆ๋กœ ์‹คํ–‰ํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ์ด๋‹ค. ๋„์ปค ์›น ํŽ˜์ด์ง€์˜ ๊ธฐ๋Šฅ์„ ์ธ์šฉํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค: ๋„์ปค ์ปจํ…Œ์ด๋„ˆ๋Š” ์ผ์ข…์˜ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์†Œํ”„ํŠธ์›จ์–ด์˜ ์‹คํ–‰์— ํ•„์š”ํ•œ ๋ชจ๋“  ๊ฒƒ์„ ํฌํ•จํ•˜๋Š” ์™„์ „ํ•œ ํŒŒ์ผ ์‹œ์Šคํ…œ ์•ˆ์— ๊ฐ์‹ผ๋‹ค.

docker

4. NginX

๊ฐ€๋ฒผ์šฐ๋ฉด์„œ๋„ ๊ฐ•๋ ฅํ•œ ํ”„๋กœ๊ทธ๋žจ์„ ๋ชฉํ‘œ๋กœ ๋Ÿฌ์‹œ์•„์—์„œ ๊ฐœ๋ฐœ๋˜์–ด ๋ฏธ๊ตญ์—์„œ ์šด์˜ ์ค‘์ธ ์˜คํ”ˆ ์†Œ์Šค ์›น ์„œ๋ฒ„ ํ”„๋กœ๊ทธ๋žจ์ด๋‹ค. '์—”์ง„์—‘์Šค'๋ผ๊ณ  ์ฝ๋Š”๋‹ค. HTTP์™€ ๋ฆฌ๋ฒ„์Šค ํ”„๋ก์‹œ, IMAP/POP3 ๋“ฑ์˜ ์„œ๋ฒ„ ๊ตฌ๋™์ด ๊ฐ€๋Šฅํ•˜๋‹ค. Java ์„œ๋ธ”๋ฆฟ์€ ๋Œ€๊ฐœ Apache์˜ Tomcat์„ ์—ฐ๋™ํ•ด์„œ ๊ตฌ๋™ํ•˜๊ณ , PHP์˜ ๊ฒฝ์šฐ PHP-FPM(FastCGI Process Manager)์„ ์—ฐ๋™ํ•ด์„œ ๊ตฌ๋™ํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์›น ์„œ๋ฒ„ ์†Œํ”„ํŠธ์›จ์–ด๋กœ, ๊ฐ€๋ฒผ์›€๊ณผ ๋†’์€ ์„ฑ๋Šฅ์„ ๋ชฉํ‘œ๋กœ ํ•œ๋‹ค. ์›น ์„œ๋ฒ„, ๋ฆฌ๋ฒ„์Šค ํ”„๋ก์‹œ ๋ฐ ๋ฉ”์ผ ํ”„๋ก์‹œ ๊ธฐ๋Šฅ์„ ๊ฐ€์ง„๋‹ค. ์ถœ์ฒ˜- ๋‚˜๋ฌด์œ„ํ‚ค

NginX

5. JavaScript

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ๊ฐ์ฒด ๊ธฐ๋ฐ˜์˜ ์Šคํฌ๋ฆฝํŠธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ด๋‹ค. ์ด ์–ธ์–ด๋Š” ์›น ๋ธŒ๋ผ์šฐ์ € ๋‚ด์—์„œ ์ฃผ๋กœ ์‚ฌ์šฉ๋˜๋ฉฐ, ๋‹ค๋ฅธ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ๋‚ด์žฅ ๊ฐ์ฒด์—๋„ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๋˜ํ•œ Node.js์™€ ๊ฐ™์€ ๋Ÿฐํƒ€์ž„ ํ™˜๊ฒฝ๊ณผ ๊ฐ™์ด ์„œ๋ฒ„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—๋„ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋‹ค.

JavaScript

6. React

๋ฆฌ์•กํŠธ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ํ•˜๋‚˜๋กœ์„œ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋œ๋‹ค. ํŽ˜์ด์Šค๋ถ๊ณผ ๊ฐœ๋ณ„ ๊ฐœ๋ฐœ์ž ๋ฐ ๊ธฐ์—…๋“ค ๊ณต๋™์ฒด์— ์˜ํ•ด ์œ ์ง€๋ณด์ˆ˜๋œ๋‹ค. ๋ฆฌ์•กํŠธ๋Š” ์‹ฑ๊ธ€ ํŽ˜์ด์ง€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด๋‚˜ ๋ชจ๋ฐ”์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋‹ค.

React

7. Spring

์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์ž๋ฐ” ํ”Œ๋žซํผ์„ ์œ„ํ•œ ์˜คํ”ˆ ์†Œ์Šค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋ ˆ์ž„์›Œํฌ๋กœ์„œ ๊ฐ„๋‹จํžˆ ์Šคํ”„๋ง์ด๋ผ๊ณ ๋„ ํ•œ๋‹ค. ๋™์ ์ธ ์›น ์‚ฌ์ดํŠธ๋ฅผ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•œ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ๋‹ค.

Spring

8. JPA(Java Persistence API)

์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์ž๋ฐ” ํ”Œ๋žซํผ์„ ์œ„ํ•œ ์˜คํ”ˆ ์†Œ์Šค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋ ˆ์ž„์›Œํฌ๋กœ์„œ ๊ฐ„๋‹จํžˆ ์Šคํ”„๋ง์ด๋ผ๊ณ ๋„ ํ•œ๋‹ค. ๋™์ ์ธ ์›น ์‚ฌ์ดํŠธ๋ฅผ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•œ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ๋‹ค.

JPA

9. ๊ฐœ๋ฐœํ™˜๊ฒฝ

image-2.png image-3.png

10. ์•„ํ‚คํ…์ณ ์„ค๊ณ„

image-4.png

๐Ÿ“…ํ”„๋กœ์ ํŠธ ์ผ์ • ๋ฐ ์‚ฐ์ถœ๋ฌผ

ํ”„๋กœ์ ํŠธ ์ผ์ •

image-5.png

ํ”„๋กœ์ ํŠธ ์ง„ํ–‰

1. GitLab


Git flow ์‚ฌ์šฉ์„ ์œ„ํ•ด sourcetree ํ”„๋กœ๊ทธ๋žจ์„ ์‚ฌ์šฉํ•˜์˜€๊ณ  ํ•ด๋‹น ํŒŒํŠธ๋งˆ๋‹ค ๊ฐœ์ธ์ ์œผ๋กœ ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•œ ํ›„ ์ค‘๊ฐ„์— merge ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ์ปจํ”Œ๋ฆญํŠธ๋ฅผ ์ตœ์†Œํ™”ํ•˜๊ณ  ์˜ค๋ฅ˜๊ฐ€ ์ƒ๊ฒผ์„ ๋•Œ, ๋ฆฌ์…‹ํ•˜๊ธฐ ํŽธ๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.
git Flow

2. Jira


๋งค์ผ ์˜ค์ „ ํšŒ์˜์—์„œ ๋ฐ์ผ๋ฆฌ์Šคํฌ๋Ÿผ์„ ํ•˜๊ณ  ๊ธˆ์ฃผ์˜ ์ง„ํ–‰ ์ด์Šˆ๋ฅผ ๋ฐฑ๋กœ๊ทธ์— ๋“ฑ๋กํ–ˆ์Šต๋‹ˆ๋‹ค. ์ „์ฃผ์— ์™„๋ฃŒํ•˜์ง€ ๋ชปํ•œ ์ด์Šˆ๋‚˜, ์•ž์œผ๋กœ ์ง„ํ–‰ํ•  ์ด์Šˆ๋“ค์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ง€์†์ ์ธ ์ถ”๊ฐ€ ์‚ฌํ•ญ์ด ๋ฐœ์ƒํ–ˆ๊ธฐ์—, ๊ทธ๋ž˜ํ”„๊ฐ€ ์šฐํ•˜ํ–ฅ ํ•˜์ง€๋Š” ๋ชปํ•ฉ๋‹ˆ๋‹ค. image.png

ํ”„๋กœ์ ํŠธ ์‚ฐ์ถœ๋ฌผ

1. Figma

image-6.png

2. ERD

image-7.png

3. API ๋ฌธ์„œ

image-8.png

๐ŸŒˆ๊ฐœ๋ฐœ ๋ฉค๋ฒ„ ๋ฐ ํšŒ๊ณ 

  • ์ด์Šนํ•œ : ๊ธด๋“ฏํ–ˆ์ง€๋งŒ ์•„์ฃผ ์งง์•˜๋˜ 6์ฃผ๊ฐ€ ์ง€๋‚œ ๊ธฐ๋ถ„์ด๋‹ค. ๋ฆฌ์•กํŠธ๋ฅผ ์ฒ˜์Œ ๋‹ค๋ค„๋ณด์•„์„œ ์ฒซ์ฃผ๋Š” ๋ฆฌ์•กํŠธ๋ฅผ ๋ฐฐ์šด๋‹ค๊ณ  ์‹œ๊ฐ„์„ ๋‹ค ํ—ˆ๋น„ํ–ˆ๊ณ  ๋‹ค๋“ค ๋ฆฌ์•กํŠธ๋ฅผ ์ฒ˜์Œ ๋‹ค๋ค„๋ด์„œ ๊ฐ์ž ๋ฐฐ์šด ์Šคํƒ€์ผ์ด ๋‹ฌ๋ผ ์ฝ”๋“œ ๋ฆฌ๋ทฐํ•˜๋Š”๋ฐ ๋‚œํ•ญ์„ ๊ฒช์—ˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค. ํ•˜์ง€๋งŒ ํ”„๋กœ์ ํŠธ๋กœ ์‹ค์ „๊ฒฝํ—˜์„ ํ•˜๋ฉด์„œ ๋ฐฐ์šฐ๋‹ˆ ๋น ๋ฅด๊ฒŒ ๋Š๋Š” ๋Š๋‚Œ์„ ๋ฐ›์•˜์œผ๋ฉฐ ๋‹ค์Œ๋ฒˆ์—๋Š” ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ด์šฉํ•ด์„œ ๊ฐœ๋ฐœํ•ด๋ณด๊ณ  ์‹ถ๋‹ค๋Š” ์ƒ๊ฐ์„ ํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. ๋˜ํ•œ ์—ฌ๋Ÿฌ ํ˜‘์—…ํˆด์„ ์ฒ˜์Œ ์‚ฌ์šฉํ•ด๋ด์„œ ์ œ๋Œ€๋กœ ์‚ฌ์šฉํ•ด๋ณด์ง„ ๋ชปํ•ด ์•„์‰ฌ์› ์œผ๋ฉฐ ์ด๋ฒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ๊ณ„๊ธฐ๋กœ ๋‹ค์Œ ํ”„๋กœ์ ํŠธ, ๋” ๋‚˜์•„๊ฐ€ ํ˜„์—…์—์„œ ํ›จ์”ฌ ๋Šฅ์ˆ™ํ•˜๊ฒŒ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ ํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ์„ ํ‚ค์šด๊ฒƒ ๊ฐ™์•„์„œ ๋ฟŒ๋“ฏํ•˜๋‹ค. ๋‹ค๋“ค ๊ณ ์ƒํ•˜์…จ์Šต๋‹ˆ๋‹ค~!

๋งก์€ ํŒŒํŠธ : frontend(react) - ํšŒ์›๊ฐ€์ž… ๋ฐ ๋กœ๊ทธ์ธ๋“ฑ auth ๊ด€๋ จ ํ”„๋ก ํŠธ ๋ถ€๋ถ„, ๊ฒŒ์‹œ๋ฌผ ๋ถ€๋ถ„

  • ์ •๋™์„ญ : ์ฒ˜์Œ์—๋Š” ์ด๊ฒŒ ๊ฐ€๋Šฅํ• ๊นŒ๋ผ๋Š” ์ƒ๊ฐ์ด ๋งŽ์•˜๋Š”๋ฐ, ๋ง‰์ƒ ๋ถ€๋”ชํ˜€ ๋ณด๋‹ˆ ์–ด๋–ป๊ฒŒ๋“  ํ•ด๊ฒฐํ•  ๋ฐฉ๋ฒ•์ด ๋‚˜ํƒ€๋‚˜์„œ ๋†€๋ผ์›€์ด ๋Š์ด์ง€ ์•Š์•˜๋‹ค. ํ”„๋กœ์ ํŠธ๋ฅผ ํ•˜๋ฉด์„œ ์„ฑ์žฅํ•œ ๋ถ€๋ถ„๋„, ๋‚˜์—๊ฒŒ ์•„์‰ฌ์šด ๋ถ€๋ถ„๋„ ๋งŽ์ด ๋ณด์ด๋Š”๋ฐ, ์ด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ๋‹ค์Œ์—๋Š” ๋” ๋‚˜์€ ํ”„๋กœ์ ํŠธ๋ฅผ ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋ผ ์ƒ๊ฐ๋œ๋‹ค. ๋ฌด์—‡๋ณด๋‹ค ์–ด๋–ค ๋ฌธ์ œ๋“  ํ•ด๊ฒฐํ•ด์ค€ ํŒ€์›๋“ค์—๊ฒŒ ๊ณ ๋งˆ์›€์„ ๋Š๋‚€๋‹ค.

๋งก์€ ํŒŒํŠธ : frontend ์ „๋ฐ˜, teachable machine

  • ๊น€์œ ์ง„ : 6์ฃผ๋™์•ˆ ๊ธธ๋ฉด ๊ธธ๊ณ  ์งง์œผ๋ฉด ์งง์€ ์‹œ๊ฐ„์ด์—ˆ๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ EC2 ์„œ๋ฒ„ ์šฐ๋ถ„ํˆฌ ์šด์˜์ฒด์ œ๋ฅผ ํ†ตํ•ด ์„œ๋ฒ„๋ฅผ ๊ตฌ์ถ•ํ•˜๋ฉด์„œ Nginx, Jenkins, Docker, WebRTC ๋“ฑ ์„œ๋ฒ„์— ๊ด€ํ•œ CS์ •๋ณด๊ฐ€ ์š”๊ตฌํ–ˆ์–ด์„œ ๋งŽ์ด ํž˜๋“ค์—ˆ์ง€๋งŒ ๋ฌด์‚ฌํžˆ ๊ตฌ์ถ•๋˜๊ณ  ๋‚œ ํ›„ ๋งŽ์€ ๋ณด๋žŒ์„ ๋Š๊ผˆ์Šต๋‹ˆ๋‹ค. 6๋ช… ํ•œ ํŒ€์œผ๋กœ ์ธ์—ฐ์œผ๋กœ ๋งŒ๋‚˜ ์ฒ˜์Œ ์ ‘ํ•œ ๊ธฐ์ˆ ์ž„์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ๋๊นŒ์ง€ ํฌ๊ธฐํ•˜์ง€ ์•Š๊ณ  ๊ธฐํšํ•œ ์›น ์‚ฌ์ดํŠธ๋Œ€๋กœ ๊ตฌํ˜„์ด ๋˜์–ด ํŒ€์›Œํฌ์™€ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์˜ ์ค‘์š”์„ฑ์„ ๋งŽ์ด ๋ฐฐ์šฐ๊ณ  ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค. 6์ฃผ๊ฐ„ ํŒ€์›๋ถ„๋“ค ๋ชจ๋‘ ๊ณ ์ƒ๋งŽ์œผ์…จ์Šต๋‹ˆ๋‹ค! ๋‹ค์Œ ํŠนํ™” ํ”„๋กœ์ ํŠธ๋„ ํ™”์ดํŒ…!!!

๋งก์€ ํŒŒํŠธ : EC2 ์„œ๋ฒ„ ์ธํ”„๋ผ, WebRTC ์„œ๋ฒ„ ๋ฐ CI/CD ๊ตฌ์ถ•, SpringBoot JPA ORM, DB ๊ตฌ์ถ•

  • ์œ ํ˜œ๋นˆ : ํ”„๋กœ์ ํŠธ ์‹œ์ž‘ํ•œ๊ฒŒ ์–ผ๋งˆ ๋˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์€๋ฐ ๋ฒŒ์จ ๋งˆ๋ฌด๋ฆฌ ํ•œ๋‹ค๋Š”๊ฒŒ ๋†€๋ž๋‹ค. ๊ธฐํšํ•  ๋•Œ ์ด๊ฒŒ ๋ ๊นŒ ๋ผ๋Š” ์ƒ๊ฐ์œผ๋กœ ์‹œ์ž‘ํ–ˆ๋Š”๋ฐ ์–ด๋Š์ •๋„ ์šฐ๋ฆฌ๊ฐ€ ๊ธฐํšํ•œ ๊ฒƒ์— ๊ฐ€๊น๊ฒŒ ๊ฒฐ๊ณผ๋ฌผ์ด ๋‚˜์™€์„œ ์‹ ๊ธฐํ•˜๋‹ค. ์ด๋ ‡๊ฒŒ 6๋ช…์ด์„œ ํ˜‘์—…ํ•˜๋ฉด์„œ ์˜์‚ฌ์†Œํ†ต์˜ ์ค‘์š”์„ฑ์„ ์ข€ ๋” ๊นจ๋‹ซ๊ฒŒ ๋˜์—ˆ๊ณ  ๋‚ด๊ฐ€ ์ข€ ๋” ๋…ธ๋ ฅํ–ˆ์œผ๋ฉด ์ข‹์ง€ ์•Š์•˜์„๊นŒ ํ›„ํšŒ๊ฐ€ ๋‚จ๋Š”๋‹ค. ํ•˜์ง€๋งŒ ํŒ€์›๋“ค์ด ๋„ˆ๋ฌด๋‚˜ ์ž˜ ํ•ด์ค€ ๋•๋ถ„์— ๋‚˜๋„ ํ•จ๊ป˜ ํ”„๋กœ์ ํŠธ๋ฅผ ์ž˜ ์ง„ํ–‰ํ–ˆ๋˜๊ฑฐ ๊ฐ™์•„ ํŒ€์›๋“ค์—๊ฒŒ ๋„ˆ๋ฌด ๊ณ ๋ง™๋‹ค.

๋งก์€ ํŒŒํŠธ : WebRTC ํ†ต์‹  ํ”„๋ก ํŠธ ๋ถ€๋ถ„, ๊ฒŒ์ž„๋ฐฉ ๊ตฌ์„ฑ, react unity ์—ฐ๊ฒฐ, teachable machine ๊ด€๋ จ ๋กœ์ง ๋“ฑ

  • ์†์ˆ˜๋ฏผ : ๋ฉ€ํ‹ฐ ๊ฒŒ์ž„์„ ์ฒ˜์Œ ๊ฐœ๋ฐœํ•ด๋ด์„œ ์ƒ๋‹นํžˆ ๋‚˜์•ฝํ•œ ๊ฒŒ์ž„์„ ๋งŒ๋“ค์—ˆ์ง€๋งŒ ์žฌ๋ฐŒ์—ˆ์Šต๋‹ˆ๋‹ค. ์–ด์šธ๋ฆฌ๋Š” ์›น์„ ์ž˜ ๋งŒ๋“ค์–ด์ฃผ์…”์„œ ์ •๋ง ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๊ธฐํšŒ๊ฐ€ ๋˜๋ฉด ๊ฒŒ์ž„์„ ์•„์˜ˆ ๋œฏ์–ด๊ณ ์ณ์„œ ์•ˆ์ •์„ฑ์„ ๋†’์—ฌ๋ณด๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ํŒ€์›๋ถ„๋“ค๋กœ๋ถ€ํ„ฐ ๋งŽ์€ ๊ฒƒ์„ ๋ฐฐ์šธ ์ˆ˜ ์žˆ๋Š” ์‹œ๊ฐ„์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋“ค ๊ณ ์ƒํ•˜์…จ์Šต๋‹ˆ๋‹ค!!

๋งก์€ ํŒŒํŠธ : Unity ๊ฒŒ์ž„ ์‹œ์Šคํ…œ, Photon ์„œ๋ฒ„์™€์˜ ํ†ต์‹ , ์›น ํ”„๋ก ํŠธ CSS

  • ์ด์žฌํ˜ธ : ์•„์ฃผ 6์ฃผ๊ฐ€ ๊ธด ๊ฒƒ ๊ฐ™์•˜๋Š”๋ฐ, ์‹ค์ œ๋กœ ์งง๊ฒŒ ๋Š๊ปด์ง€์ง„ ์•Š์•˜๋‹ค. ์‚ฌ๋žŒ๋“ค์ด ๋งก์€ ๋ฐ” ์—ญํ• ์„ ๋๊นŒ์ง€ ๋ฌผ๊ณ  ๋Š˜์–ด์ ธ์„œ ๋งŒ์กฑ์Šค๋Ÿฌ์šด ๊ฒฐ๊ณผ๋ฌผ์„ ์–ป์„ ์ˆ˜ ์žˆ์—ˆ๋‹ค. ํŒ€์—๊ฒŒ ๋„ˆ๋ฌด ๊ฐ์‚ฌํ•˜๋‹ค. ์ด๋ฒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ํ†ตํ•ด์„œ ๋‹ค์Œํ”„๋กœ์ ํŠธ๋Š” ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ•  ์ง€์— ๋Œ€ํ•œ ๊ฐ€์ด๋“œ๋„ ์–ป์„ ์ˆ˜ ์žˆ์—ˆ๋‹ค. ์ง€๋ผ๋ฅผ ์ฒ˜์Œ ์จ๋ดค๋Š”๋ฐ, ์‚ฌ์šฉ๋ฒ•์ด ์–ด๋ ค์›Œ์„œ ์ œ๋Œ€๋กœ ๊ด€๋ฆฌ๋ฅผ ๋ชปํ•œ๊ฒƒ ๊ฐ™๋‹ค. ์Šนํ•œ๋‹˜๊ป˜ ์ฃ„์†กํ•˜๋‹ค.

๋งก์€ ํŒŒํŠธ : spring boot, jpa, spring security, firebase(back) + jwt, Amazon S3, API์ œ์ž‘, backend ์•„ํ‚คํ…์ณ, ERD, DB ๊ตฌ์ถ•

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 50.0%
  • Java 31.4%
  • CSS 9.4%
  • SCSS 8.5%
  • Other 0.7%