カスタム・モジュール開発 : 背景および前提条件
開発者ポータル でカスタム・モジュールを作成して、機能を拡張できます。 以下の情報では、カスタム・モジュール開発の入門開発者ガイドを示します。
カスタム・モジュールは、PHP で作成されます。PHP は、動的 Web ページの作成に使用されるオープン・ソースのサーバー・サイド・スクリプト言語です。 PHP 開発用の Drupal ツールに関する一般情報については、 カスタム・モジュール開発: PHP 開発用の Drupal ツールの概要を参照してください。
以下のセクションでは、カスタム・モジュール開発の概要を示しており、必要な開発言語および概念の詳細を学習するためのリンクが含まれています。 カスタム・モジュールを作成すると、 開発者ポータル ・サイトのソースに影響が及ぶため、モジュールの作成を開始する前に、 Drupal の経験と PHP の知識を得ることをお勧めします。
- 作成するカスタム・モジュール内に IBM® API Connect モジュールを組み込むことは許可されていません。 また、ファイル・システム上の API Connect テーマ、モジュール、組み込まれているモジュール、または Drupal コアを直接編集することは許可されておらず、サポートされていません。これらのファイルの編集済みバージョンは、フィックスパックまたは iFix のインストール時に上書きされるためです。
- すべてのカスタム開発はお客様の責任で行っていただきます。 カスタム・モジュールおよびテーマの使用はサポートされていますが、 IBM API Connect では、それらの開発や変更をサポートしていません。
オブジェクト指向プログラミング (OOP)
- オブジェクト指向プログラミング (Objective-oriented programming) (Wikipedia)
- Object Oriented Programming with PHP ( phpro.org)
- Object-Oriented PHP for Beginners ( tutsplus.com)
- Object Oriented Programming in PHP ( tutorialspoint.com)
- ファクトリー・パターン ( phptherightway.comの場合)、および Late Static Bindings ( php.netの場合)
- ソフトウェア設計パターン (Wikipedia)
- Programming Foundations: Design Patterns ( lynda.com)
PHP の名前空間
PHP での名前空間の概念に精通している必要があります。 ほとんどの場合、Drupal コードの名前空間は、コードが属するモジュールに基づきます。
block.module
の名前空間は、以下のとおりです。namespace Drupal\block;
Drupal モジュールを作成するときには、PHP にはグローバル名前空間があること、および関数名は固有である必要があることを考慮してください。 すべてのメソッドの名前にモジュール名を接頭部として付けることをお勧めします。
例えば、custom_module
という名前のモジュールがある場合、その内部の create
メソッドは custom_module_create()
という名前にします。
- Drupal 名前空間標準 ( drupal.org)
- How to use PHP namespaces ( sitepoint.com)
- PHP 名前空間 ( php.net)
依存関係の注入
依存関係の注入について基本的な理解を深めることが重要です。 Drupal はこの概念を多用しているため、多くのコア API にアクセスして使用できるようにするには、この理解が必要になります。
依存関係の注入について詳しくは、 依存関係の注入 (Dependency Injection) ( phptherightway.com)、およびそのページにリンクされている追加の記事を参照してください。 Drupal ( drupal.org) も参照してください。
Symfony
Symfony は、再使用可能な PHP コンポーネントと、Web プロジェクト用の PHP フレームワークのセットです。 Drupal では、各種 PHP プロジェクトでのコード重複を削減するために、このフレームワークを取り込んでいます。 Drupal がルーティング、セッション、およびサービス・コンテナーを処理するために使用するコードの多くは、特に Symfony から借用されています。
Symfony の機能を理解するには、 symfony.comの「 Symfony Documentation 」を参照してください。
その他の役立つ資料
- Drupal API Annotations - Drupal がプラグインのディスカバリーに使用するさまざまなアノテーション・タイプのリスト、および実行されているコードの追加のコンテキスト/メタデータを提供します。
- Plugin API overview - Drupalでのプラグインの使用方法の概要。
- カスタムモジュールをチェックするためのツールが利用可能です。 drupal_checkの上GitHub,チェックするDrupal非推奨のコード。