開発段階ではなく、ほとんどのプロジェクトが長い間サポートされていた場合、ドキュメントは常に最新の状態に保たれていません。 次に、既存のコードからUMLダイアグラムを取得することが非常に役立ちます。 これは、プロジェクト前のドキュメントが完全に完成していない場合、またはシステムのすべての部分が設計されていない場合にも必要です。 この質問は、特に新しい開発者が登場するときに関係します。
この記事では、PHPに実装された2つのスクリプトを検討します。
- Php2xmiコンソールスクリプト
- PHP_UMLライブラリ
Php2xmiコンソールスクリプト
私の意見では、おもしろいことに、UMLモデルを作成するメカニズムの実装は、php2xmiコンソールスクリプト
です 。
このオプションの興味深い点:
- PHPで書かれています。 必要に応じてアルゴリズムを変更できます
- 要求されたPHP Docサポート
主な欠点:
- プロジェクトのファイルを接続するための特定のルールが必要です。
- メソッドのソースコードをモデルに追加しません
- 継続的な更新の欠如
Zend_Configクラスのモデルを生成するためのサンプルファイル:
<?php
require_once 'Zend/config.php';
require_once 'Zend/Config/ini.php';
require_once 'Zend/Config/xml.php';
require_once 'Zend/exception.php';
require_once 'Zend/Config/exception.php';
* This source code was highlighted with Source Code Highlighter & me.
既存のプロジェクトのモデルを完全に生成するには、このスクリプトに__autoloadサポートを追加できます。
結論:このスクリプトを使用すると、追加の労力なしで既存のクラスの図を取得できます。 PHPで作成されているため、開発者は自分の判断で編集できます。
PHP_UMLライブラリ
別のオプションは、既存のコードを使用してUML図を作成することです。 PHPツールによって実装されるツールでもありますが、前のものとは異なり、すでにモデルを作成するためのライブラリです。
アーカイブに含まれている例を調べることで、慣れることができます。
可能性を説明する主なドキュメントもそこにあります。 主なものと、最も重要で興味深いものを選びます。
- XMI 2.1のサポートは、この標準の最新バージョンです。 最も一般的で高品質のUMLモデリング環境の1つであるUmbrelloもこのバージョンをサポートしています。
- PHPで書かれています。
- 便利なクラス構造。
- 通常のWebアプリケーションのように実行されます
- PHP Docを読み取ります
主な欠点:
最終更新日(今年の8月)までに、プロジェクトは引き続き発展し、より有望であると言えます。 さらに、このオプションには、単体テストでカバーされるという事実も含めることができます。これにより、作業の原理とその後の開発の可能性を理解しやすくなります。 また、PEARパッケージライブラリにも含まれており、長期にわたって高品質のソリューションのみが保持されます。
結論: php2xmiスクリプトと比較すると、このプロジェクトはより専門的に完成しているように見えるので、勉強にもっと注意を払う必要があります。