技術向上

プログラミングの学び、気になるテクノロジーやビジネストレンドを発信

2018-12-14から1日間の記事一覧

APIを扱うメソッド・関数の返り値【Go】

Go

APIを扱うメソッド・関数の返り値について、 structの場合はポインタ渡し、 スライスの場合は値渡しとすることが一般的です。 スライスは配列に対するエイリアスですので、ポインタとする必要性がなく、 structの場合は、コピーが作成されてしまうので ポイ…

時間の切り捨て【Go】

Go

Time.Truncate(d duration)を使って、表示時間の切り捨てを行います。 fmt.Println(time.Now().Truncate(time.Minute)) // 2018-12-14 11:34:00 +0900 JST durationに指定した期間より後の内容は切り捨てられます。

JSONからstructに変換するツール【Go】

Go

便利なサイトです。 JSONのエンコーディングも付記されます。 JSON-to-Go: Convert JSON to Go instantly

ポリモーフィズムによる条件記述の置き換え【リファクタリング】

状況 オブジェクトのタイプによって異なる振る舞いを選択する条件記述がある タイプコードに対して必要な継承構造が用意されていることが前提。つまり「サブクラスによるタイプコードの置き換え」もしくは「Stateによるタイプコードの置き換え」が適用されて…

Stateによるタイプコードの置き換え【リファクタリング】

状況 クラスの振る舞いに影響するタイプコードがあるが、サブクラス化はできない if文やcase文を削減する「ポリモーフィズムによる条件記述の置き換え」を適用するための土台づくりに使われます。 土台づくりには他に「サブクラスによるタイプコードの置き換…