Typecho CMS フレームワークに基づいて大規模および中規模のアプリケーションを開発します
大規模および中規模のアプリケーションは、一時的に次のように定義されます: 3 つ以上のデータ テーブルを持つアプリケーション!汗を流せ!
Typecho は元々ブログシステムであり、市販されている一般的な MVC フレームワークとは異なり、メインコードは自作の Widget を基底クラスとしており、全体は非常にシンプルです。
Typechoの基本的な特徴は以下の通りです:
なぜ Typecho に基づいてアプリケーションを開発する必要があるのですか
私は Typecho の公式開発者ではなく、関連するバックグラウンド ユニットのセグメントで働いているわけでもありません。 、なぜこのニッチなフレームワークを使用する必要があるのでしょうか?
実際、Typecho を使用する必要はありません。PHP の世界にはフレームワークが多すぎるため、より高度なフレームワークを選択できます。
いつから自分が「ニッチな」患者であり、ありきたりな道を進むのが好きではないことに気づき始めました。 Linux がデスクトップの分野では十分にニッチであるのと同じように、私はさらにニッチな FreeBSD を使用するのが好きです。
これは単なる私の試みです。
実践
原則: MVC モデルに基づいて、サービス層を追加します。
前に述べたように、Typecho は C レイヤーの基礎となる独自の Action コンセプトを作成しましたが、Action には明確な定義がありません。そこで、Controller の基本クラスを定義します。
Typechoにはモデルの概念がなく、すべてのSQLクエリが直接呼び出されます。したがって、Model 基本クラスも定義する必要があります。
View ファイルは View のコンテンツ キャリアです。学習コストを削減するために、テンプレート エンジンは導入されなくなりました。つまり、PHP 構文 が直接使用され、C に直接インポートされます。実行。
複雑なアプリケーションにおける MVC の最大の問題は、再利用可能なコードが十分に洗練されていないことです。C 層が太すぎる人もいれば、M 層が太すぎる人もいます。サービス ビジネス レイヤーの導入により、ビジネス レイヤーを洗練してカプセル化し、コードの再利用を最大限に高めることができます。
デモプロジェクト: Typecho Alumni プラグインプロジェクト
コードアドレス: https://github.com/web3d/plugins/tree/master/Alumni
プロジェクトコード構造:
/plugins/Alumni/Base/ Action.php|Model.php|Service.php|Helper.php
/plugins/Alumni/Model/
/plugins/Alumni/Service/
/plugins/Alumni/Action/
/plugins/Alumni/views/default/
/plugins/Alumni/Plugin.php
/plugins/Alumni/panel.php
==========
続く...
上記では、PHP の構文や github のコンテンツを含め、Typecho CMS フレームワークに基づいた大規模および中規模のアプリケーションの開発について紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。