๐บ BEER:AiR
๋น์ด์์ด๋ฅผ ์ด์ฉํด์ ๋๋ง์ ๋งฅ์ฃผ๋๊ฐ์ ๋ง๋ค์ด๋ณด์ธ์!
๊ทธ ๋ ๋ง์
จ๋ ๋ง์๋ ๋งฅ์ฃผ๊ฐ ๋ญ์์ง?๐ค
๋๋ ํธ์์ ๋งฅ์ฃผ ์ง์ด๋ ์์์ ๊ณ ๋ฏผํ์ง ๋ง์ธ์.
๋น์ด์์ด์ ํจ๊ป ์ธ๊ณ์ฌํ
--
Git์์ ์์๋ผ์ ์๋ฒ ๋ฐฐํฌ๊น์ง Git์ผ๋ก ๋๋๋ GitOps ํจํด์ผ๋ก ํ์ดํ๋ผ์ธ์ ๊ตฌํํ์ต๋๋ค. feature ๋ธ๋์น๊ฐ merge๋์ด prod(์ด์์๋ฒ), dev(๊ฐ๋ฐ์๋ฒ) ๋ธ๋์น์ ๋ฐ์๋ ๋๋ง ํธ๋ฆฌ๊ฑฐ ๋ฐ์ํ์ฌ ๊ฐ ํ๊ฒฝ์ ๋ง๊ฒ ๋ฐฐํฌ๊ฐ ์งํ๋ฉ๋๋ค.
์ด๋ฏธ์ง ํ๊น ์ ์ฑ ์ pr ๋ฒํธ๋ก, ๋ฐฐํฌ ์ฑ๊ณต์ ์ฌ๋ ์๋์๋ ์ด๋ค ์ด๋ฏธ์ง๊ฐ ๋ฐฐํฌ๋์๋์ง ํ์ธํ ์ ์์ต๋๋ค. ์ฌ๋ ๋ฉ์ธ์ง๋ฅผ ํตํด ๋ฐฐํฌ ์ด๋ ฅ์ ๊ด๋ฆฌํ ์ ์์ด์ ์ฅ์ ์์๋ ๋นํฉํ์ง ์๊ณ ๊ฐ๋จํ๊ฒ ์ ํ๋ฆฌ์ผ์ด์ ๋กค๋ฐฑ์ ํ ์ ์์ต๋๋ค.
๊ด๋ฆฌ ํฌ์ธํธ๋ฅผ ์ค์ด๊ธฐ ์ํด Github Action์ผ๋ก๋ง ํ์ดํ๋ผ์ธ์ ๊ตฌ์ถํ์ด์. ๊ทธ๋งํผ ํธ์คํ ์๋ฒ์ ๋ถํ๋ฅผ ์ค์ด๊ธฐ ์ํด ๋์ปค ์คํ ์ด์ง ๋น๋, ๋์ปค ์บ์ฑ ๋ฑ์ ์ฌ์ฉํ์์ต๋๋ค.
๋ ์์ธํ ๋ด์ฉ์ด ๊ถ๊ธํ์๋ค๋ฉด ๋งฅ์ฃผ ํ ์บ๊ณผ ํจ๊ป ํ์ดํ๋ผ์ธ์ ์ฌํํด๋ด ์๋ค. ํ์ดํ๋ผ์ธ์ ์ฌํํ๋ ๊ฐ๋ฐ์๋ฅผ ์ํ ์๋ด์
๊นํํธ | ๋ฅ์ฐฌ | ๊น๋ฏผ์ | ๊น์์ |
- Wiki๋ก ์ฎ๊ธด ๋ค์ ๋งํฌ ๋ฌ๊ฒ์ฅ
๐ปCommit Convertion
์ปค๋ฐ ๋ฉ์์ง๋ title, body, footer ๋ก ๊ตฌ๋ถํ๋ค
type: Subject
body
footer
์ ๋ชฉ์ ๋ฉ์์ง์ ์ ํ๊ณผ ์ ๋ชฉ์ผ๋ก ๊ตฌ์ฑํ๋ค
์ ํ์ ์ ๋ชฉ์ ํฌํจ๋๋ฉฐ ๋ค์ ์ ํ์ผ๋ก ๊ตฌ์ฑํ๋ค
feat
: ์๋ก์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํ ๊ฒฝ์ฐ
fix
: ๋ฒ๊ทธ๋ฅผ ํฌํจํ ๋ค์ ๊ธํ ์์ ์ด ์์ ๊ฒฝ์ฐ
docs
: ๋ฌธ์ ๋ณ๊ฒฝ ์ฌํญ์ด ์์ ๊ฒฝ์ฐ
style
: ์ฝ๋ ํฌ๋งท ๋ณ๊ฒฝ, ์ธ๋ฏธ์ฝ๋ก ๋๋ฝ ๋ฑ ์ฝ๋์ ๋ณ๊ฒฝ์ด ์๋ ๊ฒฝ์ฐ
refactor
: ์๋ก์ด ๊ธฐ๋ฅ์ด๋ ๋ฒ๊ทธ ์์ ์์ด ๊ธฐ์กด production ์ฝ๋ ๋ฆฌํฉํ ๋ง์ ํ๋ ๊ฒฝ์ฐ
test
: ํ
์คํธ ์ถ๊ฐ, ํ
์คํธ ์ฝ๋ ๋ฆฌํฉํ ๋ง, production ์ฝ๋์ ๋ณ๊ฒฝ์ด ์๋ ๊ฒฝ์ฐ
chore
: ๋น๋ ์์
, ํจํค์ง ๊ตฌ์ฑ ๋ฑ production ์ฝ๋์ ๋ณ๊ฒฝ์ด ์๋ ๊ฒฝ์ฐ
rename
: ํ์ผ ํน์ ํด๋๋ช
์ ์์ ํ๊ฑฐ๋ ์ฎ๊ธฐ๋ ์์
๋ง ์งํํ
remove
: ํ์ผ ์ญ์ ์์
๋ง์ ์ํํ ๊ฒฝ์ฐ
์ ๋ชฉ์ 50์ ์ดํ๋ก ์ ํํ๊ณ ๋ง์นจํ๋ก ๋๋์ง ์์์ผ ํฉ๋๋ค. ์ปค๋ฐ์ด ๋ฌด์์ ํ๋์ง๋ณด๋ค๋ ๋ช ๋ นํ์ ์ฌ์ฉํ์ฌ ์ปค๋ฐ์ด ํ๋ ์ผ์ ์ค๋ช ํ๋ฉด ๋ฉ๋๋ค
์ ๋ชฉ์ ์ฒซ ๊ธ์๋ ๋๋ฌธ์๋ก ํฉ๋๋ค
-
๊น๋ชจ์ง ์ข ๋ฅ
์์ด์ฝ ์ฝ๋ ์ค๋ช ๐จ ๐จ ์ฝ๋์ ๊ตฌ์กฐ/ํ์์ ๊ฐ์ ํฉ๋๋ค. โก๏ธ โก ์ฑ๋ฅ์ ๊ฐ์ ํฉ๋๋ค. ๐ฅ ๐ฅ ์ฝ๋ ๋๋ ํ์ผ์ ์ ๊ฑฐํฉ๋๋ค. ๐ ๐ ๋ฒ๊ทธ๋ฅผ ์์ ํฉ๋๋ค. ๐๏ธ ๐ ์ค์ํ ํซํฝ์ค. โจ โจ ์๋ก์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํฉ๋๋ค. ๐ ๐ ๋ฌธ์๋ฅผ ์ถ๊ฐํ๊ฑฐ๋ ์ ๋ฐ์ดํธํฉ๋๋ค. ๐ ๐ UI ๋ฐ ์คํ์ผ ํ์ผ์ ์ถ๊ฐํ๊ฑฐ๋ ์ ๋ฐ์ดํธํฉ๋๋ค. ๐ ๐ ํ๋ก์ ํธ๋ฅผ ์์ํฉ๋๋ค. โ โ ํ ์คํธ๋ฅผ ์ถ๊ฐ, ์ ๋ฐ์ดํธ ๋๋ ํต๊ณผํฉ๋๋ค. ๐๏ธ ๐ ๋ณด์ ๋ฌธ์ ๋ฅผ ์์ ํฉ๋๋ค. ๐ ๐ ๋ณด์์ ์ถ๊ฐํ๊ฑฐ๋ ์ ๋ฐ์ดํธํฉ๋๋ค. ๐ ๐ ๋ฆด๋ฆฌ์ค/๋ฒ์ ํ๊ทธ. โ๏ธ โ๏ธ ์คํ๋ฅผ ์์ ํฉ๋๋ค. ๐จ ๐จ ๊ฐ๋ฐ ์คํฌ๋ฆฝํธ๋ฅผ ์ถ๊ฐํ๊ฑฐ๋ ์ ๋ฐ์ดํธํฉ๋๋ค. ๐ง ๐ง ๊ตฌ์ฑ ํ์ผ์ ์ถ๊ฐํ๊ฑฐ๋ ์ ๋ฐ์ดํธํฉ๋๋ค. ๐ฉ ๐ฉ ๊ฐ์ ํด์ผ ํ ๋์ ์ฝ๋๋ฅผ ์์ฑํ์ญ์์ค. ๐ฆ๏ธ ๐ฆ ์ปดํ์ผ๋ ํ์ผ ๋๋ ํจํค์ง๋ฅผ ์ถ๊ฐํ๊ฑฐ๋ ์ ๋ฐ์ดํธํฉ๋๋ค. ๐ ๐ ๋ก๊ทธ๋ฅผ ์ถ๊ฐํ๊ฑฐ๋ ์ ๋ฐ์ดํธํฉ๋๋ค. โช๏ธ โช ๋ณ๊ฒฝ ์ฌํญ์ ๋๋๋ฆฝ๋๋ค. ๐ ๐ ๋ถ๊ธฐ๋ฅผ ๋ณํฉํฉ๋๋ค.
๋ด์ฉ์ ์ ํ ์ฌํญ์ด๋ฉฐ ์ปค๋ฐ์ ์ค๋ช ์ด ํ์ํ ๊ฒฝ์ฐ ์์ฑํฉ๋๋ค. ์ด๋ป๊ฒ๊ฐ ์๋๋ผ ๋ฌด์์, ์ ์ปค๋ฐํ๋์ง ์์ฑํ๋ฉด ๋ฉ๋๋ค. ๋ด์ฉ์ ์์ฑํ ๋ ์ ๋ชฉ๊ณผ ๋ด์ฉ ์ฌ์ด์๋ ๋น ์ค์ด ์์ด์ผ ํ๋ฉฐ ๋ด์ฉ์ ๊ธธ์ด๋ 72์ ์ด๋ด๋ก ์ ํํฉ๋๋ค
- ํ ์ค๋น 72์ ๋ด๋ก ์์ฑํ๊ณ , ๋ณธ๋ฌธ ๋ด์ฉ์ ์์ ๊ตฌ์ ๋ฐ์ง ์๊ณ ์ต๋ํ ์์ธํ ์์ฑํฉ๋๋ค. ์ด๋ป๊ฒx ๋ฌด์์, ์ ๋ณ๊ฒฝํ๋์ง ์์ฃผ๋ก ์ค๋ช ํฉ๋๋ค.
๋ฐ๋ฅ๊ธ์ ์ ํ ์ฌํญ์ด๋ฉฐ issue tracker ID๋ฅผ ์ฐธ์กฐํ๋๋ฐ ์ฌ์ฉ๋ฉ๋๋ค
ex ) issue : #51
Udacity Nanodegree Style Guide
๐ปCode Convention
- ํด๋์ค์ ์ด๋ฆ์ ๋ช
์ฌ์ด์ด์ผ ํ๋ฉฐ, ๊ฐ ๋จ์ด์ ์ฒซ ๊ธ์๋
๋๋ฌธ์
๋ก ์์ํฉ๋๋ค. - ์์ ํ ๋จ์ด๋ฅผ ์ฌ์ฉํ๊ณ ์ฝ์ด๋ ์ง์ํฉ๋๋ค.
- ๋ฉ์๋์ ์ด๋ฆ์ ๋์ฌ์ด์ด์ผ ํ๋ฉฐ,
camelCase
ํ๊ธฐ๋ฒ์ ์ค์ํฉ๋๋ค. - ๋ฐํํ์ด
boolean
์ผ ๊ฒฝ์ฐ ๋ฉ์๋์ ์ด๋ฆ์ ์์์is-
๋ก ํต์ผํฉ๋๋ค.
- ๋ณ์์ ์ด๋ฆ์
camelCase
ํ๊ธฐ๋ฒ์ ์ค์ํฉ๋๋ค. - ์์ ํ ๋จ์ด๋ฅผ ์ฌ์ฉํ๊ณ ์ฝ์ด๋ ์ง์ํฉ๋๋ค.
- ๋ณ์์ ์ด๋ฆ์
์ฌ์ฉ ์๋๋ฅผ ์์๋ผ ์ ์๋๋ก ์๋ฏธ์
์ผ๋ก ์์ฑํฉ๋๋ค.
- ์์๋ ๋๋ฌธ์๋ก ์์ฑํ๊ณ , ๊ฐ๊ฐ์ ๋จ์ด๋
_
๋ก ๊ตฌ๋ถํฉ๋๋ค. - ์ฐ๊ด๋ ์์๋ค์ ์งํฉ์ด ์๋ค๋ฉด
Enum Class
๋ก ๊ด๋ฆฌํฉ๋๋ค.
๊ฐ์ฒด & ๋ณ์
์ ์ด๊ธฐํ๋ ํด๋์ค์ ๋ฉ์๋์ ์์์ ์์นํฉ๋๋ค.
์ฃผ์์ผ๋ก ์๋๋ฅผ ํํํ๋ ๊ฒ๋ณด๋ค ์ฝ๋๋ก ์๋๋ฅผ ํํํ๋ ๊ฒ์ ์งํฅํฉ๋๋ค
์์ผ๋ก ํ ์ผ
๋๋๋น์ฅ ๊ตฌํํ๊ธฐ ์ด๋ ค์ด ์ ๋ฌด
๋ฅผ ์์ฑํฉ๋๋ค.- TODO ์ฃผ์์ Intellij ํ๋จ ๋ฉ๋ด์
TODO
ํญ์ ์ง์์ ์ผ๋ก ํ์ธํ๊ณ , ์ ๊ฒํฉ๋๋ค
์ด์ธ ์ฝ๋ ์ปจ๋ฒค์
์ intellij-java-google-style
์ ์ค์ํ๊ณ ์์ต๋๋ค.
๐ปAgile strategy
๋ํ๋ง 11๊ธฐ์์ ์ ํฌ ํ์ Notion์ ํ์ฉํ์ฌ ํ์ ์ ์งํํ์์ต๋๋ค. ๋จผ์ ๊ฐ ๋ฐฑ์๋, ์ธํ๋ผ, ํ๋ก ํธ์๋, ๊ทธ๋ฆฌ๊ณ ๋์์ธ ํ ๊ฐ ์ํต์ ์ํ ํ ํ๊ธฐ ์ํด Kanban์ ์ฌ์ฉํ์์ต๋๋ค.
Kanban์ ๊ฐ ํํธ๋ณ๋ก ์์ ์ , ์งํ ์ค, ์๋ฃ ์ํ๋ก ๋๋์ด ๋ณด์ฌ์ฃผ๊ณ ํด๋นํ๋ ์ด์์ ๋ํด ๊ด๋ฆฌ์๋ฅผ ํ ๋นํ๊ธฐ ๋๋ฌธ์ ๋๊ฐ ์ด๋ค ์ด์๋ฅผ ๋จ๊ฒผ๋์ง, ์ด๋ค ์ํ๋ฅผ ์ฒ๋ฆฌ์ค์ธ์ง ์ฝ๊ฒ ์ ์ ์์ด ๋ณด๋ค ํธ๋ฆฌํ๊ณ ์์ฐ์ฑ ๋์ ํ์ ์ ์งํํ๋๋ก ๋์์ค๋๋ค.
๊ทธ๋ฆฌ๊ณ ํด๋นํ๋ ์ด์์ ๋ํด Github์์ Issue๋ฅผ ์์ฑํ๊ณ , feachers/~~
๋ฑ ์ญํ ์ ๋ง๋ ๋ธ๋์น๋ฅผ ๋ง๋ค์ด Pull Request๋ฅผ ์งํํ์์ต๋๋ค.
๊ฐ๊ฐ์ PR์ ๋ํด Code review๋ฅผ ์งํํ์๊ณ , 2๋ช ์ด์์ Approve๋ฅผ ๋ฐ์ ํ์ merge๊ฐ ๊ฐ๋ฅํ๋๋ก ํ์์ต๋๋ค.