PHP UML Generator

10 Cevap php

PHP nasıl varolan sınıfları esas alarak UML diyagramı oluşturur?

10 Cevap

Ben şiddetle tavsiye BOUML. Bir NOT free UML modelleme uygulaması bulunuyor, hangi:

  • son derece hızlı (şimdiye kadar oluşturulmuş en hızlı UML aracı, benchmarks check out) olduğu,
  • kaya gibi sağlam PHP import and export desteği (aynı zamanda C + +, Java, Python destekler) vardır
  • (Linux, Windows, diğer işletim sistemlerinde) multiplatform,
  • tam, özellikli etkileyici yoğun (development history, bu tür hızlı ilerlemenin mümkün olduğuna inanmak zor bakmak) geliştirdi.
  • , eklentileri destekler modüler bir mimariye sahiptir (bu olanak user contributions, BOUML toplum yukarı oluşturuyor gibi görünüyor)

pear edinilebilir PHP UML aracı da bulunuyor.

PHP_UML:

  • 1.4 sürümü, veya sürüm 2.1 (mantıksal, bileşen ve dağıtım görünümleri) UML / XMI dosyaları oluşturabilir
  • HTML biçiminde bir API belgelere üretebilir
  • Belirli bir XMI dosyasından PHP kodu (kod iskelet) üretebilir miyim
  • Sürüm 1.4 sürüm 2.1 UML / XMI içeriği dönüştürebilirsiniz

Yoluyla komut satırında yükleyin:

$ pear install pear/php_uml

(Bu eskiden $ pear install pear/php_uml-alpha ama paket bu yana istikrarlı gitti.)

Lütfen XMI oluşturun:

$ phpuml -o project.xmi

i PHP ve UML yapmak için bulduk iyi (Windows) yazılımı Sparx Systems Enterprise Architect. bir plétora yanında features, bu following PHP destekler:

  • Ters mühendisi nesne UML sınıf diyagramları içine PHP odaklı
  • UML sınıf diyagramları PHP sınıf tanımlarını oluşturmak
  • Gelen PHP sınıf tanımının içine bir UML sınıf içinde yapılan değişiklikleri senkronize
  • Gelen UML sınıfa PHP sınıf tanımında yapılan değişiklikleri senkronize
  • PHP sınıfları kullanmak ne göstermek için UML sıra diyagramları oluşturmak ve nasıl kullanılır
  • Standart RTF ve HTML formatında PHP kodu ayrıntılı belgeler üretin
  • Baz PHP sayfaları oluşturmak için modellerde kod mühendisliği gerçekleştirmek.

(199 $) serbest, ama kesinlikle karşılığı değer değil.

Eğer Autodia henüz denediniz mi? Son kez ben o mükemmel değildi çalıştı, ama yeterince iyi oldu.

Orada da php2xmi. Siz manuel biraz iş yapmak zorunda, ama tüm sınıfları, böylece tüm yapmanız gereken Umbrello bir classdiagram içine sürüklemektir üretir.

Aksi takdirde, yansıma ve graphviz kullanımı ile bir diyagram üreten, oldukça basittir. Ben size bir başlangıç ​​noktası olarak kullanabilirsiniz, bir parçacık over here var.

İşte (doğrudan kod şey elle çizim olmadan PDF çizim) bunu nasıl bulunuyor:

  1. BOUML [sic] sınıf modeli (BOUML Ubuntu "evren" depo edinilebilir) ayıklamak için "tersine mühendislik PHP kodu" için kullanın. Gerçekten çok hızlı ben denedim diğer birçok programlara göre çünkü ben ciddi bu adım için BOUML öneririz. Buna ek olarak, bu BOUML (BOUML da çıkarmak için çalışır parçalar için) doğru bir model çıkarmak için görünmektedir gibi görünüyor.
  2. XMI 1.4 dosyası olarak modelini ihraç etmek BOUML kullanın
  3. ArgoUML ithalat için kullanın XMI dosyası (bu adım için webstart sürümünü kullanabilirsiniz) dedi
  4. ArgoUML İhracat XMI (I çıkış olduğu XMI versiyon / varyant bilmiyorum ama Bouml çıktı olarak aynı sonucu değildir. ArgoUML-graphviz Bouml doğrudan XMI dosya işleyemez).
  5. (Eğer nedeniyle XSLT2 kullanımı için çalışma almak yerine xsltproc ve saxon kullanmak gerekebilir) argouml-graphviz ArgoUML biçimini noktalamayı XMI dosya ihraç dönüştürmek için kullanın
  6. dot veya fdp veya sfdp sınıf diyagramı işlemek için kullanın.

İşte (ArgoUML-graphviz XLST işlem tarafından oluşturulan dot dosyası xmi-model.dot olarak kaydedilir olduğunu varsayarak) çıkış PDF şemasına FDP kullanmak için uygun komut satırı bir örnek:

fdp -Tpdf -Gmaxiter=1000 -Gmindist=0.5 -Gpackmode=node \
  -Eweight=0.05 -Elen=1.0 -Eminlen=1.0 -Gsplines=true \
  -Goverlap=false xmi-model.dot -oxmi-model.pdf

Bir alternatif olarak "tersine mühendislik" kısmını yapmak için PHP_UML deneyin ya php2xmi yerine Bouml arasında olabilir. Ben henüz denemedim.

Geldikleri sınıf ve yöntem bilgileri ayıklamak anlamına zaman UML insanlar the source code. Şahsen çalıştırılabilir ikili bilgileri ayıklamak gibi bu sözcükleri yorumlamak istiyorum bu kelimeleri kullanıyor gibi görünüyor çünkü (ben ifade "tersine mühendislik" kullanıyorum dosya ya da yakalanan ham tel verileri.)

(Yerine tüm çizim yapmak için bilgisayar kullanarak) elle sınıf diyagram çizim tercih ederseniz, çizim için BOUML veya ArgoUML kullanabilirsiniz. Bouml yoluyla "tersine mühendislik" verileri kullanılarak bu durumda yardımcı olacaktır.

phUML

phUML BSD lisansı altında lisanslı, PHP ile yazılmış tam otomatik UML sınıf şeması jeneratör vardır. Herhangi PHP5 nesne yönelimli kaynak kodu ayrıştırma kapasitesine sahip ve UML şartnameye dayalı oo yapının uygun bir görüntü gösterimini oluşturmak.

UML Example

Sen Visual Paradigm for UML kullanabilirsiniz. Herkes denemek istiyorsanız bu sadece bir seçenek olarak iyi ücretli (bu ABD $ 699) ürün olmayabilir. PHP den sınıf diyagramı ve tersi oluşturabilir ve sadece PHP, bu tür C # gibi seçebilirsiniz dilin bir grup var, C + +, Ruby, Java, VB.NET, Python, Objective C, Perl, Orada da deneme üzerinde kontrol edebilirsiniz.

Eğer mevcut PHP Sınıflar kolayca UML oluşturmak için arıyorsanız PhpStorm 3.0 IDE düşünebilirsiniz. Bu UML içine varolan kodunu kopyalayan iyi bir iş yok. PHP STORM FEATURE LIST

A complete and explained step by step solution for modeling and reverse engineering for PHP

http://www.proyectosphp.org.es/?q=en/node/93

http://www.proyectosphp.org.es/sites/default/files/databaseUmbrello1.jpg