์ฌ์ฉ์ ์ ์ ๊ธฐ๋ฅ์ ๋งฅ๋ฝ์์ HOC(๊ณ ์ฐจ ๊ตฌ์ฑ ์์)๋ ๊ตฌ์ฑ ์์๋ฅผ ๋ค๋ฅธ ๊ตฌ์ฑ ์์ ๋ด์ ๋ํํ์ฌ ๊ตฌ์ฑ ์์๋ฅผ ๋ณํํ๊ฑฐ๋ ํฅ์์์ผ ๊ธฐ๋ฅ๊ณผ ์ฌ์ฌ์ฉ์ฑ์ ํ์ฅํ๋ ๋์์ธ ํจํด์ ๋๋ค. ํจ์ํ ํ๋ก๊ทธ๋๋ฐ์ ๊ธฐ๋ฐ์ ๋ HOC๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ๋ฐ์๋ ๊ตฌ์ฑ ๋ฐ ๊ด์ฌ์ฌ ๋ถ๋ฆฌ ์์น์ ์ค์ํ์ฌ ๋ณด๋ค ํจ์จ์ ์ด๊ณ ๋ชจ๋์์ด๋ฉฐ ์ ์ง ๊ด๋ฆฌ๊ฐ ๊ฐ๋ฅํ ์ฝ๋๋ฅผ ๊ตฌ์ถํ ์ ์์ต๋๋ค.
๊ณ ์ฐจ ๊ตฌ์ฑ์์๋ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ๊ณ ์ฐจ ํจ์์ ์ ์ฌํ๋ค๊ณ ๋ณผ ์ ์์ต๋๋ค. ์ด๋ ๋ค๋ฅธ ํจ์๋ฅผ ๋งค๊ฐ๋ณ์๋ก ๋ฐ์๋ค์ด๊ฑฐ๋ ์ ํจ์๋ฅผ ๋ฐํํ๊ฑฐ๋ ๋ ๋ค๋ฅผ ์ํํ ์ ์๋ ํจ์์ ๋๋ค. ๋น์ทํ ๋งฅ๋ฝ์์ HOC๋ ๊ตฌ์ฑ ์์๋ฅผ ์ ๋ ฅ์ผ๋ก ๋ฐ์๋ค์ด๊ณ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฒด์์ ์ฌ์ฉํ ์ ์๋ ์๋ก์ด ๊ตฌ์ฑ ์์๋ฅผ ์ถ๋ ฅํฉ๋๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ ๊ฐ๋ฐ์๊ฐ ๋ณด๋ค ์ ์ฐํ๊ณ ํ ์คํธ ๊ฐ๋ฅํ๋ฉฐ ์ ์ง ๊ด๋ฆฌ๊ฐ ๋ ์ฌ์ด ์ํํธ์จ์ด๋ฅผ ๊ตฌ์ถํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๊ณ ์ฐจ ๊ตฌ์ฑ ์์์ ์๋ ์ธ๊ธฐ ์๋ React JavaScript ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ์ฐพ์ ์ ์์ต๋๋ค. ์ฌ๊ธฐ์ ์ด ๊ฐ๋ ์ ๊ตฌ์ฑ ์์์ ๊ธฐ๋ฅ์ ํฅ์์ํค๋ ๋์์ ์๋ณธ ๊ตฌ์ฑ ์์์ ์ฝ๋๋ฅผ ๊น๋ํ๊ฒ ์ ์งํ๊ณ ์ํ๋ ์ถ๋ ฅ์ ์ง์คํ๋ ๋ฐ ๋๋ฆฌ ์ฌ์ฉ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด HOC๋ ๋ฐ์ดํฐ ๊ฐ์ ธ์ค๊ธฐ๋ฅผ ์ฒ๋ฆฌํ๊ฑฐ๋ ์๋ ๊ตฌ์ฑ ์์๊ฐ UI ๋ ๋๋ง์ ์ฒ๋ฆฌํ๋ ๋์ ์ ๋ ฅ ํ๋์ ์ํ๋ฅผ ๊ด๋ฆฌํ ์ ์์ต๋๋ค.
๋ฐฑ์๋, ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ๊ธฐ ์ํ ๊ณ ๊ธ no-code ํ๋ซํผ์ธ AppMaster ์์ HOC๋ ๊ฐ์ํ๋ ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ๋ฌ์ฑํ๋ ๋ฐ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. AppMaster ๊ฐ๋ฐ์๋ ์ฌ์ฉ์ ์ ์ ๊ธฐ๋ฅ์์ HOC๋ฅผ ํ์ฉํ์ฌ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋์ ์ฝ๋๋ฅผ ๊ตฌ์ฑํ ์ ์์ผ๋ฉฐ, ์ด๋ ๋์ฒด ์๋ฃจ์ ๋ณด๋ค ๊ฐ๋ฐ ์๋๊ฐ 10๋ฐฐ ๋ ๋น ๋ฅด๊ณ ๋น์ฉ ํจ์จ์ฑ์ด 3๋ฐฐ ๋ ๋์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ๋ ํ๋ซํผ์ ๊ธฐ๋ฅ์ ๊ธฐ์ฌํฉ๋๋ค. HOC์ ๋ํ ์ฌ์ธต์ ์ธ ์ดํด๋ฅผ ํตํด ๊ฐ๋ฐ์๋ AppMaster ์ํ๊ณ ๋ด์์ ๋ ๋์ ์ฑ๋ฅ๊ณผ ์ ์ง ๊ด๋ฆฌ๊ฐ ๋ ์ฌ์ด ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ค ์ ์์ต๋๋ค.
๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ธฐ๋ฐ ์ฌ์ฉ์ ์ง์ ๊ธฐ๋ฅ ์์ญ์์ ๊ณ ์ฐจ ๊ตฌ์ฑ ์์๋ ์ฐ๊ฒฐ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ , ์ฝ๊ฒ ๊ณต์ ํ ์ ์๋ API ๊ตฌ์ฑ ์์ ๋๋ ์ค๋ฅ ์ฒ๋ฆฌ๋ฅผ ๋ด๋นํ๋ ๋ํ ๊ตฌ์ฑ ์์์ ๊ฐ์ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ๊ตฌ์ฑ ์์๋ฅผ ๊ด๋ฆฌํ๋ ๋ฐ ํ์ฉ๋ ์ ์์ต๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก HOC๋ ๊นจ๋ํ๊ณ ์ ์ง ๊ด๋ฆฌ ๊ฐ๋ฅํ ์ฝ๋์ ๊ธฐ์ ๋ถ์ฑ ์ ๊ฑฐ์ ๊ธฐ์ฌํฉ๋๋ค.
AppMaster ํ๋ซํผ ๋ด์ ๋ํ์ ์ธ ์ ์ค ํ๋๋ ๊ฒ์ ์ ๋ ฅ ํ๋๋ฅผ ํน์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ ์ด๋ธ์ ์ฐ๊ฒฐํ๋ ๊ณ ์ฐจ ๊ตฌ์ฑ ์์๋ฅผ ์์ฑํ๋ ๊ธฐ๋ฅ์ ๋๋ค. HOC๋ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋์ ์ผ๋ก ์ฟผ๋ฆฌํ๋ ๋์์ UI ๋ ๋๋ง์ ๋ํ๋ ๊ตฌ์ฑ ์์์ ์์ํฉ๋๋ค. ์ด HOC๋ฅผ ์ ํ๋ฆฌ์ผ์ด์ ๋ด์ ์ฌ๋ฌ ๊ฒ์ ๊ตฌ์ฑ ์์์ ์ ์ฉํจ์ผ๋ก์จ ๊ฐ๋ฐ์๋ ์ด ๊ธฐ๋ฅ์ ์ฌ์ฌ์ฉํ ์ ์์ผ๋ฏ๋ก ์ฅ๊ธฐ์ ์ผ๋ก ์ค๋ณต์ฑ์ด ์ค์ด๋ค๊ณ ์ ์ง ๊ด๋ฆฌ์ฑ์ด ํฅ์๋ฉ๋๋ค.
HOC์ ๋ํ AppMaster ์ ํ์ ์ ์ํฐํ๋ผ์ด์ฆ ๋ฐ ๊ณ ๋ถํ ์ฌ์ฉ ์ฌ๋ก๋ฅผ ์ฒ๋ฆฌํ ์ ์๋ ์ค์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ๋ ๊ฐ๋ ฅํ ํ๋ซํผ ์ํคํ ์ฒ์์ ๋ถ๋ช ํ๊ฒ ๋๋ฌ๋ฉ๋๋ค. ์๋ฒ endpoints ๋ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง ๋ง์ด๊ทธ๋ ์ด์ ์คํฌ๋ฆฝํธ์ ๋ํ Swagger(๊ฐ๋ฐฉํ API) ๋ฌธ์์ ์๋ ์์ฑ์ ํตํด ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ต์ ์ํ๋ก ๊ฐ์ํ๋๊ณ ์ฌ์ฉ์ ์ ์ ๊ธฐ๋ฅ ๋๋ฉ์ธ์์ HOC์ ์ด์ ์ ์์ฉํ ์ ์์ต๋๋ค.
๋ฐ์ดํฐ ๋ชจ๋ธ, ๋น์ฆ๋์ค ๋ก์ง, REST API ๋ฐ WSS ์๋ํฌ์ธํธ๋ฅผ ์๊ฐ์ ์ผ๋ก ์์ฑํ๊ธฐ ์ํ ๋น์ฆ๋์ค ํ๋ก์ธ์ค(BP) ๋์์ด๋์ ๊ฐ์ AppMaster ์ no-code ํ๋ซํผ ๊ธฐ๋ฅ์ ์ฌ์ฉ์ ์ ์ ๊ธฐ๋ฅ์์ HOC์ ์ฑ๋ฅ์ ํฌ๊ฒ ๋ณด์ํฉ๋๋ค. ์์ฑ๋ ๋ชจ๋ ์์ค ์ฝ๋๋ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ฉ Go(Golang), ์น ์ ํ๋ฆฌ์ผ์ด์ ์ฉ Vue3, ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ฉ Jetpack Compose ๋๋ SwiftUI ๊ฐ ํฌํจ๋ Kotlin๊ณผ ๊ฐ์ ์ ๊ณ ํ์ค ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ๋ฏ๋ก ๊ฒฐ๊ณผ ์ํํธ์จ์ด๋ ๊ณ ํ์ง์ด๋ฉฐ ํ์ฅ ๊ฐ๋ฅํฉ๋๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก, ๊ณ ์ฐจ ๊ตฌ์ฑ์์๋ ํนํ AppMaster ์ ๊ฐ์ no-code ํ๋ซํผ์ ๋งฅ๋ฝ์์ ์ํํธ์จ์ด ๊ฐ๋ฐ์๋ฅผ ์ํ ์ฌ์ฉ์ ์ ์ ๊ธฐ๋ฅ ์์ญ์์ ๊ท์คํ ๋๊ตฌ์ ๋๋ค. HOC๋ฅผ ๊ธฐ๋ณธ ๋์์ธ ํจํด์ผ๋ก ์ฑํํจ์ผ๋ก์จ ๊ฐ๋ฐ์๋ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ๊ณ , ๋ชจ๋์์ด๋ฉฐ, ์ ์ง ๊ด๋ฆฌ ๊ฐ๋ฅํ ์ฝ๋๋ฅผ ์์ฑํ ์ ์์ผ๋ฉฐ, ์ด๋ ๊ถ๊ทน์ ์ผ๋ก ๋ ๋น ๋ฅธ ๊ฐ๋ฐ๊ณผ ๋น์ฉ ํจ์จ์ ์ธ ์๋ฃจ์ ์ผ๋ก ์ด์ด์ง๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ด ๊ณ์ ๋ฐ์ ํ๊ณ ์ฑ์ฅํจ์ ๋ฐ๋ผ ๊ด๋ฆฌ ๊ฐ๋ฅํ๊ณ ํจ์จ์ ์ธ ์ํํธ์จ์ด๋ฅผ ์ ์งํ๋ ๋ฐ ์์ด HOC์ ํต์ฌ ์ญํ ์ ๊ทธ ์ด๋ ๋๋ณด๋ค ์ค์ํด์ง ๊ฒ์ ๋๋ค.