目標: 月1回以上更新すること
> ホーム <
前回の続き。
図の階層構造そのものがこのWikiの特徴。
一番上の階層「Storage」は、いろいろなデータのフォーマットや保存場所だけが定義されている。
しかし、ユーザーやアドオン開発者は保存データの構造を気にする必要はない。それどころか、このStorage階層に直接アクセスすることは許されない。
データにアクセスするには、真ん中の黄色い部分、「Core APIs」と名付けられた関数群をもちいなければならない。
「~ならない」と表現すると、一見うっとうしい制約がついたように見えるが、「Core APIs」はWikiデータの操作を制限するものではなく、単なるラッパーである。
「ラッパー」がどういうものかについては、この辺を参考にしていただきたい。
つまり、「Core API」を使えば、アドオンの開発者は日本語のページ名をURLエンコードしたり、ファイルのXMLデータを解析したり、セッションの情報からユーザー名を取得したり、…、というコードを書く必要がないのである。
ピンク色の「Cache Controller」は微妙な位置づけの機能。
通常WikiではWiki形式のデータをHTMLに変換する必要があるが、ページが呼び出されるたびに変換するのは負荷がかかるから鬱陶しい。
ということで、
・ページを編集するときはWikiデータを垂れ流し、保存時にHTMLへの変換をしてキャッシュに保存する。
・ページを普通に呼び出すときはキャッシュデータを垂れ流すだけ
という負荷軽減機構だ。よく使われる手段だけどね。
ほかの部分は他所のWikiシステムと大差ないので省略。
強いて違いを挙げるならHTMLだけじゃなくてPDF形式でも表示できる、といってもこれも既存の機能。
さらにユーザーが好きな出力形式を追加できるようにしよう。XHTMLとかTeXとかXPSとか…
まあ、プラグインの簡単インストール機能とかついてたほうがユーザー的には嬉しいけどね。
あと、画像とかのファイルは「Media」の部分にまとめて保存する。ページごとに添付する方式は鬱陶しいから廃止。
一応フォルダとかカテゴリの機能をつけて整頓しやすくするが。でもそうすると画像のパス名が長くなるんだよな…
using namespace ***
的な文法でも付けとこうか。
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
前回の続き。
図の階層構造そのものがこのWikiの特徴。
一番上の階層「Storage」は、いろいろなデータのフォーマットや保存場所だけが定義されている。
しかし、ユーザーやアドオン開発者は保存データの構造を気にする必要はない。それどころか、このStorage階層に直接アクセスすることは許されない。
データにアクセスするには、真ん中の黄色い部分、「Core APIs」と名付けられた関数群をもちいなければならない。
「~ならない」と表現すると、一見うっとうしい制約がついたように見えるが、「Core APIs」はWikiデータの操作を制限するものではなく、単なるラッパーである。
「ラッパー」がどういうものかについては、この辺を参考にしていただきたい。
つまり、「Core API」を使えば、アドオンの開発者は日本語のページ名をURLエンコードしたり、ファイルのXMLデータを解析したり、セッションの情報からユーザー名を取得したり、…、というコードを書く必要がないのである。
ピンク色の「Cache Controller」は微妙な位置づけの機能。
通常WikiではWiki形式のデータをHTMLに変換する必要があるが、ページが呼び出されるたびに変換するのは負荷がかかるから鬱陶しい。
ということで、
・ページを編集するときはWikiデータを垂れ流し、保存時にHTMLへの変換をしてキャッシュに保存する。
・ページを普通に呼び出すときはキャッシュデータを垂れ流すだけ
という負荷軽減機構だ。よく使われる手段だけどね。
ほかの部分は他所のWikiシステムと大差ないので省略。
強いて違いを挙げるならHTMLだけじゃなくてPDF形式でも表示できる、といってもこれも既存の機能。
さらにユーザーが好きな出力形式を追加できるようにしよう。XHTMLとかTeXとかXPSとか…
まあ、プラグインの簡単インストール機能とかついてたほうがユーザー的には嬉しいけどね。
あと、画像とかのファイルは「Media」の部分にまとめて保存する。ページごとに添付する方式は鬱陶しいから廃止。
一応フォルダとかカテゴリの機能をつけて整頓しやすくするが。でもそうすると画像のパス名が長くなるんだよな…
using namespace ***
的な文法でも付けとこうか。
PR
この記事にコメントする