目標: 月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
現在普及しているWikiに対する不満
・デザインが悪い。画像も殆ど使わずシンプルに見えるが、メニューとか最下部の文字列が過剰である。また、設計が古く、テーブルでデザインされていることが多い。
・プラグインの開発が面倒くさい。Wikiエンジンによっては有志のプラグインが多数あるものの、ちょっとしたプラグインを自作しようと思ってもプラグインの仕様がややこしい(むしろ説明不足)。PHPの初歩的な知識だけで開発できた方がいい。
・中身が(ブログと比べて)文字ばっかり。もっとグラフィカルなページを作るシステムが必要ではないか?
・インストールが面倒くさい。
というわけで巨大プロジェクトの1つが始動した。
(現在計画中の巨大プロジェクト=Wikiクローン、次世代2chブラウザ、オンラインゲーム)
まずは今後の開発に必要な構想を練ることだ。
↓こんな感じのシステムにしたら開発が楽そうだ。
詳しいことは次回説明するとしよう。
・デザインが悪い。画像も殆ど使わずシンプルに見えるが、メニューとか最下部の文字列が過剰である。また、設計が古く、テーブルでデザインされていることが多い。
・プラグインの開発が面倒くさい。Wikiエンジンによっては有志のプラグインが多数あるものの、ちょっとしたプラグインを自作しようと思ってもプラグインの仕様がややこしい(むしろ説明不足)。PHPの初歩的な知識だけで開発できた方がいい。
・中身が(ブログと比べて)文字ばっかり。もっとグラフィカルなページを作るシステムが必要ではないか?
・インストールが面倒くさい。
というわけで巨大プロジェクトの1つが始動した。
(現在計画中の巨大プロジェクト=Wikiクローン、次世代2chブラウザ、オンラインゲーム)
まずは今後の開発に必要な構想を練ることだ。
↓こんな感じのシステムにしたら開発が楽そうだ。
詳しいことは次回説明するとしよう。
「電光掲示板メーカー」が若干人気なのでバージョンアップを計画中です。
主な変更点は以下のとおりです。
主な変更点は以下のとおりです。
- 動画対応
といっても拙者には動画ファイル扱う技術がないので連番BMPで対応する予定。 - 透過
かねてより掲示板で要望があったのですが技術的な問題で放置していました。
プログラムを全面的に書き直すので今度は対応できそうです。 - 言語変更
C++ → C#
ユーザー的には何も影響ありませんが… - 設定保存
同じ設定で何枚も画像を作りたいのに…というわけで - 液晶風画像
これは実現するかどうか微妙 - マルチコア対応
現行バージョンでも別スレッドで画像処理してるのでこれも実現可能か?
動画レンダリング限定ならば… - スピードアップ
無理です。 - LEDの新色
あの青・ピンク・オレンジに光る変なやつとか。
ご無沙汰してます~
管理人は現在ホームページのデザインを色々と変更しているところです。
いままではWeb2.0を意識した殺風景なデザインを心がけていましたが、
他所のブログとかと比べても個性が薄い、というか暖かみがないのが気に入らなくて…
というわけで近日リニューアルしますが、今回から動作確認はIE7・Firefox3のみに変更されました。
古いブラウザをお使いの方、ごめんなさい。
別に新しい技術とか使ってないので問題は出ないと思いますが…
ちなみにソフト開発は現在中断しています。
管理人は現在ホームページのデザインを色々と変更しているところです。
いままではWeb2.0を意識した殺風景なデザインを心がけていましたが、
他所のブログとかと比べても個性が薄い、というか暖かみがないのが気に入らなくて…
というわけで近日リニューアルしますが、今回から動作確認はIE7・Firefox3のみに変更されました。
古いブラウザをお使いの方、ごめんなさい。
別に新しい技術とか使ってないので問題は出ないと思いますが…
ちなみにソフト開発は現在中断しています。
Simutransのアドオン配布ページを開設しました。
こちらからどうぞ。
こちらからどうぞ。