設計

バッチ処理を作るときに考えていること

バッチ処理を作る必要があるときに、考えているようなことをまとめておく。 はじめに バッチは機能の実現方式であって、機能そのものではないと思っている。 なので、バッチ処理は単独で考えるものではないというのが前提。 とはいえバッチという手段を選ん…

データベースのPRIMARY KEYを自動採番せずにアプリケーション側で生成する

データベースの自動採番 データベースにはPRIMARY KEY(要はID)を自動採番で生成してくれる機能を提供していることが多い。 MySQLのAuto Increment PostgreSQLのSerial OracleのSequence etc サロゲートキーのような、特に意味のないデータのIDを発行するとき…

ORマッパーへの違和感が少し晴れた気がする

前からあった違和感 (リレーショナル)データベースのモデリングとドメインのモデリングは違うっていうのを前から思っていて、それからDBとドメインのオブジェクトをそのまま結びつけるようなORマッパーにはずっと違和感を覚えていたのだ。 だからMyBatisみ…

引数にオブジェクトを渡すか、個別に渡すか

メソッドを作成するときに、引数の数が増えてくるとどう対応したものかよく迷う。 と思ったらコードコンプリートに答えが書いてあった。 「第二部 7.5 ルーチンの引数の使用」あたりでの僕の理解。 2つの意見がある 個別に渡して結びつきを最小限に抑える オ…