そろそろ、MatchBox for CodeIgniterを活用したい。
●How to use MatchBox
MatchBoxの使い方を紹介しているサイトがあった。メモメモ。
CodeIgniterをモジュール構成にするライブラリ「MatchBox」
CodeIgniter1.7.0にMatchbox0.9.4を入れるとライブラリが認識しない?
CodeIgniterのモジュール化
CI1.7でMatchBoxを使う場合の修正箇所が参考になる。
(コードトレースの手間が省けて助かる。)
●凝集度の低いCodeIgniter
CodeIgniterで多機能なWEBアプリを作りこんでいくと、コントローラーやビューのクラスのファイル数が多くなる。
/system/application/controllers
/system/application/views
等が、だんだんと多数のファイルでゴチャゴチャになってくる。
たくさんファイルがあっても、ファイル検索やTAG検索によって目的のファイルやクラス、メソッドの定義にたどり着ければ実用上は問題ない。
しかし、目視確認でもすぐに見つけられるようになっている方が、スッキリしていて気分が良い。
(煮詰まっているときは、ゴチャゴチャしたフォルダ内を見ているだけでもイライラする。)
●凝集度の高いCodeIgniter
凝集度を高める意味でも、機能ごとにファイルをまとめて管理したくなる。
そこで、役に立つのが、「MatchBox」というCodeIgniter用のライブラリだ。
MatchBoxを使えば、各MVCのファイルを、機能ごとに一まとまりのモジュールとして扱うことができるようになる。
MatchBox for CodeIgniter 和訳
凝集度 - Wikipedia
凝集度(ぎょうしゅうど、Cohesion)とは、情報工学においてモジュール内のソースコードが特定の機能を提供すべく如何に協調しているかを表す度合いである。
凝集度は順序尺度の一種であり、「凝集度が高い」とか「凝集度が低い」といった言い方で使われる。
凝集度の高いモジュールは、堅牢性、信頼性、再利用性、読みやすさなどの点で好ましく、凝集度の低いモジュールは保守/評価/再利用/読解が難しいため好ましくないとされる。
凝集度が低い(弱い)場合の欠点は次の通りである:
* モジュール群を理解することが難しくなる。
* システムの保守が難しくなる。
ある論理的修正が複数のモジュールにまたがって影響する可能性が増すためである。
* モジュールの再利用が難しくなる。
凝集度の低いモジュールの提供するAPIには一貫性がないことが多いため。
粒度 - Wikipedia
粒度(りゅうど、granularity)とは、コンピューター・プログラミングで用いられる(機械よりは)人間寄りの尺度。
対象が利用者にとって扱いやすい程度に分割できているかどうか、といった体感的な度合いを表現する。
・サブフォルダを作って、各MVCファイルを分類して配置する方法
・MatchBoxを使って、各機能をモジュールとして束ねて配置する方法
体感的な使い分けだと、指で数えられる範囲を超えたら、MatchBoxの方が便利なのではないかと思う。
また、一人で作業する分にはどちらでも構わないが、複数人での作業なら、やっぱMatchBoxかな?
ただ、設定によってはURLが冗長になるかも?
後でちょっと試してみよう。
![]() | CodeIgniter徹底入門 (2008/06/10) 河合 勝彦鈴木 憲治 商品詳細を見る |
- 関連記事
-
- Fatal error: Allowed memory size of 16777216 bytes exhausted
- PHPのstrlen関数で全角文字が3バイトになる件
- PHPでファイル一括削除
- PHPで日時の大小比較
- CodeIgniter 1.7.1 日本語化パック
- AmazonのASINで、36進数を10進数へ変換
- PHPの正規表現
- MatchBox for CodeIgniter 使い方
- PHPでディレクトリの容量を計算する方法
- CodeIgniterで作られたwiki
- MatchBox for CodeIgniter 和訳
- CodeIgniterでSSLを使う方法
- PHPでできる簡単サーバ監視
- VertrigoServでお手軽PHP
- サクラエディタでPHPプログラミング