๋ช ํํ ๊ฑฐ๋ฒ๋์ค ๊ท์น์ผ๋ก ๋ด๋ณด๋ธ ์์ค์ฝ๋ ๋๊ธฐํ ์ ์ง
๋ช ํํ ์์ ๊ถ, ์์ ํ ํ์ฅ ์ง์ , ๋ฆฌ๋ทฐ์ ๋น ๋ฅธ ๊ฒ์ฌ๋ก ์ฌ์์ฑ ํ๋ซํผ์์ ๋ด๋ณด๋ธ ์์ค ์ฝ๋๋ฅผ ๋๊ธฐํ ์ํ๋ก ์ ์งํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์ธ์.

ํด๊ฒฐํ๋ ค๋ ๋ฌธ์ (์ฌ์ด ํํ์ผ๋ก)
ํ๋ซํผ์ด ์ฑ์ ์ฌ์์ฑํ๋ฉด ์ฝ๋๋ฒ ์ด์ค์ ๋ง์ ๋ถ๋ถ์ ๋ฎ์ด์ธ ์ ์์ต๋๋ค. ์ด๋ ์ฝ๋๋ฅผ ๊น๋ํ๊ฒ ์ ์งํ์ง๋ง, ์์ฑ๋ ํ์ผ ์์ ์์์ ์ผ๋ก ํ ์์ ์ ๋ค์์ ์ฌ์์ฑํ๊ฑฐ๋ ์ ๋น๋๋ฅผ ๋ฐฐํฌํ ๋ ์ฌ๋ผ์ง ์ ์๋ค๋ ๋ป์ด๊ธฐ๋ ํฉ๋๋ค.
์ค์ ๋ชฉํ๋ "์ ๋ ์ฝ๋๋ฅผ ๋ด๋ณด๋ด์ง ๋ง์"๊ฐ ์๋๋๋ค. ๋ชฉํ๋ ์๊ฐ์ ๋ชจ๋ธ์ ์ง์ค์ ์์ฒ์ผ๋ก ์ ์งํด ๋ณ๊ฒฝ์ด ์ผ๊ด๋๊ณ ๋ฐ๋ณต ๊ฐ๋ฅํ๊ฒ ๋ง๋๋ ๊ฒ์ ๋๋ค. AppMaster์์ ๊ทธ ๋ชจ๋ธ์ ๋ฐ์ดํฐ ์คํค๋ง, ๋น์ฆ๋์ค ํ๋ก์ธ์ค, API ์๋ํฌ์ธํธ, UI ํ๋ฉด์ ํฌํจํฉ๋๋ค. ๋ชจ๋ธ์ด ์ ํํ๋ฉด ์ฌ์์ฑ์ ์คํธ๋ ์ค๊ฐ ์๋ ์์ ํ ์ผ์์ด ๋ฉ๋๋ค.
"๋ด๋ณด๋ธ ์์ค ์ฝ๋"๋ ๋ณดํต ์์ฑ๋ Go ๋ฐฑ์๋, Vue3 ์น ์ฑ, Kotlin/SwiftUI ๋ชจ๋ฐ์ผ ์ฑ์ ๊ฐ์ ธ์ ํ์ด ์ ์ดํ๋ ์ ์ฅ์์ ๋๋ค๋ ์๋ฏธ์ ๋๋ค. ํ์ ๋ณด์ ๊ฒํ , ์์ฒด ํธ์คํ , ๋ง์ถค ์ธํ๋ผ ๊ท์น, ํน์ ํตํฉ ๋๋ ํ๋ซํผ ์ธ ์ฅ๊ธฐ ์ ์ง๋ณด์ ๊ฐ์ ํ์ค์ ์ด์ ๋ก ์ฝ๋๋ฅผ ๋ด๋ณด๋ ๋๋ค.
๋ฌธ์ ๋ ๋ด๋ณด๋ธ ์ ์ฅ์๊ฐ ์ค์ค๋ก์ ์ถ์ ์ด๊ธฐ ์์ํ ๋ ๋ฐ์ํฉ๋๋ค. ๋๊ตฐ๊ฐ ์์ฑ๋ ํ์ผ์ ์ง์ ๊ณ ์ณ ๋ฒ๊ทธ๋ฅผ ๊ณ ์น๊ฑฐ๋, ์ฝ๋๋ฅผ ๋ฐ๋ก ํธ์งํด "๋นจ๋ฆฌ" ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ฑฐ๋, ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ณ์ธต์ ์์ผ๋ก ์์ ํฉ๋๋ค. ์ดํ ๋ชจ๋ธ์ด ๋ณ๊ฒฝ๋๋ฉด(ํ๋ ์ด๋ฆ ๋ณ๊ฒฝ, ์ ์๋ํฌ์ธํธ, ์์ ๋ ๋น์ฆ๋์ค ํ๋ก์ธ์ค ๋ฑ) ์ฑ์ ์ฌ์์ฑํ ๋ ๋๋ฆฌํํธ(๊ดํธ๊ฐ ์ผ์นํ์ง ์๋ ๋ณํฉ, ์์ ์์ค ๋ฑ)๊ฐ ์๊น๋๋ค.
๊ฑฐ๋ฒ๋์ค๋ ์ฃผ๋ก ๋๊ตฌ๊ฐ ์๋๋ผ ํ๋ก์ธ์ค์ ๋๋ค. ๋ช ๊ฐ์ง ๊ธฐ๋ณธ ์ง๋ฌธ์ ๋ตํฉ๋๋ค:
- ์์์ ๋ณ๊ฒฝ์ด ํ์ฉ๋๋ ์์ญ์ ์ด๋์ด๊ณ , ๊ธ์ง๋๋ ์์ญ์ ์ด๋์ธ๊ฐ?
- ์๊ฐ์ ๋ชจ๋ธ ๋ณ๊ฒฝ๊ณผ ๋ด๋ณด๋ธ ์ ์ฅ์ ๋ณ๊ฒฝ์ ๋๊ฐ ์น์ธํ ์ ์๋๊ฐ?
- ์ ์ฝ๋์์ ๋ณ๊ฒฝํ๋์ง ์ด๋ป๊ฒ ๊ธฐ๋กํ ๊ฒ์ธ๊ฐ?
- ์ฌ์์ฑ์ด ์ปค์คํ ํ์ฅ๊ณผ ์ถฉ๋ํ๋ฉด ์ด๋ป๊ฒ ํ ๊ฒ์ธ๊ฐ?
๊ท์น์ด ๋ช ํํ๋ฉด ์ฌ์์ฑ์ ์ํ์ด ์๋๋ผ ์์ ํ ๋ฐฉ๋ฒ์ด ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ค์ ๋ก ์กด์ฌํด์ผ ํ๋ ์์์ ์์์ ๋ถ๋ถ์ ๋ณดํธํ ์ ์์ต๋๋ค.
์ง์ค์ ์์ฒ์ ์ ํ๊ณ ์งํค๊ธฐ
๋ด๋ณด๋ธ ์์ค ์ฝ๋๋ฅผ ์ฌ์์ฑ ํ๋ซํผ๊ณผ ๋๊ธฐํ ์ํ๋ก ์ ์งํ๋ ค๋ฉด ํ ๊ฐ์ง ๋ช ํํ ๊ธฐ๋ณธ์ ์ ํด์ผ ํฉ๋๋ค: ๋ณ๊ฒฝ์ ์ด๋์์ ์ด๋ฃจ์ด์ง๋๊ฐ?
AppMaster ๊ฐ์ ํ๋ซํผ์์๋ ๊ฐ์ฅ ์์ ํ ๊ธฐ๋ณธ๊ฐ์ ๊ฐ๋จํฉ๋๋ค: ์๊ฐ์ ๋ชจ๋ธ์ ์ง์ค์ ์์ฒ์ผ๋ก ์ผ์ผ์ธ์. ์ ํ์ด ํ๋ฃจํ๋ฃจ ์ด๋ป๊ฒ ๋์ํ๋์ง๋ฅผ ์ ์ํ๋ ๊ฒ๋ค์ ๋ด๋ณด๋ธ ์ ์ฅ์๊ฐ ์๋๋ผ ๋ชจ๋ธ์ ์์ด์ผ ํฉ๋๋ค. ๋ณดํต ์ฌ๊ธฐ์๋ ๋ฐ์ดํฐ ๋ชจ๋ธ, ๋น์ฆ๋์ค ๋ก์ง, API ์๋ํฌ์ธํธ, ์ฃผ์ UI ํ๋ฆ์ด ํฌํจ๋ฉ๋๋ค.
๋ด๋ณด๋ธ ์ฝ๋๋ ์ฌ์ ํ ์ ์ฉํ์ง๋ง, ๋น๋ ์ฐ์ถ๋ฌผ(artifact)๋ก ์ทจ๊ธํ๊ณ ๋ชจ๋ธ์ด ์ ํํํ์ง ๋ชปํ๋ ์์ ์ ์ํ ์๊ณ ๋ช ์๋ ํ์ฉ ๊ตฌ์ญ์ผ๋ก ๋ค๋ฃจ์ธ์.
๋๋ถ๋ถ ํ์ด ๋ฐ๋ฅผ ์ ์๋ ์ ์ฑ ์์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- ์ ํ ๋์์ ๋ณ๊ฒฝํ๋ ๊ฒ์ด๋ผ๋ฉด ๋ชจ๋ธ์ ์์ด์ผ ํฉ๋๋ค.
- ์ธ๋ถ ์์คํ ๊ณผ์ ์ปค๋ฅํฐ๋ผ๋ฉด ์์ ์ด๋ํฐ๋ก ๋ชจ๋ธ ์ธ๋ถ์ ๋ก๋๋ค.
- ๊ณต์ ์ ํธ๋ฆฌํฐ(๋ก๊น ์กฐ์ , ์์ ํ์ฑ ํฌํผ)๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ๋ชจ๋ธ ์ธ๋ถ์ ๋ก๋๋ค.
- ๊ณ ๊ฐ๋ณ ๋๋ ํ๊ฒฝ๋ณ ์ค์ ์ ๋ชจ๋ธ ๋ฐ์ ๋๊ณ ๋ฐฐํฌ ์ ์ฃผ์ ํฉ๋๋ค.
- ์ฑ๋ฅ ๋๋ ๋ณด์ ์์ ์ ๋จผ์ ๋ชจ๋ธ๋ก ํํ ๊ฐ๋ฅํ์ง ํ์ธํฉ๋๋ค. ๋ถ๊ฐ๋ฅํ๋ฉด ์์ธ๋ก ๋ฌธ์ํํฉ๋๋ค.
ํ์ฉ ๊ตฌ์ญ์ ์๋์ ์ผ๋ก ์๊ฒ ์ ์งํ์ธ์. ์ปค์ง๋ฉด ์ปค์ง์๋ก ์ฌ์์ฑ์ด ๋ณ๊ฒฝ์ ๋ฎ์ด์ฐ๊ฑฐ๋ ์จ์ ๋๋ฆฌํํธ๋ฅผ ๋ง๋ค ๊ฐ๋ฅ์ฑ์ด ์ปค์ง๋๋ค.
๋ํ ๋๊ฐ ์์ธ๋ฅผ ์น์ธํ ์ง ๊ฒฐ์ ํ์ธ์. ์๋ฅผ ๋ค์ด ์ธ์ฆ, ๋ฐ์ดํฐ ๊ฒ์ฆ, ํต์ฌ ์ํฌํ๋ก์ ์ํฅ์ ์ฃผ๋ ์ฝ๋ ๋ณ๊ฒฝ์ ์ค์ง ๊ธฐ์ ๋ฆฌ๋๋ง ์น์ธํ๋๋ก ํ ์ ์์ต๋๋ค. "๋ค์ ์ฌ์์ฑ ์ฃผ๊ธฐ ํ ์ฌ๊ฒํ " ๊ฐ์ ๊ฐ๋จํ ๊ท์น์ ์ถ๊ฐํด ์์ ์์ ์ด ์๊ตฌ ํฌํฌ๊ฐ ๋์ง ์๋๋ก ํ์ธ์.
์ธ์ ์ฝ๋๋ฅผ ๋ด๋ณด๋ด๋ ๊ฒ์ด ํฉ๋ฆฌ์ ์ธ๊ฐ(๊ทธ๋ฆฌ๊ณ ์ธ์ ์๋๊ฐ)
์์ค ์ฝ๋๋ฅผ ๋ด๋ณด๋ด๋ ๊ฒ์ ์ฌ๋ฐ๋ฅธ ์ ํ์ผ ์ ์์ง๋ง, ์ ๊ทธ๋ ๊ฒ ํ๋์ง์ ์ดํ์ ๋ฌด์์ด ๋ฐ๋์ง ๋ถ๋ช ํ ํด์ผ ํฉ๋๋ค. AppMaster ๊ฐ์ ์ฌ์์ฑ ํ๋ซํผ์์๋ ์์ ํ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ์๊ฐ์ ๋ชจ๋ธ์ ์ง์ค์ ์์ฒ์ผ๋ก ์ทจ๊ธํ๊ณ , ๋ด๋ณด๋ด๊ธฐ๋ ๊ฒ์ฌยทํ ์คํธยท๋ฐฐํฌ๋ฅผ ์ํ ์ฐ์ถ๋ฌผ๋ก ๋ณด๋ ๊ฒ์ด ์ข์ต๋๋ค.
๋ด๋ณด๋ด๊ธฐ๋ ๋ณดํต ๊ฐ๋ ฅํ ๊ฐ์ฌ๊ฐ ํ์ํ ๋(ํ๋ก๋์ ์์ ๋ฌด์์ด ์คํ๋๋์ง ๋ณด์ฌ์ค์ผ ํ ๋), ์์ฒด ํธ์คํ (์์ฒด ํด๋ผ์ฐ๋ ๋๋ ์จํ๋ ๋ฏธ์ค ๊ท์น), ๋ด์ฅ ๋ชจ๋๋ก ํด๊ฒฐํ ์ ์๋ ํน์ ํตํฉ์ด ํ์ํ ๋ ์ ์ ํฉ๋๋ค. ๋ํ ๋ณด์ํ์ด ์ฝ๋ ์ค์บ์ ์๊ตฌํ๊ฑฐ๋ ๋ฒค๋์ ์์กดํ์ง ์๋ ์ข ๋ฃ ๊ณํ์ด ํ์ํ ๋๋ ๋์์ด ๋ฉ๋๋ค.
ํต์ฌ ์ง๋ฌธ์ ์ฝ๋ ์ ๊ทผ์ด ํ์ํ๊ฐ, ์ฝ๋ ์์ ์ ํด์ผ ํ๋๊ฐ์ ๋๋ค.
- ์ฝ๋ ์ ๊ทผ๋ง(์ฝ๊ธฐ ์ ์ฉ ๋ด๋ณด๋ด๊ธฐ): ๊ฐ์ฌ, ๋ณด์ ๋ฆฌ๋ทฐ, ์ฌํด ๋ณต๊ตฌ, ์ด์์ฑ, ์ดํด๊ด๊ณ์์๊ฒ ๋์ ์ค๋ช .
- ์ฝ๋ ์์ (ํธ์ง ๊ฐ๋ฅํ ๋ด๋ณด๋ด๊ธฐ): ์ฝ๋์ ๋ฐ๋์ ์์ด์ผ ํ๋ ์ ์์ค ๊ธฐ๋ฅ ์ถ๊ฐ, ์๋ํํฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํจ์น, ๋ชจ๋ธ๋ก ํํํ ์ ์๋ ์คํ ํ๊ฒฝ ์ ์ฝ ์ถฉ์กฑ.
์ฝ๊ธฐ ์ ์ฉ ๋ด๋ณด๋ด๊ธฐ๋ ๋ ์ฝ์ต๋๋ค. ์์ฃผ ์ฌ์์ฑํด๋ ์์์ ์์ ์ด ๋ฎ์ด์ง ๊ฑฑ์ ์ด ์ ๊ธฐ ๋๋ฌธ์ ๋๋ค.
ํธ์ง ๊ฐ๋ฅํ ๋ด๋ณด๋ด๊ธฐ๊ฐ ๋ฌธ์ ๋ฅผ ์ผ์ผํค๋ ๊ณณ์ ๋๋ค. ์ฅ๊ธฐ๊ฐ ์ง์๋๋ ์์์ ๋ณ๊ฒฝ์ ๊ฐ๋ฐ์ ์ ํธ ๋ฌธ์ ๊ฐ ์๋๋ผ ๊ฑฐ๋ฒ๋์ค ๊ฒฐ์ ์ ๋๋ค. "์ด ๋ณ๊ฒฝ์ 1๋ ๋ค ์ด๋์ ์์๊น?"์ ๋ตํ์ง ๋ชปํ๋ฉด ๋๋ฆฌํํธ๊ฐ ์๊น๋๋ค: ๋ชจ๋ธ์ ํ ๊ฐ์ง๋ฅผ ๋งํ๊ณ ํ๋ก๋์ ์ฝ๋๋ ๋ค๋ฅธ ๊ฒ์ ๋งํ๊ฒ ๋ฉ๋๋ค.
์ ํตํ๋ ๊ท์น์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค: ๋ณ๊ฒฝ์ด ๋น์ฆ๋์ค ๋ก์ง, ๋ฐ์ดํฐ ํํ, UI ํ๋ฆ, API ๋์์ด๋ผ๋ฉด ๋ชจ๋ธ์ ๋์ธ์. ํ๋ซํผ์ ์ง์ง ๊ฒฉ์ฐจ๋ผ๋ฉด ์ฝ๋ ์์ ์ ํ์ฉํ๋ ๋ช ํํ ์์ ๊ถ, ๋ฌธ์ํ๋ ํ์ฅ ํจํด, ์ฌ์์ฑ ์ฒ๋ฆฌ ๊ณํ์ ์๊ตฌํ์ธ์.
์ฌ์์ฑ์ด ๋ฌธ์ ๋ฅผ ์ผ์ผํค์ง ์๋๋ก ์์ ํ ํ์ฅ ํฌ์ธํธ ์ค๊ณํ๊ธฐ
์์ฑ๋ ํ์ผ์ "์ฌ๊ธฐ์ ํ ๋ฒ๋ง ์์ ๋ณ๊ฒฝ"ํ๋ ์ฅ์๋ก ์ทจ๊ธํ์ง ๋ง์ธ์. ๊ฒฐ๊ตญ ์ฌ์์ฑ์ด ๊ทธ ๋ณ๊ฒฝ์ ๋ฎ์ด๋ฒ๋ฆฝ๋๋ค.
์๊ฐ์ ๋ชจ๋ธ์ด ์์ ํ๋ ๊ฒ๊ณผ ํ์ด ์์ ํ๋ ๊ฒ ์ฌ์ด์ ์ ์ ๊ทธ์ด์ผ ํฉ๋๋ค. AppMaster๋ ๋ฐฑ์๋(Go), ์น(Vue3), ๋ชจ๋ฐ์ผ(Kotlin/SwiftUI) ์ฝ๋๋ฅผ ์ฌ์์ฑํ ์ ์์ผ๋ฏ๋ก ์์ฑ๋ ์์ญ์ ์๋ ๊ฒ์ ์ธ์ ๋ ์ง ๊ต์ฒด๋ ์ ์๋ค๊ณ ๊ฐ์ ํ์ธ์.
๋๊ธฐ๊ธฐ ์ด๋ ค์ด ๊ฒฝ๊ณ๋ฅผ ๋ง๋์ธ์
์ ์ฅ์์ ์ต๊ด์์ ๊ฒฝ๊ณ๋ฅผ ๋ช ํํ ํ์ธ์. ์ฌ๋ฐ๋ฅธ ๋ฐฉ์์ด ๋ถํธํ๋ฉด ์ฌ๋๋ค์ ์๋ชป๋ ๋ฐฉ์์ ์ ํํฉ๋๋ค.
์ค๋ฌด์์ ํจ๊ณผ์ ์ธ ๋ช ๊ฐ์ง ๊ฐ๋๋ ์ผ:
- ์์ฑ๋ ์ถ๋ ฅ์ ์ ์ฉ ํด๋์ ๋๊ณ ์ฝ๊ธฐ ์ ์ฉ์ผ๋ก ์ทจ๊ธํ์ธ์.
- ์ปค์คํ ์ฝ๋๋ ๋ณ๋ ํด๋์ ๋๊ณ ์์ฒด ๋น๋ ์ง์ ์ ์ ๋ง๋์ธ์.
- ์ปค์คํ ์ฝ๋๋ ์์ฑ๋ ์ฝ๋๋ฅผ ๋ด๋ถ ํ์ผ์ด ์๋๋ผ ๊ณต์ฉ ์ธํฐํ์ด์ค๋ฅผ ํตํด์๋ง ํธ์ถํ๋๋ก ์๊ตฌํ์ธ์.
DO NOT EDITํ์ผ์ด ๋ณ๊ฒฝ๋๋ฉด ์คํจํ๋ CI ์ฒดํฌ๋ฅผ ์ถ๊ฐํ์ธ์.- ์์ฑ๋ ํ์ผ์ "DO NOT EDIT: regenerated from model" ๊ฐ์ ํค๋ ์ฃผ์์ ์ถ๊ฐํ์ธ์.
๋ง์ง๋ง ํญ๋ชฉ์ ์ค์ํฉ๋๋ค. ๋ช ํํ "ํธ์ง ๊ธ์ง" ๋ฉ์์ง๋ ์ ์์ ์์ ์ ๋ฐฉ์งํ๊ณ ๋ฏธ๋์ ์์์ ์ค์ ๋๋ค.
์์ ๋ณด๋ค ๋ํผ๋ฅผ ์ ํธํ์ธ์
์ปค์คํ ๋์์ด ํ์ํ๋ฉด ์์ฑ๋ ์ฝ๋๋ฅผ ๋ฐ๊พธ์ง ๋ง๊ณ ๋ํํ์ธ์. ์ด๋ํฐ ๋ ์ด์ด ๋๋ ์์ ํผ์ฌ๋(facade)๋ฅผ ์์ฑ๋ ๋ถ๋ถ๊ณผ ์ฑ ์ฌ์ด์ ๋์ธ์.
์๋ฅผ ๋ค์ด AppMaster ๋ฐฑ์๋๋ฅผ ๋ด๋ณด๋ด๊ณ ์๋ํํฐ ์ฌ๊ณ ์์คํ ๊ณผ์ ํตํฉ์ด ํ์ํ๋ค๋ฉด ์์ฑ๋ ์๋ํฌ์ธํธ ํธ๋ค๋ฌ๋ฅผ ์ง์ ์์ ํ์ง ๋ง์ธ์. ๋์ :
-
์์ฑ๋ ์๋ํฌ์ธํธ๋ ๊ทธ๋๋ก ๋ก๋๋ค.
-
์ปค์คํ ์์ญ์ ์ฌ๊ณ API๋ฅผ ํธ์ถํ๋ ์๋น์ค ์ถ๊ฐํฉ๋๋ค.
-
์์ฑ๋ ๋ก์ง์ด
InventoryClient๊ฐ์ ์์ ์ ์ธ ์ธํฐํ์ด์ค๋ฅผ ํตํด ๋น์ ์ด ์์ ํ ์๋น์ค์ ํธ์ถํ๋๋ก ํฉ๋๋ค.
์ฌ์์ฑ์ ์๋ํฌ์ธํธ ๊ตฌํ์ ๊ต์ฒดํ ์ ์์ง๋ง, ํตํฉ ์ฝ๋๋ ๊ทธ๋๋ก ์ ์ง๋ฉ๋๋ค. ์ธํฐํ์ด์ค ๊ฒฝ๊ณ๋ง ์์ ์ ์ผ๋ก ์ ์งํ๋ฉด ๋ฉ๋๋ค.
๊ฐ๋ฅํ ํ ์์ ์ ์ธ ํตํฉ ์ง์ ์ฌ์ฉํ๊ธฐ
์ปค์คํ ์ฝ๋๋ฅผ ์์ฑํ๊ธฐ ์ ์ API, ์นํํฌ, ํ๋ซํผ ๋ชจ๋ ๊ฐ์ ์์ ์ ์ธ ํํฌ๋ก ๋์์ ์ฒจ๋ถํ ์ ์๋์ง ํ์ธํ์ธ์. ์๋ฅผ ๋ค์ด AppMaster๋ Stripe ๊ฒฐ์ , Telegram, ์ด๋ฉ์ผ/SMS ๋ฉ์์ง์ ์ํ ์ฌ์ ๊ตฌ์ถ ๋ชจ๋์ ์ ๊ณตํฉ๋๋ค. ์์ ์ ์ธ ํตํฉ ์ง์ ์ ์ฌ์ฉํ๋ฉด ์ฌ์์ฑ์ด ๋๋ผ์์ ์ค์ผ ์ ์์ต๋๋ค.
"ํธ์ง ๊ธ์ง" ๊ตฌ์ญ์ ํ ํ์ด์ง๋ก ๋ฌธ์ํํ๊ณ ์๋ํ๋ก ๊ฐ์ ํ์ธ์. ์ฌ๋๋ค ๋จธ๋ฆฟ์์๋ง ์๋ ๊ท์น์ ๋ง๊ฐ์ ๋ฌด๋์ง๊ธฐ ์ฝ์ต๋๋ค.
์ฌ์์ฑ์ ๊ฒฌ๋๋ ์ ์ฅ์ ๊ตฌ์กฐ
์ฌ์์ฑ์ ๊ฒฌ๋๋ ์ ์ฅ์๋ ํ๋์ ๋ฌด์์ด ์์ฑ๋ ๊ฒ์ธ์ง, ๋ฌด์์ด ์ฌ๋์ด ์์ ํ ๊ฒ์ธ์ง, ๋ฌด์์ด ์ค์ ์ธ์ง ๋ณด์ฌ์ค์ผ ํฉ๋๋ค. ๋๊ตฐ๊ฐ 10์ด ์์ ๊ตฌ๋ถํ์ง ๋ชปํ๋ฉด ๋ฎ์ด์ฐ๊ธฐ์ "์์ํ ์์ "์ด ๋ฐ์ํฉ๋๋ค.
AppMaster ๊ฐ์ ํ๋ซํผ์์ ๋ด๋ณด๋ผ ๋๋ ๋ด๋ณด๋ด๊ธฐ๋ฅผ ๋ฐ๋ณต ๊ฐ๋ฅํ ๋น๋ ์ฐ์ถ๋ฌผ๋ก ๋ค๋ฃจ์ธ์. ์ผํ์ฑ ์ธ์์ธ๊ณ๋ก ์ฌ๊ธฐ๋ฉด ์ ๋ฉ๋๋ค.
์ค์ฉ์ ์ธ ๊ตฌ์กฐ๋ ์์ ๊ถ๊ณผ ์๋ช ์ฃผ๊ธฐ์ ๋ฐ๋ผ ์ฝ๋๋ฅผ ๋ถ๋ฆฌํฉ๋๋ค:
generated/(๋๋appmaster_generated/): ์ฌ์์ฑ๋ ์ ์๋ ๋ชจ๋ ๊ฒ. ์๋ ํธ์ง ๊ธ์ง.custom/: ์์์ ํ์ฅ, ์ด๋ํฐ, ๊ธ๋ฃจ ์ฝ๋.config/: ํ๊ฒฝ ํ ํ๋ฆฟ, ๋ฐฐํฌ ์ค์ , ๋น๋ฐ ์๋ฆฌํ์์(์ค์ ๋น๋ฐ ๊ธ์ง).scripts/: "regen + patch + test" ๊ฐ์ ์๋ํ ์คํฌ๋ฆฝํธ.docs/: ์ ์ฅ์ ๊ท์น์ ์งง๊ฒ ์ ๋ฆฌํ ๋ฌธ์.
๋ช
๋ช
๊ท์น์ ๊ธํ ๋ ๋์์ด ๋ฉ๋๋ค. ์ปค์คํ
๋ถ๋ถ์ ๋ํด ์ผ๊ด๋ ์ ๋์ฌ(์: custom_ ๋๋ ext_)๋ฅผ ์ฌ์ฉํ๊ณ , ์์ฑ๋ ๋ ์ด์์์ ๊ทธ๋๋ก ๋ฐ๋ผ์ผ ์ค์ ๋ก ๋์์ด ๋ ๋๋ง ๋ชจ๋ฐฉํ์ธ์. ์์ฑ๋ ํ์ผ์ "์ด๋ฒ๋ง ๊ฑด๋๋ฆฌ์"๋ ์ ํน์ ๋๋ผ๋ฉด ๋ฉ์ถ๊ณ ๊ทธ ๋ณ๊ฒฝ์ custom/์ด๋ ํฉ์๋ ํ์ฅ ํฌ์ธํธ๋ก ์ฎ๊ธฐ์ธ์.
๋ธ๋์นญ๋ ๊ฐ์ ๋ถ๋ฆฌ๋ฅผ ๋ฐ์ํด์ผ ํฉ๋๋ค. ๋ง์ ํ์ด ๋ชจ๋ธ ๊ธฐ๋ฐ ๋ณ๊ฒฝ(์๊ฐ์ ๋ชจ๋ธ ์
๋ฐ์ดํธ๋ก ์ฝ๋๊ฐ ์ฌ์์ฑ๋๋ ๊ฒ)๊ณผ ์ปค์คํ
์ฝ๋ ๋ณ๊ฒฝ(ํ์ฅ ๋ฐ ํตํฉ)์ ๊ตฌ๋ถํฉ๋๋ค. ๋จ์ผ ์ ์ฅ์์์๋ PR ๋ผ๋ฒจ์ด๋ model/*, custom/* ๊ฐ์ ๋ธ๋์น ๋ค์ด๋ฐ์ ์๊ตฌํ๋ฉด ๋ฆฌ๋ทฐ๊ฐ ๋ช
ํํด์ง๋๋ค.
๋ฆด๋ฆฌ์ค ์์๋ "์๋ก ์ฌ์์ฑํ๊ธฐ"๋ฅผ ๋นํ์์ ์ผ๋ก ๋ง๋์ธ์. ๋ฆด๋ฆฌ์ค ํ๋ณด๋ generated/์ ์ฌ์์ฑํ ๋ค ์คํฌ๋ฆฝํธ ํจ์น๋ฅผ ์ ์ฉํ๊ณ ํ
์คํธ๋ฅผ ์คํํด ์ฌํ ๊ฐ๋ฅํด์ผ ํฉ๋๋ค. ์ ์ฅ์๊ฐ ์ฒ์๋ถํฐ ๋ค์ ๋น๋ํ ์ ์๋ค๋ฉด ์ด๋ฏธ ๋๋ฆฌํํธ๊ฐ ๋ฐ์ํ ๊ฒ์
๋๋ค.
๋ชจ๋ธ๊ณผ ์ฝ๋ ์ ๋ ฌ์ ์ ์งํ๋ ๋จ๊ณ๋ณ ์ํฌํ๋ก
๋ชจ๋ ๋ด๋ณด๋ด๊ธฐ๋ฅผ ์์ ๋ฆด๋ฆฌ์ค์ฒ๋ผ ์ทจ๊ธํ์ธ์: ์ฌ์์ฑ, ๊ฒ์ฆ, ์์ ํ ๊ฒ๋ง ์ฌ์ ์ฉ, ๊ธฐ๋ก์ผ๋ก ๊ณ ์ . ์ด๋ ๊ฒ ํ๋ฉด ์๊ฐ์ ๋ชจ๋ธ์ ์ง์ค์ ์์ฒ์ผ๋ก ์ ์งํ๋ฉด์ ์ ์คํ๊ฒ ์ ์ด๋ ์ปค์คํ ์์ ๋ ํ์ฉํ ์ ์์ต๋๋ค.
์ ์๋ํ๋ ์ํฌํ๋ก ์์:
- ์ต์ ๋ชจ๋ธ์์ ์ฌ์์ฑ: ์๊ฐ์ ๋ชจ๋ธ(๋ฐ์ดํฐ ์คํค๋ง, ๋น์ฆ๋์ค ๋ก์ง, UI)์ด ์ต์ ์ธ์ง ํ์ธํฉ๋๋ค. ๊ทธ ์ ํํ ๋ฒ์ ์์ ์ฌ์์ฑํ๊ณ ๋ด๋ณด๋ ๋๋ค.
- ๊นจ๋ํ ๋น๋์ ๋น ๋ฅธ ์ค๋ชจํฌ ํ ์คํธ: ๊นจ๋ํ ์ํ์์ ๋น๋ํ๊ณ ๊ธฐ๋ณธ "์คํ๋๋๊ฐ" ๊ฒ์ฌ๋ฅผ ํฉ๋๋ค. ๋ฐฑ์๋์ ํฌ์ค ์๋ํฌ์ธํธ๋ฅผ ํธ์ถํ๊ณ ์น์ ์ฃผ์ ํ๋ฉด์ ๋ก๋ํ์ธ์.
- ์น์ธ๋ ํ์ฅ ํฌ์ธํธ๋ฅผ ํตํด์๋ง ์ปค์คํ ์ฝ๋ ์ฌ์ ์ฉ: ์์ฑ๋ ํ์ผ์ ์์์ ์ผ๋ก ํธ์ง์ ๋ณต์ฌํ์ง ๋ง์ธ์. ์ปค์คํ ๋์์ ๋ณ๋ ๋ชจ๋, ๋ํผ, ํํฌ์ ๋ฃ์ด ์ฌ์์ฑ์ ๊ฒฌ๋ ์ ์๊ฒ ํ์ธ์.
- ์๋ํ ๊ฒ์ฌ์ ์ฃผ์ ์ถ๋ ฅ ๋น๊ต ์คํ: ํ ์คํธ๋ฅผ ์คํํ ๋ค API ๊ณ์ฝ, ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ง์ด๊ทธ๋ ์ด์ , ์ฃผ์ ํ๋ฉด์ ๋น ๋ฅธ UI ์ฒดํฌ ๊ฐ์ ํต์ฌ์ ๋น๊ตํฉ๋๋ค.
- ๋ฆด๋ฆฌ์ค ํ๊ทธ ๋ฐ ๋ณ๊ฒฝ ๊ธฐ๋ก: ๋ชจ๋ธ ๋ณ๊ฒฝ(์คํค๋ง, ๋ก์ง, UI)๊ณผ ์ปค์คํ ๋ณ๊ฒฝ(ํ์ฅ, ํตํฉ, ์ค์ )์ ๊ตฌ๋ถํด ์งง์ ๋ฉ๋ชจ๋ก ๋จ๊ธฐ์ธ์.
์ฌ์์ฑ ํ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ฉด ๊ฐ๋ฅํ๋ฉด ๋ชจ๋ธ์์ ๋จผ์ ๊ณ ์น์ธ์. ๋ชจ๋ธ๋ก ํํํ ์ ์์ ๋๋ง ์ปค์คํ ์ฝ๋๋ฅผ ์ ํํ๊ณ , ๊ทธ ์ฝ๋๋ ๊ฒฉ๋ฆฌํด ๋ค์ ์ฌ์์ฑ์ด ์ง์ฐ์ง ์๋๋ก ํ์ธ์.
๊ฑฐ๋ฒ๋์ค ๊ท์น: ์ญํ , ์น์ธ, ๋ณ๊ฒฝ ํต์
ํ๋ซํผ์ด ์ฝ๋๋ฅผ ์ฌ์์ฑํ ์ ์๋ค๋ฉด(์: AppMaster) ๊ฑฐ๋ฒ๋์ค๋ ์์ ์์ค์ ๋ง๋ ์๋จ์ ๋๋ค. ๋ช ํํ ์์ ๊ถ๊ณผ ๊ฐ๋จํ ์น์ธ ๊ฒฝ๋ก๊ฐ ์์ผ๋ฉด ํ์ ๊ฐ์ฅ ๊ฐ๊น์ด ๊ฒ์ ํธ์งํ๊ณ ์ฌ์์ฑ์ ๋ฐ๋ณต๋๋ ๋๋ผ์์ด ๋ฉ๋๋ค.
๋ช ๋ช ์ ์์ ์๋ฅผ ์ง๋ช ํ์ธ์. ์์ํ๋ ํ์ ์์ง๋ง ๋ช ํ์ฑ์ ํ์ํฉ๋๋ค.
- ๋ชจ๋ธ ์ ์ง๊ด๋ฆฌ์: ์๊ฐ์ ๋ชจ๋ธ์ ์์ ํ๋ฉฐ ๋ฐ์ดํฐ, API, ํต์ฌ ๋ก์ง์ ์ง์ค์ ์์ฒ์ ์ ์งํฉ๋๋ค.
- ์ปค์คํ ์ฝ๋ ์ ์ง๊ด๋ฆฌ์: ์์์ ํ์ฅ๊ณผ ์์ ํ ํ์ฅ ๊ฒฝ๊ณ๋ฅผ ์์ ํฉ๋๋ค.
- ๋ฆด๋ฆฌ์ค ์์ ์: ๋ฒ์ ๊ด๋ฆฌ, ์ฌ์์ฑ ์๊ธฐ ์กฐ์ , ํ๋ก๋์ ๋ฐฐํฌ๋ฅผ ์ฑ ์์ง๋๋ค.
๋ฆฌ์คํฌ๊ฐ ํฐ ์์ญ์ ๋ํด์๋ ๋ฆฌ๋ทฐ๋ฅผ ํ์๋ก ๋ง๋์ธ์. ํตํฉ(๊ฒฐ์ , ๋ฉ์์ง, ์ธ๋ถ API)์ด๋ ๋ณด์(์ธ์ฆ, ์ญํ , ๋น๋ฐ, ๋ฐ์ดํฐ ์ ๊ทผ)์ ์ํฅ์ ์ฃผ๋ ์ปค์คํ ์ฝ๋๋ ์ปค์คํ ์ฝ๋ ์ ์ง๊ด๋ฆฌ์์ ์ถ๊ฐ ๋ฆฌ๋ทฐ์ด 1์ธ์ ์น์ธ์ ์๊ตฌํด์ผ ํฉ๋๋ค. ์ด๊ฑด ์คํ์ผ ๋ฌธ์ ๊ฐ ์๋๋ผ ๋๋๋ฆฌ๊ธฐ ํ๋ ๋๋ฆฌํํธ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํ ์กฐ์น์ ๋๋ค.
๋ณ๊ฒฝ ํต์ ๋ฅผ ์ํด ๋๊ตฌ๋ ์์ฑํ ์ ์๋ ๊ฐ๋จํ ๋ณ๊ฒฝ ์์ฒญ ์์์ ์ฌ์ฉํ์ธ์. ์ค์ ๋ก ์ฌ์ฉํ๋ ค๋ฉด ์ถฉ๋ถํ ๊ฐ๋จํด์ผ ํฉ๋๋ค.
- ๋ฌด์์ด ๋ณ๊ฒฝ๋์๋๊ฐ (๋ชจ๋ธ, ์์ฑ๋ ์ฝ๋ ์ค์ , ๋๋ ์ปค์คํ ํ์ฅ)
- ์ ๋ณ๊ฒฝ๋์๋๊ฐ (์ฌ์ฉ์ ์๊ตฌ ๋๋ ์ธ์๋ํธ)
- ์ํ (๋ฌด์์ด ๊นจ์ง ์ ์๋๊ฐ, ๋๊ฐ ์ํฅ์ ๋ฐ๋๊ฐ)
- ๋กค๋ฐฑ ๊ณํ (์์ ํ๊ฒ ๋๋๋ฆฌ๋ ๋ฐฉ๋ฒ)
- ๊ฒ์ฆ ๋ฐฉ๋ฒ (1~2๊ฐ์ ์ฒดํฌ)
๊ธด๊ธ ์์ ๊ท์น์ ์ ํ์ธ์. ํซํฝ์ค๋ฅผ ๋ด๋ณด๋ธ ์ฝ๋์ ์ง์ ์ ์ฉํด์ผ ํ๋ค๋ฉด, ๊ฐ์ ๋ณ๊ฒฝ์ ์๊ฐ์ ๋ชจ๋ธ์ ์ฌํํ๊ฑฐ๋ ํ์ฅ ํฌ์ธํธ๋ฅผ ์ฌ์ค๊ณํ๋ ์์ ์ 1~3 ์์ ์ผ ๊ฐ์ ๊ณ ์ ๋ ๊ธฐ๊ฐ ๋ด์ ์ํํ๋๋ก ์ผ์ ์ก์ผ์ธ์. ์ด ๊ท์น ํ๋๊ฐ ์์ธ๊ฐ ์์์ธ์ง ์๊ตฌ ํฌํฌ์ธ์ง ๊ฒฐ์ ํฉ๋๋ค.
๋ฎ์ด์ฐ๊ธฐ์ ๋๋ฆฌํํธ๋ฅผ ์ผ์ผํค๋ ํํ ์ค์๋ค
๋๋ถ๋ถ์ ๋ฎ์ด์ฐ๊ธฐ ๋ฌธ์ ๋ ํฉ๋ฆฌ์ ์ธ ์ง๋ฆ๊ธธ์์ ์์ํฉ๋๋ค: "์ด ํ์ผ ํ๋๋ง ๊ณ ์น์." AppMaster ๊ฐ์ ์ฌ์์ฑ ํ๋ซํผ์์๋ ๊ทธ ์ง๋ฆ๊ธธ์ด ๋ค์ ์ฌ์์ฑ ๋ ๋ณดํต์ ์ฌ์์ ์ผ๋ก ๋์์ต๋๋ค.
๋๋ฆฌํํธ๋ฅผ ๋ง๋๋ ํจํด
๊ฐ์ฅ ํํ ์์ธ์ ์์ฑ๋ ์ฝ๋๋ฅผ ํธ์งํ๋ ๊ฒ์ ๋๋ค. ์๊ฐ์ ์ผ๋ก๋ ๋น ๋ฅด์ง๋ง ๋ค์ ์ฌ์์ฑ ๋ ํจ์น๊ฐ ์ฌ๋ผ์ง๊ฑฐ๋ ์ ์ถ๋ ฅ๊ณผ ์ถฉ๋ํฉ๋๋ค.
๋ ๋ค๋ฅธ ๋ฌธ์ ๋ ์ฌ๋ฌ ์ฌ๋์ด ๊ฒฝ๊ณ ์์ด ์ปค์คํ ์ฝ๋๋ฅผ ์ถ๊ฐํ๋ ๊ฒฝ์ฐ์ ๋๋ค. ํ ํ์ด ์์ฑ๋ ํด๋ ์์ "์์" ํฌํผ๋ฅผ ์ถ๊ฐํ๊ณ ๋ค๋ฅธ ํ์ด ๊ฐ์ ์์ญ์ ๋ค๋ฅธ ํฌํผ๋ฅผ ์ถ๊ฐํ๋ฉด ๋ ์ด์ ์์ ์ ์ผ๋ก ์ฌ์์ฑํ๊ฑฐ๋ ๋ณ๊ฒฝ์ ๋ฆฌ๋ทฐํ ์ ์์ต๋๋ค.
๋ฆด๋ฆฌ์ค๋ฅผ ์ฌ์์ฑํ์ง ์๋ ๊ฒ์ด ๊ดํ์ด ๋๋ฉด ๋๋ฆฌํํธ๊ฐ ๋ฐ์ํฉ๋๋ค. ์๊ฐ์ ๋ชจ๋ธ์ด ๋ณ๊ฒฝ๋์๋๋ฐ ํ๋ก๋์ ์ ์ค๋๋ ๋ด๋ณด๋ธ ์ฝ๋๋ก ์คํ๋๋ฉด ๋ช ๋ฒ์ ์ฌ์ดํด ํ์๋ ์๋ฌด๋ ์ฑ์ด ์ค์ ๋ก ๋ฌด์์ ํ๋์ง ํ์ ํ ์ ์์ต๋๋ค.
์กฐ์ฉํ ์ค์ ํ๋๋ ์ด๋ค ๋ชจ๋ธ ๋ฒ์ ์ด ์ด๋ค ๋ด๋ณด๋ด๊ธฐ๋ฅผ ๋ง๋ค์๋์ง ๊ธฐ๋กํ์ง ์๋ ๊ฒ์ ๋๋ค. ๊ฐ๋จํ ํ๊ทธ๋ ๋ฆด๋ฆฌ์ค ๋ ธํธ๊ฐ ์์ผ๋ฉด "์ด API ๋์์ด ๋ชจ๋ธ์์ ์จ ๊ฑด๊ฐ, ์ฝ๋ ํจ์น์์ ์จ ๊ฑด๊ฐ?" ๊ฐ์ ๊ธฐ๋ณธ ์ง๋ฌธ์ ๋ตํ ์ ์์ต๋๋ค.
๋น ๋ฅธ ์์
๊ฐ๋ฐ์๊ฐ ๋๋ฝ๋ ๊ฒ์ฆ ๊ท์น์ ๋ณด๊ณ ์์ฑ๋ Go ํธ๋ค๋ฌ๋ฅผ ์ง์ ์์ ํด ๋น ๊ฐ์ ๋ง์์ต๋๋ค. ํ ์คํธ๋ฅผ ํต๊ณผํ๊ณ ๋ฐฐํฌ๋ฉ๋๋ค. 2์ฃผ ํ ํ์ด AppMaster ๋น์ฆ๋์ค ํ๋ก์ธ์ค๋ฅผ ์ ๋ฐ์ดํธํ๊ณ ๋ค์ ๋ด๋ณด๋ ๋๋ค. ํธ๋ค๋ฌ๊ฐ ์ฌ์์ฑ๋๋ฉฐ ๊ฒ์ฆ์ ์ฌ๋ผ์ง๊ณ ๋ฒ๊ทธ๊ฐ ๋ค์ ๋ํ๋ฉ๋๋ค.
์ด๊ธฐ ๊ฒฝ๊ณ ์ ํธ:
- ์์ฑ๋ ๋๋ ํฐ๋ฆฌ ์์ ์ปค์คํ ์ปค๋ฐ์ด ์ฌ๋ผ์ค๋ ๊ฒฝ์ฐ
- ํ์ฅ ์์น์ ๋ํ ๋ฌธ์ํ๋ ๊ท์น์ด ์๋ ๊ฒฝ์ฐ
- "์ด๋ฒ ๋ฆด๋ฆฌ์ค๋ ์ฌ์์ฑํ ์ ์๋ค"๋ ๋ง์ด ์ ์ํ๋ ๊ฒฝ์ฐ
- ๋ฆด๋ฆฌ์ค ๋ ธํธ์ ์ฌ์ฉ๋ ๋ชจ๋ธ ๋ฒ์ ์ด ์๋ ๊ฒฝ์ฐ
- ์์ ์ด ์ฝ๋์๋ง ์กด์ฌํ๊ณ ์๊ฐ์ ๋ชจ๋ธ์๋ ์๋ ๊ฒฝ์ฐ
๋๋ฆฌํํธ๋ฅผ ์กฐ๊ธฐ์ ์ก์๋ด๋ ํ์ง ๊ฒ์ฌ
๋ชจ๋ ์ฌ์์ฑ์ ์์ ๋ฆด๋ฆฌ์ค์ฒ๋ผ ๋ค๋ฃจ์ธ์. ๋จ์ง ์ฑ์ด ์คํ๋๋์ง ์ฌ๋ถ๋ง ๋ณด๋ ๊ฒ ์๋๋๋ค. ์๊ฐ์ ๋ชจ๋ธ(์: AppMaster์ Data Designer ๋ฐ Business Process Editor)์ด ๋ฐฐํฌ๋ ์ ์ฅ์์ ์ฌ์ ํ ์ผ์นํ๋์ง ํ์ธํ๋ ๊ฒ์ ๋๋ค.
์ค์ ์ฌ์ฉ์ ํ๋์ ๋ฐ์ํ๋ ์ต์ํ์ ํ ์คํธ ์ค์ํธ๋ฅผ ๋จผ์ ๋ง๋์ธ์. ์๊ฒ ์ ์งํด ๋ชจ๋ ๋ณ๊ฒฝ์ ์คํ๋๊ฒ ํ๋, ์์ต์ด๋ ์ง์ ํฐ์ผ์ ์ ๋ฐํ๋ ํ๋ฆ์ ์ปค๋ฒํ๋๋ก ํ์ธ์. ๋ด๋ถ ์ด์ ๋๊ตฌ๋ผ๋ฉด ๋ก๊ทธ์ธ, ๋ ์ฝ๋ ์์ฑ, ์น์ธ, ๋ณด๊ณ ์ ํ์ธ ๊ฐ์ ํ๋ฆ์ ํฌํจํ ์ ์์ต๋๋ค.
๋ฐ๋ณตํ๊ธฐ ์ฌ์ด ๋ช ๊ฐ์ง ์ง์ค ๊ฒ์ฌ:
- ์์ 3~5๊ฐ ์ฌ์ฉ์ ํ๋ฆ์ ๋ํ ์ค๋ชจํฌ ํ ์คํธ(์น ๋ฐ ๋ชจ๋ฐ์ผ ํฌํจ ์ ๋ ๋ค)
- ํต์ฌ API ๊ณ์ฝ(request/response ํํ) ๋ฐ Stripe, Telegram ๊ฐ์ ์ค์ํ ํตํฉ์ ๋ํ ๊ณ์ฝ ๊ฒ์ฌ
- ๋ด๋ณด๋ด๊ธฐ ํ diff ๋ฆฌ๋ทฐ(์์ฑ๋ ์์ญ์ด ์๋ ์ปค์คํ ํด๋์ ์ด์ )
- ๋กค๋ฐฑ ์ฐ์ต: ๋ง์ง๋ง ์์ ๋น๋๋ฅผ ๋น ๋ฅด๊ฒ ์ฌ๋ฐฐํฌํ ์ ์๋์ง ํ์ธ
- ๋ฒ์ ๋ก๊น : ๋ชจ๋ธ ๋ฒ์ , ๋ด๋ณด๋ด๊ธฐ ๋ ์ง, ๋ฐฐํฌ๋ ์ปค๋ฐ ํ๊ทธ ๊ธฐ๋ก
๊ณ์ฝ ๊ฒ์ฌ๋ "UI์์๋ ๊ด์ฐฎ์ ๋ณด์ด์ง๋ง" ๋ฌธ์ ๋ฅผ ์ก์๋ ๋๋ค. ์: ์๋ํฌ์ธํธ๋ ์ฌ์์ฑ๋์ด ์กด์ฌํ์ง๋ง ํ๋ ํ์ ์ด integer์์ string์ผ๋ก ๋ฐ๋์ด ๊ฒฐ์ ์์คํ ํธ์ถ์ด ๊นจ์ง ์ ์์ต๋๋ค.
diff ๋ฆฌ๋ทฐ์ ๋ํด ๋จ์ํ ๊ท์น์ ๋์ธ์: ํ์ผ์ด ์์ฑ๋ ๋๋ ํฐ๋ฆฌ์ ์์ผ๋ฉด ์์์ ํธ์ง ๊ธ์ง. ๋ฆฌ๋ทฐ์ด๋ ์์์ ๋ฌด์ํ๊ณ ๋น์ ์ด ์์ ํ ๊ฒ(์ปค์คํ ๋ชจ๋, ์ด๋ํฐ, ํตํฉ ๋ํผ)์ ์ง์คํด์ผ ํฉ๋๋ค.
๋กค๋ฐฑ ๊ณํ์ ๋ฏธ๋ฆฌ ๋ฌธ์๋ก ๋ง๋ค์ด ๋์ธ์. ์ฌ์์ฑ์ผ๋ก ํ๊ดด์ ์ธ ๋ณ๊ฒฝ์ด ์๊ธฐ๋ฉด ๋๊ฐ ๋กค๋ฐฑ์ ์น์ธํ๋์ง, ๋ง์ง๋ง ์์ ์ฐ์ถ๋ฌผ์ด ์ด๋ ์๋์ง, ์ด๋ค ๋ชจ๋ธ ๋ฒ์ ์ด ๊ทธ๊ฒ์ ๋ง๋ค์๋์ง ์์์ผ ํฉ๋๋ค.
์์: ์ฌ์์ฑํด๋ ์ ์ง๋๋ ์ปค์คํ ํตํฉ ์ถ๊ฐํ๊ธฐ
ํ์ด AppMaster๋ก ๊ณ ๊ฐ ํฌํธ์ ๋ง๋ค๊ณ ์์ง๋ง ๋ด์ฅ ๋ชจ๋๋ก ์ง์๋์ง ์๋ ๋์น SMS ์ ๊ณต์ ์ฒด์์ ํตํฉ์ด ํ์ํ๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. ์ ๊ณต์ ์ฒด SDK๋ฅผ ์ถ๊ฐํ๊ณ ๋ช ๊ฐ์ง ์ฃ์ง ์ผ์ด์ค๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด ์์ค ์ฝ๋๋ฅผ ๋ด๋ณด๋ ๋๋ค.
๋์ค์ ๋ฌธ์ ๋ฅผ ๋ฐฉ์งํ๋ ๊ท์น์ ๋จ์ํฉ๋๋ค: ๋ฐ์ดํฐ, API ์๋ํฌ์ธํธ, ํต์ฌ ํ๋ฆ์ ์๊ฐ์ ๋ชจ๋ธ์ ์ง์ค์ ์์ฒ์ผ๋ก ์ ์งํ์ธ์. ์ ๊ณต์ ์ฒด ์ฝ๋๋ ์์ฑ๋ ์ฝ๋๊ฐ ํธ์ถํ๋ ์ด๋ํฐ ๋ ์ด์ด์ ๋๋, ์์ฑ๋ ์ฝ๋๊ฐ ์์ ํ์ง ์๋๋ก ํ์ธ์.
๊น๋ํ ๋ถ๋ฆฌ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- ์๊ฐ์ ๋ชจ๋ธ(AppMaster): ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ๋, API ์๋ํฌ์ธํธ, ์ธ์ฆ ๊ท์น, ๋ฉ์์ง ์ ์ก์ ๊ฒฐ์ ํ๋ ๋น์ฆ๋์ค ํ๋ก์ธ์ค
- ์ด๋ํฐ ๋ ์ด์ด(์์์ ): ์ ๊ณต์ ์ฒด ํด๋ผ์ด์ธํธ, ์์ฒญ ์๋ช , ์ฌ์๋, ์ ๊ณต์ ์ฒด ์ค๋ฅ๋ฅผ ์ฑ์ ์์ ์์ ๋ ์ค๋ฅ ์งํฉ์ผ๋ก ๋งคํ
- ์์ ๊ฒฝ๊ณ: ๋น์ฆ๋์ค ํ๋ก์ธ์ค๊ฐ ํธ๋ฆฌ๊ฑฐํ๋
SendMessage(to, text, metadata)๊ฐ์ ๋จ์ผ ์ธํฐํ์ด์ค
์ฃผ๊ฐ ์์ ๊ด์ ์์ ์ฌ์์ฑ์ ์ง๋ฃจํด์ง๋ ๊ฒ์ด ๋ชฉํ์ ๋๋ค. ์์์ผ์ ์ ํ ๋ณ๊ฒฝ์ผ๋ก ์ ๋ฉ์์ง ์ ํ๊ณผ PostgreSQL ํ๋๊ฐ ์ถ๊ฐ๋๋ฉด AppMaster ๋ชจ๋ธ์ ์ ๋ฐ์ดํธํ๊ณ ์ฌ์์ฑํฉ๋๋ค. ์์ฑ๋ ๋ฐฑ์๋ ์ฝ๋๋ ๋ฐ๋์ง๋ง ์ด๋ํฐ ๋ ์ด์ด๋ ๊ทธ๋๋ก์ ๋๋ค. ์ธํฐํ์ด์ค์ ์ ๋งค๊ฐ๋ณ์๊ฐ ํ์ํ๋ฉด ํ ๋ฒ๋ง ๋ณ๊ฒฝํ๊ณ ํฉ์๋ ๊ฒฝ๊ณ์ ๋จ์ผ ํธ์ถ ์ง์ ์ ์ ๋ฐ์ดํธํฉ๋๋ค.
๋ฆฌ๋ทฐ์ ํ ์คํธ๋ ๋ถ์ ์ ํ ๊ตฌ์ ์ง์ ์์กด์ ํผํ๊ฒ ํฉ๋๋ค. ์ต์ ์๊ตฌ์ฌํญ:
- ์์ฑ๋ ํด๋๋ฅผ ์ง์ ํธ์งํ ์ฌ๋์ด ์๋์ง ํ์ธ
- ์ด๋ํฐ ์ ๋ ํ ์คํธ(์ ์ ๊ฒฝ๋ก, ์ ๊ณต์ ์ฒด ํ์์์, ์๋ชป๋ ๋ฒํธ) ์์ฑ
- ์ฌ์์ฑ ํ ๋ฉ์์ง๊ฐ ์ ์ก๋๋์ง ํ์ธํ๋ ํตํฉ ํ ์คํธ
๋ค์ ์ฌ๋์ ์ํด ์ด๋ํฐ๊ฐ ๋ฌด์์ ํ๋์ง, ์ด๋์ ์๋์ง, ์๊ฒฉ์ฆ๋ช ํ์ ๋ฐฉ๋ฒ, ํ ์คํธ ์คํ ๋ฐฉ๋ฒ, ์๊ฐ์ ๋ชจ๋ธ์ด ํ๋๋ฅผ ์ถ๊ฐํ ๋ ๋ฌด์์ ๋ณ๊ฒฝํด์ผ ํ๋์ง์ ๋ํ ์งง์ ํตํฉ ์นด๋๋ฅผ ์์ฑํ์ธ์.
๋ค์ ๋จ๊ณ: ์ค์ฉ์ ์ธ ๋กค์์ ๊ณํ(๊ฐ๋ฒผ์ด ๋๊ตฌ ์ ํ ๋ ธํธ ํฌํจ)
์๊ฒ ์์ํ๊ณ ๋ฌธ์๋ก ๋จ๊ธฐ์ธ์. ์ ์ฅ์์์ ๋ฌด์์ ๋ณ๊ฒฝํ ์ ์๊ณ ๋ฌด์์ ์๊ฐ์ ๋ชจ๋ธ์์ ๋ณ๊ฒฝํด์ผ ํ๋์ง ๋ ๊ฐ์ง ์ง๋ฌธ์ ๋ตํ๋ฉด ํ ํ์ด์ง ์ ์ฑ ์ผ๋ก ์ถฉ๋ถํฉ๋๋ค. ์์ฑ๋ ํด๋์ ๋น์ ์์ ํด๋๋ฅผ ๋ณด์ฌ์ฃผ๋ ๊ฒฝ๊ณ ๋ค์ด์ด๊ทธ๋จ(์คํฌ๋ฆฐ์ท ํ ์ฅ๋ ์ข์)์ README ์์ ๋์ธ์.
๊ทธ๋ฐ ๋ค์ ํ๋์ ์ค์ ๊ธฐ๋ฅ์ผ๋ก ํ์ผ๋ฟ์ ์งํํ์ธ์. ๊ฐ์น๊ฐ ์์ผ๋ฉด์๋ ๋ฒ์๊ฐ ์ ํ๋ ๊ฒ(์นํํฌ ์ถ๊ฐ, ์์ ๊ด๋ฆฌ์ ํ๋ฉด, ์ ์น์ธ ๋จ๊ณ)์ ๊ณ ๋ฅด์ธ์.
์ค์ฉ์ ์ธ ๋กค์์ ๊ณํ:
- ์ ์ฑ ๊ณผ ๊ฒฝ๊ณ ๋ค์ด์ด๊ทธ๋จ์ ์์ฑํด ์ ์ฅ์ README ์์ ๋ณด๊ด
- ํ๋์ ํ์ผ๋ฟ ๊ธฐ๋ฅ์ ๊ณจ๋ผ ๋์์ ๋๊น์ง ์คํ: ๋ชจ๋ธ ๋ณ๊ฒฝ, ๋ด๋ณด๋ด๊ธฐ, ๋ฆฌ๋ทฐ, ๋ฐฐํฌ
- ์ ๊ธฐ์ ์ธ ์ฌ์์ฑ ์ฐ์ต(์๊ฐ ๊ถ์ฅ)์ ์์ฝํด ์ผ๋ถ๋ฌ ์ฌ์์ฑํ๊ณ ์ค์ํ ๊ฒ์ด ๋ฎ์ด์ง์ง ์๋์ง ํ์ธ
- ๊ฐ๋จํ ๋ณ๊ฒฝ ๊ฒ์ดํธ ์ถ๊ฐ: ์๊ฐ์ ๋ชจ๋ธ ๋ณ๊ฒฝ์ด ์ฐธ์กฐ๋์ง ์์ผ๋ฉด ๋ณํฉ ๊ธ์ง(ํฐ์ผ, ๋ฉ๋ชจ, ์ปค๋ฐ ๋ฉ์์ง ๋ฑ)
- ๋ ๋ฒ์ ์ฑ๊ณต์ ์ธ ์ฐ์ต ํ ๋ค์ ํ๊ณผ ๋ค์ ์ฑ์ ๊ฐ์ ๊ท์น ์ ์ฉ
๋๊ตฌ ์ ํ ๋ ธํธ: AppMaster๋ฅผ ์ฌ์ฉํ๋ค๋ฉด ๋ฐ์ดํฐ, API, ๋น์ฆ๋์ค ๋ก์ง์ ๊ธฐ๋ณธ์ ์ผ๋ก ์๊ฐ์ ๋ชจ๋ธ์ ๋์ธ์. ๋ด๋ณด๋ธ ์ฝ๋๋ ๋ฐฐํฌ ์๊ตฌ(์์ฒด ํด๋ผ์ฐ๋, ์ ์ฑ ) ๋๋ ๋ช ํํ ๋ถ๋ฆฌ๋ ์์ญ์ ์๋ ์ ์คํ๊ฒ ์ ์ด๋ ํ์ฅ์๋ง ์ฌ์ฉํ์ธ์.
๋ง์ฝ appmaster.io์์ AppMaster๋ก ๊ตฌ์ถ ์ค์ด๋ผ๋ฉด ์์ ๋ ธ์ฝ๋ ํ๋ก์ ํธ๋ก ๋จผ์ ์ฐ์ตํ๋ ๊ฒ์ด ์ข์ต๋๋ค: ์๊ฐ์ ํธ์ง๊ธฐ์์ ํต์ฌ ์ ํ๋ฆฌ์ผ์ด์ ๋ก์ง์ ๋ง๋ค๊ณ ๋ด๋ณด๋ด๊ณ ์ฌ์์ฑํด ๊ฒฝ๊ณ๊ฐ ์ ์ง๋๋์ง ๊ฒ์ฆํ ํ ๋ ํฐ ์์คํ ์ผ๋ก ํ์ฅํ์ธ์.


