JokerTrickster / frog_mahjong_game

board game project
1 stars 0 forks source link

[Feature] go gen 을 통해서 스키마 관리 #143

Open JokerTrickster opened 2 months ago

JokerTrickster commented 2 months ago

새로운 기능

Tasks

JokerTrickster commented 2 months ago

gorm gen 사용 이유

  1. 자동 코드 생성 -> 디비 스키마를 기반으로 Go 코드 구조체를 자동으로 생성한다. 이를 통해 데이터베이스 테이블과 일치하는 구조체를 수동으로 작성할 필요가 없어지며, 코드의 일관성을 유지할 수 있다.

    개발자가 수동으로 관리하게 되는 순간 문제가 발생하기 때문에 이부분이 상당히 큼

  2. 타입 안전성 자동 생성된 코드 구조체는 데이터베이스의 컬럼 타입과 일차하기 때문에 타입 안전성을 보장할 수 있다. 이는 런타임 오류를 줄이고 컴파일 탕미에 타입 오류를 잡을 수 있게 해준다.

  3. 쿼리 빌더 쿼리 빌더 기능을 제공하여 복잡한 쿼리를 더 쉽게 작성할 수 있게 한다. 이는 개발자가 직접 SQL을 작성하지 않고도 다양한 데이터 베이스 작업을 수행할 수 있도록 도와준다.

  4. 테스트 편의성 데이터베이스와의 인터랙션이 명확하게 정의되기 때문에 , 모킹과 같은 테스트 작업을 더 쉽게 수행할 수 있다.

사용 방법

pkg : gen cli : go run gen.go

setDefault에 사용하고자 하는 db 매개변수로 전달하고 사용