概要 †
nBookmark2は、大きく分けて「サーバーシステム」と「テンプレートシステム」の2つで構成されています。
このうち、前者はブックマークデータの追加・編集・削除などを担当し、後者はインタフェース部分やそれ以外の応用機能を担当します。
nBookmark2は大部分をクライアントシステム側で実装しているため、高度なカスタマイズが可能となっています。
サーバシステムが担当していること †
サーバシステムは与えられたコマンドをAPIとして実行し、それに対しての処理結果をブックマークテンプレートを通して出力します。
そのコマンドはnBookmark2では「アクション」と呼び、大きく分けて「何もしない」「ブックマークの追加」「ブックマークの編集」「ブックマークの削除」の4種類あります。
処理結果は「どのブックマークテンプレートを使うか」「ブックマークデータをどう並び替えるか」「ブックマークデータをどう絞り込むか」「ブックマークデータを何件出力するか」といった条件を基に出力されます。
テンプレートシステムが担当していること †
テンプレートシステムは、それ以外のHTMLとJavaScript?でできること全てを担当します。
つまり、目に見える部分の全てをテンプレートシステムが担当しており、サーバシステムにコマンドを送るインタフェースやそれを受け取るインタフェースもテンプレートシステムが担当します。