私はJoomla 3.2用のプラグインをいくつか作成し、最近アパート賃貸を管理するコンポーネントを開始しました。基本的なファイル/フォルダー構造が、コンポーネントをすばやく実行するために必要なファイルで既に作成されているフレームワークがそこにあるかどうか疑問に思っていました。
起動するたびにホイールを再作成する必要はありません。コンポーネントを取得するために必要なファイルとクラスには、基本的な必要な構造があります。もう1つありますか?
ない場合、どのJoomlaコンポーネントのストックが良い例でしょうか?
編集:答えを見て、おそらく「フレームワーク」は用語の選択としては不適切だったと思います。独自のコードベースを持つものは探していません。コントローラー、ビューフォルダー、モデルフォルダーなど、すべてのJoomlaコンポーネントに共通で実行する必要があるファイル/フォルダー構造を持つものを探していました。
私が探しているのは、Joomlaコアコードの一部ではない依存関係があってはなりません。
私はjoomla 1.5に必要なすべてのファイルがあり、クラスとファイルの名前をコンポーネントの名前と一致するように変更してインストールするだけで、基本的な管理ビュー、フロントエンドメニュービューなどが見つかりました。 ...私はそこに誰かが作成したものを望んでいます
私が過去に使用した1つのツールは、Component Creatorです http://www.component-creator.com/en/ 。
このツールを使用すると、無料で1つのテーブル(有料パッケージにサインアップした場合はさらに多く)だけでなく、コンポーネント自体に関するその他の一般的な情報を概説できます。次に、インストール可能なZipファイルをダウンロードして、コンポーネントを起動できます。
とにかくコードに飛び込んで喜んでいる人にとっては、これはコンポーネント開発をすばやく開始するための非常に簡単な方法です。
他のJoomlaコンポーネントの開発に役立つJoomlaにインストールできる拡張機能もあります。そのヘルパーのスタイルの1つの例は、この無料の拡張機能Easy Creatorです。 http://extensions.joomla.org/extensions/miscellaneous/development/5908
これは、1つのNiceパッケージにビルドツールが混在しているテスト環境に最適なアドオンになります。
Joomla Component Generatorと呼ばれる、シンプルで高速なコンポーネント生成のための別のツールがあります。それはあなたが無料で無制限のテーブルを作成することができます。有料のパッケージがありますが、複数のビューが必要でない限り、購入する必要はありません。ダウンロード用のインストール可能なZipファイルも生成します。テストはこの発電機の利点を明らかにします。生成されたコードとインデントを見てください。
クライアント用に多数の拡張機能を作成した後、同じパターンを何度も繰り返した。物事をドライに保つために、私が行う一般的なタスクのほとんどを抽象化する「コンポーネントフレームワーク」を作成しましたが、これまでは社内でのみ使用されていました。それは多くの機能を欠いていますが、私が必要とするもののために仕事を成し遂げます。
私はこれを言うために言った-同じ方法で独自のコンポーネントフレームワークを開発する。現在作成しているコードの共通点を取り上げ、OO階層の1つ上のレベルに移動して、コンポーネントとJoomlaの間にある独自のレイヤーに入れます。このアプローチを使用すると、「チャドが言ったフレームワークが破綻した場合」の問題を理解し、あなたはそれをはるかによく理解しています。これまでのところ、私はうまく機能しています。
私はいくつかの理由で、この種のことに対して「フレームワーク」の種類を勧めたくありません。
1)CMSには「フレームワーク」があり、拡張機能を「より簡単に」作成する必要がある場合は、サードパーティのアイテムを作成する代わりにコアフレームワークコードに焦点を当てます。
2)機能しなくなったフレームワークで拡張機能を作成する場合、ややこしいです。
3)コアを使用すると、更新が改善されるので理想的です。これは常にそうであったわけではないので、サードパーティのフレームワークが存在するのはそのためです。私たちがそれに焦点を合わせなければ、それは決して改善されません。
-
つまり、JoomlaにはFoF(フレームワークのフレームワーク)と呼ばれる「RADフレームワーク」があります。使ったことはありませんが、時間節約ツールと言われています。ここにいくつかのドキュメントがあります:
https://www.akeebabackup.com/documentation/fof/getting-started-with-fof.html
注-FoFはJoomla 3.2のディストリビューションに含まれているため、Joomla 3.2以降の拡張機能である場合は、FoFをインストールする必要はありません。
最後に、コアにとどまり、コアMVCクラスを使用したい場合は、現在でもレガシーMVCクラスを使用することをお勧めします(新しいMVCが完全に理解されるとすぐに変更されます)。調べるのに適した基本拡張機能は、実際にはcom_contactまたはcom_bannersコンポーネントです。それらはかなりシンプルであり、JFormやカスタムモデルなどをそのまま利用できます。
私は強くお勧めします Cook Self Service 。少額の料金はかかると思いますが、主要な教育コンポーネントの約85%を生成し、最初は1000ドル節約できました。生成されたコードは、修正のためにすてきでクリーンでした。
Joomla Hello Worldコンポーネント をご覧になりましたか?まだ確認していませんが、コンポーネントの構築に必要な最小限のファイルが含まれているようです。また、Joomla 3.2にはFramework on Framework(FOF)が含まれているため、 To-Do FOFの例 コンポーネントを確認しましたか?やるべきことのリストにカスタムJoomla 3.xコンポーネントを記述していることはわかっています。これらは、プロジェクトの開始時に使用することを計画していた2つの例です。うまくいけば、彼らもあなたのために働くでしょう。
Joomlaの上にRB Frameworkを開発しました。コンポーネント開発(PayPlans、PayInvoiceなど)に使用します( https://github.com/readybytes/rbframework )
同じためのコンポーネントビルダーがあります( https://github.com/readybytes/component-builder )
上記のフレームワークは、同じことを何度も繰り返すことによる多くのストレスを軽減します。
インプ: