Blog

プロダクト開発でsqlcを採用した話技術
#Go#設計
2024-08-15

プロダクト開発でsqlcを採用した話

toB向けの0->1のGoのバックエンドAPI開発でsqlcを採用し、約1年半運用した経験を元に、採用理由、メリット(SQL中心の開発、活発な開発状況)、デメリット(メソッドの命名規則、テンプレート機能の欠如、バージョンアップ時の課題)、そして導入時の検討ポイントについて解説します。

トランザクションを考慮した実装について考える技術
#設計#Go
2023-07-01

トランザクションを考慮した実装について考える

アプリケーションレイヤーでトランザクションを考慮した実装について、DDD+オニオンアーキテクチャ+Repositoryパターンの観点から、Usecase層でのトランザクション管理やアンチパターンについて考察します。

GCP Cloud Load Balancingでエンドポイントごとのカナリアリリースをする技術メモ
#Google Cloud#CI/CD
2023-04-21

GCP Cloud Load Balancingでエンドポイントごとのカナリアリリースをする

GCP Cloud Load Balancingを利用して、Cloud Run上で動作するアプリケーションのエンドポイントごとにカナリアリリースを行う方法について解説します。

社内のプロダクト開発でコメントを書くときの考え方技術
#設計
2022-08-21

社内のプロダクト開発でコメントを書くときの考え方

社内プロダクト開発におけるコメントの書き方について、その目的、メリット・デメリット、具体的な記述例、そして避けるべきケースについて考察します。

ファーストクラスコレクション技術
#設計
2022-03-13

ファーストクラスコレクション

ファーストクラスコレクションの定義、メリット・デメリット、そしてGo言語での実装例について解説します。

スタンプ結合技術
#設計
2022-03-06

スタンプ結合

ソフトウェア設計におけるモジュールの結合度の一つである「スタンプ結合」について解説。複合設計の背景、モジュールの定義、結合度の階級(内容結合、共通結合、外部結合、制御結合、スタンプ結合、データ結合、非直接結合)をGoのコード例を交えて説明し、可読性向上への考慮を述べます。

GoのNamed return valueについてメリデメを考える技術
#Go#設計
2022-02-20

GoのNamed return valueについてメリデメを考える

GoのNamed return valueについて、そのメリットとデメリット、そして個人的な判断基準について考察します。