技術向上

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

2019-01-18から1日間の記事一覧

SQLのデータアクセス

OracleDBやMySQLなどのRDBMSは、どのようにデータにアクセス(SQLをどのように処理するか)するか、いくつか選択肢を持っています。 その中で代表的なのが「全表スキャン」と「索引スキャン」です。 全表スキャンは、SQLで指定された表のすべてのデータにア…

データベース構築とData Oriented Architecture

データベースの設計に焦点を当てます。 データベース構築 データベースを実際に作成してデータを投入する前に、データモデルを作成します。 データモデルの作成には、「ERモデル」を利用することが多いかもしれません。 ERモデルでは、「Entity(実体)」、…

RDBの構成要素

リレーショナルデータベース(RDB)は大きく次の3つから構成されます。 データベース プロセス 共有メモリ データベース データベースは、ディスク領域のOSファイルによって構成されています。 つまり、アクセスするたびにディスクI/Oによるコストがかかりま…

明示的なメソッド群によるパラメータの置き換え【リファクタリング】

状況 パラメータの値によって、異なる処理を実行するメソッドがある 対処 異なるメソッドに分割する ただし、設計後にパラメータの値が変更される可能性が高いのであれば、このリファクタリングが適用されるべきではありません。 メリット メソッドの責務が…

ヌルオブジェクトの導入【リファクタリング】

状況 null値のチェックが繰り返されている 対処 ヌルオブジェクトを作り、null値チェックと置き換える メリット コードがシンプルになり、どこをポリモーフィックにすべきかがわかりやすくなる ヌルオブジェクトは、「特殊ケース」とも捉えることができ、こ…