>>29のコードを更新しました。
 http://play.island.ac/codepaste/code?id=1536
 http://www.h6.dion.ne.jp/~machan/tmdoc/example/Blog.book/html-r1.30/ -- 自動生成ドキュメント
 http://www.h6.dion.ne.jp/~machan/tmdoc/example/Blog.book/blog.png -- UMLクラス図

今回の変更の目的は>>23の最後で書いた「クラスの継承」ですが、実際には前回の>>23ではコレクションを
実装するために継承を用いていました。ただし、これはありふれた継承パターンであり、しかもそれらのクラスは
属性を持たない単純な継承であったので、特に解説しません。今回は、残りのクラス群について検討します。

まず「継承(inheritance)」とは何か?にはいくつかの定義があり、その一つは「言語(Ruby)が提供する便利な仕掛けである」
という実践的な立場であり、もう一つは「クラスとは集合であり、継承とはクラス間の部分集合関係である」という
形式的な立場です。一般には前者で考える人が多いのですが、ここでは後者の定義を採用し、これに沿って検討を進めます。

クラスが集合であるとすれば、その集合の要素とは各クラスが持つ「属性(attribuute)」です。
>>29のコードの先頭付近にある「Grammar of Blog(ブログの文法)」というコメントから
コレクション関連のクラスを除いたものを以下に示します。
 <Blog> = "url" "title" "seq_counter_of_aticles" "seq_counter_of_photos" <Aticles> <Photos>.
 <Aticle> = "url" "title" "seq_num" "seq_conter_of_photos" <Photos>.
 <Photo> = "url" "seq_num".

(次レスへ続く ....)