wiki アプリケーションを設計するとき、どのようなことを考慮に入れる必要がありますか?
これまでのところ、私は持っています:
- リビジョン
- ある種のマークアップ テキストの解析
- ウィキ内のリンク、および他のページにリンクしているページを追跡します。
- 関連するウィキ、つまり、ウィキは他のウィキに関連しています。
Wiki の構築には他に何が必要ですか?
wiki アプリケーションを設計するとき、どのようなことを考慮に入れる必要がありますか?
これまでのところ、私は持っています:
Wiki の構築には他に何が必要ですか?
参考になれば、ウィキペディアのデータベース スキーマを次に示します (実際には、ウィキペディアの背後にあるエンジンである MediaWiki)。
http://upload.wikimedia.org/wikipedia/commons/4/41/Mediawiki-database-schema.png?
私は過去数年間、私自身の使用と、さまざまなクライアント/雇用主の技術チームをサポートするために、多くの調査を行い、wiki を使用してきました。
私は、Wiki の最も重要な基準は、 http://c2.com/にある元の Wiki のように透明にすることだと結論付けました。貢献するのは非常に簡単であるべきであり、ユーザーがわざわざ貢献すべきかどうか疑問に思うことはありません。エディターは簡単にアクセスできる必要があり、従来のテキストのみ (WYSIWYG ではありません!!!) wiki 形式を使用する必要があり、新しいページを簡単に追加できる必要があり、外部ページ (他の wiki または通常の Web) に簡単にリンクできる必要があります。 、バックリンクが必要です。元のwikiを真似すれば大丈夫です。
なんらかの形であまりにも苦痛なので、あえて貢献する必要があるかどうかユーザーが疑問に思った場合、wiki は失速して失敗します。私はそれが何度も何度も起こるのを見てきました。WYSIWYG は一般的な障害モードの 1 つです。大量のファイルやマルチメディアなどの「リッチ」コンテンツが混在することも、バックアップ/復元できないことも大きな問題です。「派手な」コンテンツが必要な場合は、wiki ユーザーがリンクできる「近く」にホストされている標準の Web サーバーを使用します。ウィキはコミュニケーションに関するものであり、見た目に関するものではないことを忘れないでください。
TiddlyWikiを見てください。これまでに見たどの wiki よりも優れた機能の組み合わせを備えていると思います。(以下の「ページ」については、「アイテム」と読みます。TiddlyWiki は単一ページのウィキだからです。しかし、これらの機能は、ページを持つウィキにも適用されるべきだと思います):
そして、私が言及していないこともたくさんあります。書式設定は、編集が非常に簡単で、台無しにするのが非常に難しいため、おそらく多くの優れた機能の中で最も優れていると思います。
見過ごされがち:
再編成が容易な Wiki を実装する良い方法を見つけた場合、それも素晴らしいことです (つまり、ページの名前を変更するか、2 つのページを 1 つに結合し、無数の Wiki リンクを壊さないでください)。
ユーザー インターフェース -- ユーザーにとって最も苛立たしいことの 1 つは、MediaWiki 用、TikiWiki 用、およびその他の無数の wiki 用に 1 つのユーザー インターフェースを学習しなければならないことです。
ウィキの最も重要な部分は、技術的な実現可能性ではなく、便利で効果的な方法でユーザーに貢献して編集してもらうことです。世界で最も技術的に堅牢な wiki を持つことはできますが、使いやすくなければ wiki が本来あるべきコミュニティ ツールとして役に立たないでしょう。
既存の使い慣れた wiki 構文 (MediaWiki など) をコピーするか、WYSIWYG エディターの作成に多大な投資をする準備をしてください。
誰もが持っているのと同じ機能を備えた新しい wiki エンジンを開始するつもりはありません。世の中にはたくさんの機能があります。
私は、標準的なウィキよりもはるかに多くの異なる/ユニークなものを提供するものにのみ取り組みます.
いくつかのアイデアが含まれます (おそらく一部のウィキには既にこれがあります):
開発者ではない人に wiki を使ってもらおうとするたびに、テキストを書くことの難しさが最大の障壁になってきました。StackOverflow に沿った WYSIWYG エディターは、私にとって素晴らしいアイデアのように思えます。ボックス内のマークアップは引き続き表示されるため、意欲のあるユーザーは最終的にそれを使用することを学びます (したがって、より効率的になります)。また、ライブ プレビューも表示されるため、ユーザーはテキストが正しく見えるかどうかについて即座にフィードバックを得ることができます。
これらと同じように、別の厄介な点は、すべての wiki がわずかに異なるマークアップを使用しているように見えることです。各デザイナーは、以前のものよりもうまくできると考えていると思います。MediaWiki の構文か、一種の標準的な MarkDown のようなものを使用することをお勧めします。これにより、パワー ユーザーが簡単に作業できるようになります。
最後に、あなたのウィキが、すでに存在する多くの多くの他のウィキと一線を画すものと、あなたのデザインがこれにどのような影響を与えるかを検討してください。
XSS を防ぐために、人々が行うすべての編集に対して入力検証を実行するようにしてください。人々がハッキングされることほど、優れた Wiki を台無しにするものはありません。