OneThird CMS

Lightweight CMS for Small website, Web application framework.

Download Document

english

設計思想の小ネタ:なぜ動的翻訳機能を入れていないか?

OneThird CMSの設計思想の小ネタです

WordPressなどの中規模CMSでは、大抵多国語対応のため文字列の翻訳に関して翻訳用の関数を準備してその関数経由で文字列を表示する仕様になっています

OneThird CMSはそうではなく、言語ごとにパッチを当てる方式をとっています

軽量CMSだから動作を早くするためパッチを当てると思われているかもしれません

それもありますがphpはオンメモリ動作が非常に高速であり、翻訳の文字列はそれほど多くないためあまり差は出ないと思います

最大の理由は、学習コストを抑えるためです

同様の理由でイベントを動的に割り当てることも極力行っていません

できる個所はすべて、href='javascript:... かonclick='.... の形式で書かれています

jQueryのclickプロパティは極力使わないということです

理由はもちろん、Chromeデベロッパーツールのような解析ツールでHTMLエレメントを見るだけでイベントが拾えたり

見えているボタンのキャプションをGrepするだけで関連するプログラムにたどり着けるようにしているからです

統合環境では要らないと反論される方もいらっしゃるかもしれませんが

OneThird CMSはできるだけ多くの方に手軽に使っていいただけるよう、開発のハードルを可能な限り下げるように配慮されています

要するに、無理して多国語するよりは、ソースの可視性を優先しているわけです

プログラムは用途に合わせて最適化されるべきで、けっして流行りの手法を導入するのが正解ではない

という設定思想なのでそういうことにしています