DataMapper 0.10.2 Reading (その 1: パッケージ)

今回から 0.10.2 のコードへ突入.
その前に,0.9.11 のコードを読み進めたときの反省点.

  1. 全体像の把握をきちんとしていなかった
    • 気づいたら深さ優先になってた
  2. 図がない!
    • 自分で読み返してもわかりづらい!

と,いうわけで,気をつけろよ!>自分

パッケージ

  • dm-core
    • コアパッケージ.DataMapper の基本的な機能が含まれる.DataMapper::Resource とかはここに入ってる.
  • do
    • Database Driver 集.DataObjects モジュールとして interface が定義されている.do_mysql や do_sqlite3 等はここに含まれている.
  • dm-more
    • DataMapper の拡張機能とか,その他いろいろ含まれている.dm-aggregates とか dm-validations はここに入ってる.Rails 上で DataMapper 使うためのパッケージもここ.あ,なんか "dm-rest-adapter" ってのもあるみたい.(以下引用)
Extra, non-essential parts for DataMapper
Including
  * Migrations
  * Validations
  * Serializers
  * A Command-Line Interface
  * Timestamps
  * Types
  * ActiveRecord-style finders
  * Adapters for your favorite repository or database type
  * Integration with your favorite web frameworks
  * Observers for watching resources.
  • extlib
    • サポートライブラリ.主に ruby 標準クラスの拡張が含まれている.lazy_array とかはここに入ってる.
  • data_mapper
    • よく使われるパッケージを一括して require.
      • dm-core
      • dm-aggregates
      • dm-constraints
      • dm-migrations
      • dm-serializer
      • dm-timestamps
      • dm-validations
      • dm-types