์ค๋ฅ ์ฒ๋ฆฌ๋ ์์คํ ๋ด์์ ์ด์ ํ์์ด๋ ์์์น ๋ชปํ ๋ฐ์์ ์๋ณ, ๊ด๋ฆฌ ๋ฐ ๋์ํ๋ ํ๋ก์ธ์ค๋ฅผ ๋ค๋ฃจ๋ ์ํํธ์จ์ด ์์ง๋์ด๋ง ๋ฐฑ์๋ ๊ฐ๋ฐ์ ์ค์ํ ์ธก๋ฉด์ ๋๋ค. ์ค๋ฅ๋ ์ฝ๋ ๋ฒ๊ทธ, ์์์น ๋ชปํ ์ฌ์ฉ์ ์ ๋ ฅ, ํ๋์จ์ด ์ค๋ฅ, ๋คํธ์ํฌ ์ค๋จ ๋๋ ๋ ์ผ๋ฐ์ ์ผ๋ก๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด ํน์ ์กฐ๊ฑด์ ์ฒ๋ฆฌํ ์ค๋น๊ฐ ๋์ด ์์ง ์์ ์ํฉ ๋ฑ ๋ค์ํ ์์ธ์ผ๋ก ์ธํด ๋ฐ์ํ ์ ์์ต๋๋ค. ๋ถ์ ์ ํ ์ค๋ฅ ์ฒ๋ฆฌ๋ ๋ถ์์ ํ ์ ํ๋ฆฌ์ผ์ด์ , ๋ฐ์ดํฐ ์์, ๋ณด์ ์ทจ์ฝ์ฑ, ์ด์ ํ ์ฌ์ฉ์ ๊ฒฝํ ๋ฐ ์ ๋ฐ์ ์ธ ์์คํ ์ค๋ฅ๋ก ์ด์ด์ง ์ ์์ต๋๋ค.
๊ฐ๋ ฅํ ์ค๋ฅ ์ฒ๋ฆฌ ๋ฉ์ปค๋์ฆ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๊ธฐ์น ์์ ์ข ๋ฃ๋ฅผ ๋ฐฉ์งํ ๋ฟ๋ง ์๋๋ผ ๊ฐ๋ฐ์๊ฐ ๋ฌธ์ ์ ๊ทผ๋ณธ ์์ธ์ ์ดํดํ๋ ๋ฐ ๋์์ด ๋๋ ํ์ ์ง๋จ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ฏ๋ก ๋ชจ๋ ๋ฐฑ์๋ ๊ฐ๋ฐ ํ๋ก์ ํธ์ ์ค์ํ ๋ถ๋ถ์ ๋๋ค. AppMasterno-code ํ๋ซํผ์ ๊ฒฝ์ฐ ํ๋ซํผ์ด ๋ณ๊ฒฝ๋ ๋๋ง๋ค ์ฒ์๋ถํฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ์ฌ ๊ธฐ์ ์ ๋ถ์ฑ๋ฅผ ์ ๊ฑฐํ๊ณ ์์ฑ๋ ์ํํธ์จ์ด์ ์ฅ๊ธฐ์ ์ธ ์์ ์ฑ์ ๋ณด์ฅํ๋ฏ๋ก ์ค๋ฅ ์ฒ๋ฆฌ๊ฐ ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌ๋ฉ๋๋ค.
๋ฐฑ์๋ ๊ฐ๋ฐ์ ์ค๋ฅ ์ฒ๋ฆฌ์๋ ์ผ๋ฐ์ ์ผ๋ก ๊ฐ์ง, ๋ณด๊ณ , ํด๊ฒฐ์ ํฌํจํ ์ฌ๋ฌ ๋จ๊ณ๊ฐ ํฌํจ๋ฉ๋๋ค. ํ์ง(Detection)๋ ์์คํ ๋ด์์ ์ค๋ฅ ๋ฐ์์ ์๋ณํ๋ ๊ณผ์ ์ ๋งํ๋ค. ์ด๋ ์ผ๋ฐ์ ์ผ๋ก ์ ์ฌ์ ์ธ ๋ฌธ์ ๋ฅผ ๋ฐ๊ฒฌํ๊ธฐ ์ํด ๋ค์ํ ์๋๋ฆฌ์ค์ ์ฃ์ง ์ผ์ด์ค๋ฅผ ์๋ฎฌ๋ ์ด์ ํ๋ ๊ด๋ฒ์ํ ๋จ์ ํ ์คํธ, ํตํฉ ํ ์คํธ ๋ฐ ์์คํ ํ ์คํธ๋ฅผ ํตํด ๋ฐ์ํฉ๋๋ค. ์ด๋ฌํ ํ ์คํธ์ ๋ชฉํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์์์น ๋ชปํ ์ํฉ์ ๋์ํ ์ค๋น๊ฐ ๋์ด ์๋์ง ํ์ธํ๋ ๊ฒ์ ๋๋ค.
์ค๋ฅ๊ฐ ๊ฐ์ง๋๋ฉด ์ผ๋ฐ์ ์ผ๋ก ๊ฐ๋ฐ์๊ฐ ๋ฌธ์ ๋ฅผ ์ดํดํ๋ ๋ฐ ๋์์ด ๋๋ ์๋ฏธ ์๊ณ ์ ์ตํ ๋ฐฉ์์ผ๋ก ๋ณด๊ณ ๋ฉ๋๋ค. ์ด ํ๋ก์ธ์ค๋ฅผ ๋ณด๊ณ ๋ผ๊ณ ํ๋ฉฐ ํฌ๊ด์ ์ธ ๋ก๊ทธ, ์ ํ๋ฆฌ์ผ์ด์ ๋ด์ ํ์๋๋ ์ค๋ฅ ๋ฉ์์ง ๋๋ ์ด๋ฉ์ผ์ด๋ ๋ฉ์์ง ํ๋ซํผ์ ํตํด ๊ฐ๋ฐ ํ์ ์ ์ก๋๋ ์๋ ์๋ฆผ์ ํํ๋ฅผ ์ทจํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๋ณด๊ณ ๋ฅผ ํตํด ๋ฌธ์ ๊ฐ ์ฆ์ ์ ๋ฌ๋๋ฏ๋ก ๊ฐ๋ฐ์๋ ๊ฐ๋ฅํ ํ ๋นจ๋ฆฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ ์ ํ ์กฐ์น๋ฅผ ์ทจํ ์ ์์ต๋๋ค.
์์ ์ ์ฝ๋ ๋ด์ ๊ธฐ๋ณธ ๋ฌธ์ ๋ฅผ ์์ ํ๊ฑฐ๋ ์์ธ๋ฅผ ์ ์ ํ๊ฒ ์ฒ๋ฆฌํ๊ธฐ ์ํ ์ถ๊ฐ ๋ ผ๋ฆฌ๋ฅผ ๊ตฌํํ์ฌ ๊ฐ์ง๋ ์ค๋ฅ๋ฅผ ํด๊ฒฐํ๋ ํ๋ก์ธ์ค๋ฅผ ๋ํ๋ ๋๋ค. ์ด๋ ์์์น ๋ชปํ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋๋ผ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด ๊ณ์ ์๋ํ ์ ์๋๋ก ๋ณด์ฅํ๋ฏ๋ก ์ค๋ฅ ์ฒ๋ฆฌ์ ์ค์ํ ๋ถ๋ถ์ ๋๋ค. ์ค๋ฅ์ ์ฌ๊ฐ๋์ ์ฑ๊ฒฉ์ ๋ฐ๋ผ ์์ ์๋ ๊ฐ๋จํ ์ฝ๋ ์กฐ์ ๋ถํฐ ๋ณด๋ค ๋ณต์กํ ์์คํ ์ ์ฒด ๋ฆฌํฉํฐ๋ง ๋๋ ๊ตฌ์กฐ ์กฐ์ ์ ์ด๋ฅด๊ธฐ๊น์ง ๋ชจ๋ ๊ฒ์ด ํฌํจ๋ ์ ์์ต๋๋ค.
AppMasterno-code ํ๋ซํผ์ ๋งฅ๋ฝ์์ ์ค๋ฅ ์ฒ๋ฆฌ๋ Go(golang) ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ ํ๋ฆฝ๋ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์ฌ์ฉํ์ฌ ์์ฑ๋ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋์ผ๋ก ํตํฉ๋ฉ๋๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ๋ขฐ์ฑ๊ณผ ์์ ์ฑ์ ๋ณด์ฅํ๋ ๋์์ ํ์ํ ๊ฒฝ์ฐ ๊ฐ๋ฐ์๊ฐ ์ฝ๊ฒ ์ฌ์ฉ์ ์ ์ํ๊ณ ํ์ฅํ ์ ์๋๋ก ํด์ค๋๋ค.
๋ํ AppMaster ์์ ์์ฑ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ชจ๋ PostgreSQL ํธํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ธฐ๋ณธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ์ฌ์ฉํ์ฌ ์ค๋ฅ ์ฒ๋ฆฌ ๋ฐ ๊ฒฌ๊ณ ์ฑ ์์ค์ ๋์ฑ ํฅ์์ํค๋๋ก ํน๋ณํ ์ค๊ณ๋์์ต๋๋ค. ๋งค์ฐ ์์ ์ ์ด๊ณ ์์ ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์คํ ์ธ PostgreSQL์ ๊ฐ๋ ฅํ ํธ๋์ญ์ ์ง์, ๋ฐ์ดํฐ ์ผ๊ด์ฑ ๊ฒ์ฌ ๋ฐ ํฌ๊ด์ ์ธ ๋ก๊น ๊ณผ ๊ฐ์ ๋ด์ฅ๋ ์ค๋ฅ ์ฒ๋ฆฌ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. AppMaster ์์ฑ ์ ํ๋ฆฌ์ผ์ด์ ์ ํจ์จ์ ์ธ ์ค๋ฅ ์ฒ๋ฆฌ ๋ ผ๋ฆฌ์ ๊ฒฐํฉ๋ ์ด๋ฌํ ๊ธฐ๋ฅ์ ์ค๋ฅ ๋๋ ์์์น ๋ชปํ ์ด๋ฒคํธ์ ๋ํ ์ ์ฒด ์์คํ ์ ์์ ์ฑ๊ณผ ๋ณต์๋ ฅ์ ๊ธฐ์ฌํฉ๋๋ค.
AppMaster ์ ํ๋ฆฌ์ผ์ด์ ์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ฉ Vue3 ํ๋ ์์ํฌ์ Android์ฉ Kotlin ๋ฐ Jetpack Compose, ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ฉ iOS์ฉ SwiftUI ๊ธฐ๋ฐ์ผ๋ก ํ๋ ์๋ฒ ๊ธฐ๋ฐ ํ๋ ์์ํฌ๋ฅผ ํ์ฉํ๋ค๋ ์ ๋ ์ธ๊ธํ ๊ฐ์น๊ฐ ์์ต๋๋ค. ์ด๋ฌํ ํ๋ ์์ํฌ๋ ๊ณ ๊ธ ์ค๋ฅ ์ฒ๋ฆฌ ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ ์์ฑ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ํํ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ์งํ๋ฉด์ ๋ค์ํ ๋ฌธ์ ์ ์์ธ๋ฅผ ์ ์ ํ๊ฒ ์ฒ๋ฆฌํ ์ ์๋๋ก ํฉ๋๋ค.
ํจ๊ณผ์ ์ธ ์ค๋ฅ ์ฒ๋ฆฌ์ ํ์์ ์ธ ์ธก๋ฉด์ ์ฒ ์ ํ ๋ฌธ์ํ์ ๋๋ค. ์ด๋ฅผ ํตํด ๋ฌธ์ ์๋ณ ๋ฐ ํด๊ฒฐ ํ๋ก์ธ์ค๋ฅผ ํฌ๊ฒ ์ด์งํ ์ ์์ต๋๋ค. AppMaster ์๋ฒ endpoints ๋ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง ๋ง์ด๊ทธ๋ ์ด์ ์คํฌ๋ฆฝํธ์ ๋ํ ํฌ๊ด์ ์ธ ์ต์ Swagger(OpenAPI) ๋ฌธ์๋ฅผ ์๋์ผ๋ก ์์ฑํ์ฌ ๊ฐ๋ฐ์๊ฐ ์์คํ ์ ๋ ์ฝ๊ฒ ์ดํดํ๊ณ , ์ค๋ฅ๋ฅผ ์ง๋จํ๊ณ , ๋ณ๊ฒฝ ์ฌํญ์ ํ์ธํ ์ ์๋๋ก ํ์ฌ ์ด๋ฌํ ์๊ตฌ ์ฌํญ์ ํด๊ฒฐํฉ๋๋ค. ์์ฉ ํ๋ก๊ทธ๋จ์์ ์ค์๋ก ์๋ก์ด ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ง ์์์ต๋๋ค.
์ค๋ฅ ์ฒ๋ฆฌ๋ ๋ฐฑ์๋ ๊ฐ๋ฐ์ ์ค์ํ ๊ตฌ์ฑ ์์๋ก, ์ํํธ์จ์ด ์์คํ ์ ์์ ์ฑ, ์ ๋ขฐ์ฑ ๋ฐ ์ ๋ฐ์ ์ธ ์ฑ๊ณต์ ๋ณด์ฅํฉ๋๋ค. AppMasterno-code ํ๋ซํผ์ ์์ฑ๋ ๋ฐฑ์๋, ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์๋์ผ๋ก ํตํฉํ์ฌ ํจ์จ์ ์ธ ์ค๋ฅ ์ฒ๋ฆฌ๋ฅผ ์ฐ์ ์ํฉ๋๋ค. ์ด๋ฅผ ํตํด AppMaster ๊ณ ๊ฐ์ด ๋น์ฉ ํจ์จ์ ์ด๊ณ ๋น ๋ฅด๊ฒ ๊ฐ๋ฐํ ์ ์๋ ํ์ฅ์ฑ์ด ๋ฐ์ด๋๊ณ ๋ด๊ฒฐํจ์ฑ์ด ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ค ์ ์๋๋ก ์ง์ํ์ฌ ๊ด๋ฒ์ํ ๋น์ฆ๋์ค ๋ฐ ๊ธฐ์ ์ ์ ๊ตํ ์ํํธ์จ์ด ์๋ฃจ์ ์ ์ ๊ณตํ๋ ํ๋ซํผ์ ๊ฐ์น์ ๊ธฐ์ฌํฉ๋๋ค.