by shigemk2

当面は技術的なことしか書かない

4.5 基盤となるコンポーネント #read_aosa

BerkeleyDBの話。

4つのサブシステム

  • バッファマネージャ
  • ロックマネージャ
  • ログマネージャ
  • トランザクションマネージャ

すべて自前のAPIを有する 独立して使うこともできるが、共通のオブジェクトハンドルであるenvironmentハンドルを共有するようになった 共有メモリをサポート

ハンドル

http://d.hatena.ne.jp/maeyan/20091227/1261848549

ハンドルとは、各アプリやその中で使われているオブジェクト等に対し起動時に割り振られる数字のことです。一意な数字であり、アプリごとにハンドルがツリー構造をとって親子関係でつながっています

設計講座6

ライブラリを設計するときは名前空間を利用することが肝要

設計講座7

  1. 複数回登場する機能があるなら共有関数を作る
  2. 汎用目的のルーチンを開発するときはそのルーチン用のテストを書く
  3. 書くのが難しいコードは個別に書いて保守する