Golang 패키지 컨벤션

이 글은 Go 블로그의 “Package Names"과 여러 Go 패키지 컨벤션 자료들을 참고하여 작성했습니다. 패키지 컨벤션의 핵심 Go의 패키지 컨벤션은 디렉토리 구조나 아키텍처에 대한 엄격한 규칙을 제시하지는 않는다. 대신 다음과 같은 핵심 원칙들을 제시한다. 1. 책임 중심 패키지 구성 모든 타입을 interface나 model과 같은 하나의 패키지에 넣는 것을 지양한다. 대신 “Organize by responsibility” 원칙에 따라 각 도메인의 책임을 기준으로 패키지를 구성한다. 예를 들어: user 패키지: 사용자 관리 책임 order 패키지: 주문 관리 책임 2. 패키지 경로의 활용 Go는 패키지 경로 자체를 표현 수단으로 활용한다. 이는 여러 Go 공식 패키지에서도 확인할 수 있다: ...

2월 15, 2025 · 1 분 · 155 단어 · In-Jun Hwang

PR(Pull Request) 리뷰 가이드

서론 PR 리뷰는 협업을 위한 필수적인 활동이다. PR 리뷰를 통해 코드 품질을 높이고, 팀원 간의 의사소통을 원활하게 할 수 있다. 이번 포스트에서는 PR 리뷰를 할 때 유의해야 할 사항과 모범 사례에 대해 알아보자. PR 리뷰의 목적 PR 리뷰를 수행하는 주요 목적은 다음과 같다: 코드 품질 향상: 다른 개발자의 시각으로 코드를 검토함으로써 더 나은 코드를 작성할 수 있다. 버그 및 잠재적 문제 조기 발견: 여러 눈으로 코드를 검토하면 작성자가 놓친 문제점을 발견할 수 있다. 지식 공유: 코드 리뷰 과정에서 팀원들은 서로의 지식과 경험을 공유할 수 있다. 일관성 유지: 팀의 코딩 스타일과 규칙을 일관되게 유지할 수 있다. PR 리뷰 시 체크리스트 효과적인 PR 리뷰를 위해 다음 사항들을 체크해야 한다: ...

7월 31, 2024 · 2 분 · 323 단어 · In-Jun Hwang

Git 브랜치 네이밍: 협업을 위한

서론 Git은 현대 소프트웨어 개발의 필수적인 버전 관리 도구이다. 효과적인 Git 사용을 위해서는 체계적인 브랜치 관리가 중요하며, 그중에서도 일관된 브랜치 네이밍 규칙을 따르는 것이 핵심이다. 본 포스트에서는 Git 브랜치 네이밍의 기본 규칙과 모범 사례에 대해 논하고자 한다. 기본 네이밍 규칙 다음은 기본적인 브랜치 네이밍 규칙이다: 소문자 사용: 브랜치 이름은 항상 소문자로 작성한다. 하이픈(-) 사용: 단어 사이는 하이픈으로 구분한다. 간결성: 브랜치 이름은 간결하면서도 의미를 명확히 전달해야 한다. 영문 사용: 가능한 영어로 작성하여 국제적인 협업에 대비한다. 예시: feature-user-authentication ...

7월 23, 2024 · 2 분 · 287 단어 · In-Jun Hwang

효과적인 Git 커밋 관리: 클린 코드를 넘어 클린 히스토리로

서론 버전 관리 시스템, 특히 Git은 현대 소프트웨어 개발에서 필수적인 도구다. 하지만 단순히 Git을 사용하는 것만으로는 충분하지 않다. 효과적인 커밋 관리는 프로젝트의 성공과 팀의 생산성에 큰 영향을 미친다. 이 글에서는 Git 커밋을 더 효과적으로 관리하는 방법에 대해 알아볼 것이다. 특히 단일 책임 원칙 적용, 자주 커밋하기, 그리고 커밋 전 리뷰라는 세 가지 핵심 전략에 초점을 맞출 것이다. 1. 단일 책임 원칙 적용 소프트웨어 설계의 SOLID 원칙 중 하나인 단일 책임 원칙(Single Responsibility Principle)을 Git 커밋에 적용해 보자. ...

7월 13, 2024 · 3 분 · 487 단어 · In-Jun Hwang

효과적인 commit 메시지 작성 규칙

소프트웨어 개발에서 버전 관리는 필수적인 요소다. 그중에서도 커밋 메시지는 프로젝트의 히스토리를 관리하고, 팀 협업을 원활하게 하는 핵심 요소다. 잘 작성된 커밋 메시지는 코드 리뷰를 용이하게 하고, 버그 추적을 쉽게 만들며, 프로젝트의 전반적인 품질을 향상한다. 이 글에서는 효과적인 커밋 메시지 작성을 위한 규칙과 그 중요성에 대해 자세히 알아볼 것이다. 1. 제목과 본문을 분리: 명확한 정보 전달 커밋 메시지는 제목과 본문으로 구분하여 작성한다. 이는 빠른 개요 파악과 필요시 상세 정보 확인을 가능하게 한다. ...

7월 12, 2024 · 3 분 · 564 단어 · In-Jun Hwang