πŸ“ Computer Science/✏

    [Git] Git README, .gitignore 파일

    [Git] Git README, .gitignore 파일

    Git Repositoriesλ₯Ό λ§Œλ“€ λ•Œ, README 파일과 .gitignore νŒŒμΌμ„ 생성할 수 μžˆλ‹€. README 파일 README νŒŒμΌμ€ ν”„λ‘œμ νŠΈμ™€ 리포지토리λ₯Ό μ„€λͺ…ν•˜λŠ” μ±…μ˜ ν‘œμ§€μ™€ 같은 λ¬Έμ„œμ΄λ‹€. ν”„λ‘œμ νŠΈ μ†Œκ°œ, μ‚¬μš©ν•œ 기술, ν™œμš© 방법 등을 κΈ°λ‘ν•œλ‹€. 파일의 ν™•μž₯μžλŠ” md둜 λ§ˆν¬λ‹€μš΄(Markdown)의 μ•½μžμ΄λ‹€. https://coding-factory.tistory.com/620 [Git] GitHub README μž‘μ„±λ²• (λ§ˆν¬λ‹€μš΄, 이미지, Gif, μ½”λ“œ 블둝 μ‚¬μš©λ²•) λ¦¬λ“œλ―Έ(README)λž€? READMEλŠ” μ‰½κ²Œ λ§ν•΄μ„œ ν”„λ‘œμ νŠΈ μ†Œκ°œκΈ€μ΄λΌκ³  ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 일반적으둜 λ””λ ‰ν† λ¦¬λ‚˜ μ••μΆ• νŒŒμΌμ— ν¬ν•¨λœ 기타 νŒŒμΌμ— λŒ€ν•œ 정보λ₯Ό ν¬ν•¨ν•˜κ³  있으며, 일반적으둜 μ†Œν”„νŠΈμ›¨μ–΄μ™€ coding-factory..

    λͺ¨λ“ˆκ³Ό μ»΄ν¬λ„ŒνŠΈ

    λͺ¨λ“ˆκ³Ό μ»΄ν¬λ„ŒνŠΈ κ³΅λΆ€ν•˜λ‹€ 보면 μž¬μ‚¬μš©μ„±μ΄λΌλŠ” 단어와 ν•¨κ»˜ λͺ¨λ“ˆκ³Ό μ»΄ν¬λ„ŒνŠΈλΌλŠ” 단어가 κ³΅κ³΅μ—°ν•˜κ²Œ λ“±μž₯ν•œλ‹€. λ‘˜ λ‹€ μ–΄λ– ν•œ ꡬ쑰와 κΈ°λŠ₯의 μ΅œμ†Œ λ‹¨μœ„μ™€ μœ μ‚¬ν•œ κ°œλ…μœΌλ‘œ μ •μ˜λ˜κ³  μžˆκΈ°μ— 이 λ‘˜μ„ ν˜Όμš©ν•˜λŠ” κ²½μš°κ°€ μž¦λ‹€. ν•˜μ§€λ§Œ 이 λ‘˜μ€ λͺ…ν™•ν•˜κ²Œ λ‹€λ₯Έ 의미λ₯Ό μ§€λ‹ˆκ³  μžˆλ‹€. μ„œλ²„-ν΄λΌμ΄μ–ΈνŠΈ κ΅¬μ‘°μ—μ„œ μ„œλ²„ 1κ°œμ™€ ν΄λΌμ΄μ–ΈνŠΈ 100κ°œκ°€ μžˆλ‹€λ©΄ λͺ¨λ“ˆμ€ μ„œλ²„ 1개, ν΄λΌμ΄μ–ΈνŠΈ 1개, 총 2개 μ»΄ν¬λ„ŒνŠΈλŠ” μ„œλ²„ 1개, ν΄λΌμ΄μ–ΈνŠΈ 100개, 총 101개 1. λͺ¨λ“ˆ(Module) κ°€μž₯ μƒμœ„μ— μœ„μΉ˜ν•˜λŠ” κ΅¬ν˜„μ˜ λ‹¨μœ„ λ§Œλ“€μ–΄μ§„ μ‚°μΆœλ¬Όμ˜ κ΅¬ν˜„ λ‹¨μœ„μ΄λ‹€. λΉ„μŠ·ν•˜κ±°λ‚˜ μ—°κ΄€μ„± μžˆλŠ” κ²ƒλ“€λ‘œ 이루어진 λ©”μ„œλ“œλ‚˜ 클래슀의 집합이닀. 2. μ»΄ν¬λ„ŒνŠΈ(Component) λŸ°νƒ€μž„ 개체λ₯Ό μ°Έμ‘°ν•˜λŠ” λ‹¨μœ„ μ‹€ν–‰ 쀑인 μ†Œν”„νŠΈμ›¨μ–΄μ˜ ν™œλ™ λ‹¨μœ„μ΄λ‹€.

    ν”„λ ˆμž„μ›Œν¬μ™€ 라이브러리

    ν”„λ ˆμž„μ›Œν¬μ™€ 라이브러리

    ν”„λ ˆμž„μ›Œν¬μ™€ 라이브러리 1. ν”„λ ˆμž„μ›Œν¬(Framework) ν”„λ ˆμž„μ›Œν¬λž€ μ†Œν”„νŠΈμ›¨μ–΄μ˜ ꡬ체적인 뢀뢄에 ν•΄λ‹Ήν•˜λŠ” 섀계와 κ΅¬ν˜„μ„ μž¬μ‚¬μš©μ΄ κ°€λŠ₯ν•˜κ²Œλ” 일련의 ν˜‘μ—…ν™”λœ ν˜•νƒœλ‘œ ν΄λž˜μŠ€λ“€μ„ μ œκ³΅ν•˜λŠ” 것이닀. λΌˆλŒ€λ‚˜ 기반 ꡬ쑰λ₯Ό λœ»ν•œλ‹€. ν”„λ‘œκ·Έλž˜λ°μ„ 진행할 λ•Œ ν•„μˆ˜μ μΈ μ½”λ“œ, μ•Œκ³ λ¦¬μ¦˜ λ“±κ³Ό 같이 μ–΄λŠ μ •λ„μ˜ ꡬ쑰λ₯Ό μ œκ³΅ν•΄μ£ΌκΈ° λ•Œλ¬Έμ— ν”„λ ˆμž„μ›Œν¬λ₯Ό μ‚¬μš©ν•˜λŠ” ν”„λ‘œκ·Έλž˜λ¨ΈλŠ” 이 ν”„λ ˆμž„μ›Œν¬μ˜ λΌˆλŒ€ μœ„μ—μ„œ μ½”λ“œλ₯Ό μž‘μ„±ν•˜μ—¬ ν”„λ‘œκ·Έλž¨μ„ κ°œλ°œν•  수 μžˆλ‹€. 즉, μ™„μ„±λœ μ œν’ˆμ΄ μ•„λ‹Œ μ™„μ„±λœ μ œν’ˆμ„ λ§Œλ“€κΈ° μœ„ν•΄μ„œ 개발자λ₯Ό λ„μ™€μ£ΌλŠ” λ˜λŠ” 기반이 λ˜λŠ” 역할을 ν•©λ‹ˆλ‹€. 2. 라이브러리(Library) λΌμ΄λΈŒλŸ¬λ¦¬λž€ 자주 μ‚¬μš©λ˜λŠ” λ‘œμ§μ„ μž¬μ‚¬μš©ν•˜κΈ° νŽΈλ¦¬ν•˜λ„λ‘ 잘 μ •λ¦¬ν•œ 일련의 μ½”λ“œλ“€μ˜ 집합이닀. 즉, ν”„λ‘œκ·Έλž˜λ¨Έκ°€ μ–΄λ– ν•œ κΈ°λŠ₯을 μˆ˜ν–‰ν•˜κΈ° μœ„ν•΄μ„œ 도움을..

    [Git] Git Flow

    [Git] Git Flow

    Git Git은 μ„œλ²„λ₯Ό λΆ„μ‚°μ‹œμΌœ ꡬ좕할 수 있게 ν•˜λŠ” μ†Œν”„νŠΈμ›¨μ–΄λ‘œ 지역 μ €μž₯μ†Œλ₯Ό λ§Œλ“€κ³  파일, μ½”λ“œ 등을 κ΄€λ¦¬ν•˜λŠ” μž‘μ—…μ„ ν•œλ‹€. GitHubλŠ” Git으둜 κ΄€λ¦¬ν•˜λŠ” 자료λ₯Ό λ‹€λ₯Έ μ‚¬λžŒκ³Ό κ³΅μœ ν•˜κ±°λ‚˜ λ°±μ—…ν•  수 μžˆλŠ” μ›Ή μ‚¬μ΄νŠΈμ΄λ‹€. Git Flow κΈ°λ³Έ λΈŒλžœμΉ˜λŠ” 5가지λ₯Ό μ΄μ•ΌκΈ°ν•œλ‹€. feature > develop > release > hotfix > master λΈŒλžœμΉ˜κ°€ μ‘΄μž¬ν•˜λ©° 머지 μˆœμ„œλŠ” μ•žμ—μ„œ λ’€λ‘œ μ§„ν–‰λœλ‹€. release λΈŒλžœμΉ˜μ™€ hotfix 브랜치의 경우, develop 브랜치의 였λ₯Έμͺ½μ— μ‘΄μž¬ν•˜κΈ°μ— λͺ¨λ‘ develop λΈŒλžœμΉ˜λ„ 머지λ₯Ό ν•˜λ„λ‘ ꡬ성이 λ˜μ–΄μžˆλ‹€. 1) Master Branch μ œν’ˆμœΌλ‘œ μΆœμ‹œλ  수 μžˆλŠ” 브랜치둜 배포(Release) 이λ ₯을 κ΄€λ¦¬ν•˜κΈ° μœ„ν•΄ μ‚¬μš©. 즉, 배포 κ°€λŠ₯ν•œ μƒνƒœλ§Œμ„ κ΄€..

    TDD(Test Driven Development)

    TDD(Test Driven Development)

    TDD(Test Driven Development) ν…ŒμŠ€νŠΈκ°€ κ°œλ°œμ„ μ΄λŒμ–΄ λ‚˜κ°„λ‹€. 반볡적인 ν…ŒμŠ€νŠΈμ™€ μˆ˜μ •μ„ 톡해 κ³ ν’ˆμ§ˆμ˜ μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό νƒ„μƒμ‹œν‚¬ 수 μžˆλ‹€. κ°œλ°œμžλŠ” μš”κ΅¬λ˜λŠ” μƒˆλ‘œμš΄ κΈ°λŠ₯에 λŒ€ν•œ μžλ™ν™”λœ ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€λ₯Ό μž‘μ„±ν•˜κ³  ν•΄λ‹Ή ν…ŒμŠ€νŠΈλ₯Ό ν†΅κ³Όν•˜λŠ” κ°€μž₯ κ°„λ‹¨ν•œ μ½”λ“œλ₯Ό μž‘μ„±ν•œλ‹€. 일단 ν…ŒμŠ€νŠΈ ν†΅κ³Όν•˜λŠ” μ½”λ“œλ₯Ό μž‘μ„±ν•˜κ³  상황에 맞게 λ¦¬νŒ©ν† λ§ν•˜λŠ” 과정을 κ±°μΉœλ‹€. μž₯점 μž‘μ—…κ³Ό λ™μ‹œμ— ν…ŒμŠ€νŠΈλ₯Ό μ§„ν–‰ν•˜λ©΄μ„œ μ‹€μ‹œκ°„μœΌλ‘œ 였λ₯˜ νŒŒμ•…μ΄ κ°€λŠ₯ν•˜λ‹€. 짧은 개발 μ£ΌκΈ°λ₯Ό 톡해 고객의 μš”κ΅¬μ‚¬ν•­ λΉ λ₯΄κ²Œ 수용, ν”Όλ“œλ°±μ΄ κ°€λŠ₯ν•˜κ³  진행 상황 νŒŒμ•…μ΄ 쉽닀. μžλ™ν™” 도ꡬλ₯Ό μ΄μš©ν•œ TDD ν…ŒμŠ€νŠΈμΌ€μ΄μŠ€λ₯Ό λ‹¨μœ„ ν…ŒμŠ€νŠΈλ‘œ μ‚¬μš©μ΄ κ°€λŠ₯ν•˜λ‹€. 단점 κΈ°μ‘΄ 개발 ν”„λ‘œμ„ΈμŠ€μ— ν…ŒμŠ€νŠΈμΌ€μ΄μŠ€ 섀계가 μΆ”κ°€λ˜λ―€λ‘œ 생산 λΉ„μš©μ΄ μ¦κ°€ν•œλ‹€. ν…ŒμŠ€νŠΈμ˜ λ°©ν–₯μ„±, ν”„λ‘œμ νŠΈ ..