サーバ構築も一段落したので、久々にプログラミングをしてます。ココのサイトを構成してるDeltaWikiというツールの新しいバージョン作りです。
で、ずっと釈然としなかったことがいくつか。
「DeltaWiki」って名称だけど、Wikiの部分は機能の一部でしか無いんだよね。どっちかというとCMSに近い。
ってことで、次のバージョンはDeltaCMSにしようかなぁ。
もう一つ。内部構成はかなりFSWikiに近いです。そもそもプラグインの互換性とか持たせたいと思ってたくらいなので、関数名まで同じな所があります(結局互換は無いけど)。
でも、このツールの構造…ずっとシンプルにシンプルにって思いながら作ってるんだけど、どうもシンプルにならない。いっそうの事と思って、基本機能は周到しつつ、バッサリと作り直してみて気がついた。
まず、DeltaWikiもFSWikiもなんだけど、たとえばCoreプラグインのHogeって機能を使うのに、Hogeって機能はCoreプラグイン配下のFugaっていうオブジェクトに格納されてる。
この仕組みがどうも複雑だ。1プラグインに、オブジェクトは1つでいいじゃないか。いや、いくつオブジェクトがあってもいいんだが、そもそも母体となるシステムがそれを管理する理由がそもそもない。
あとは機能の呼び方。Wikiに埋め込めるいわゆるプラグインの他に、アクションハンドラやフックプラグインなどがある。
そもそもWikiは機能の一つにするんだから、そんな複雑な仕組みは必要が無い。オブジェクトならオブジェクトらしく、メソッドとプロパティだけでいいじゃん。
…と、まぁほとんど独り言だが、要するに基本に立ち返るのは大切だなぁ…と思いました。
また、イチからしこしこと作り直しだけどね。

Leave a Reply