Magento'nın kod tabanı işleyebilir bir PHP IDE var mı?

8 Cevap php

Magento, bir büyük kod tabanı (6000 + php dosyaları) olan bir karmaşık autoloading mantık kullanır ve XML yapılandırma bir yeri vardır. Nerede, vb denir nerede bir işlevi, bildirilen bu canavar işleyebilir herhangi bir IDE var mı bana göster - Ben bu kod tabanı etrafında küçük bir beyin alabilirsiniz bir IDE arıyorum?

EDIT - Adding examples

Burada bir ürünü Magento şekilde yüklemek için nasıl bir örnek:

 $product = Mage::getModel('catalog/product')->load($productID)

Bir yardımcı sınıf Başlarken benzer:

 $helper = Mage::getHelper('catalog/product')

Ayrıca, niteliklerin alıcılar ve ayarlayıcıları, genellikle oldukça koduna nazaran çok iyi bir yerde bir XML dosyasında bildirilmiş olabilir modeli, gelen varsayılmıştır.

8 Cevap

Muhtemelen değil, istediğiniz cevabı, ancak dosya sayısı muhtemelen burada folyo olmayacak. Magento nesneleri (Mage::getModel vb) örneğini garip yöntemleri kullanan bu yana, normal bir kod tamamlama bir kayıp tamamen. Bunun üstüne, Magento elbette kod tamamlama tamamen muaf PHP'nin sihirli fonksiyonları, ağır kullanımı yapar.

Ben Magento (Komodo, Zend Studio, Eclipse) kullanarak birkaç IDE ile çalıştık ve ben çok iyi bir sonuç olmadı. Komodo tahmin etmeye çalışırken bir koroner yoktu, bu yüzden bir süredir been using tek kişiydi.

Umut olur. Teşekkürler!

Joe

Bir Netbeans hayranıyım ben. Ne arıyorsun olan Class Type Hints o Zend Studio ve Nebeans destek hem de. Magento bu ortamda yavaş olmuştur, ancak kodda bunun bazı durumlar vardır.

http://files.zend.com/help/Zend-Studio-7/code_assist_concept.htm

 /* @var $myVar TestClass */
 $myVar = new getClass();

Eğer ücretsiz bir IDE için gidiyoruz, sonra Eclipse PDT sadece iyi çalışır. Bu problem olmadan tüm bu dosyaları işleyebilir. Eğer bir daha tam özellikli IDE istiyorsanız, ben Zend Studio seçsin. Zend Studio (bir bir tarayıcı araç çubuğu yerleşik gerçekten güzel debugger / profiler ve kutunun dışında biçimlendirme daha iyi kod gibi) ek özellikleri ile aslında Eclipse PDT olduğunu.

I've developed an open source plugin for PHPStorm, maybe you want to take a look: http://www.magicento.com

Eklenti isteyen ve aynı zamanda xml dosyaları otomatik tamamlama gibi daha fazla özelliklere sahiptir ne işleyebilir. Benim günlük çalışma eklentisini kullanın çünkü, her hafta daha fazla özellik katacak. Ben de sizin için yararlı olur umarım.

Bu aşağı iki faktöre olacak:? (? Tüm özdevinimli sınıfları tanımak olacak mı) IDE şıklığı ve düz performans (Ne kadar bir arama sözlüğü oluşturmak için dosya ağacının yürümek için IDE sürer ne sıklıkla yenilemek olacak?)

Bir IDE dosyaları bu miktarda işleyebilir olmadığını makine donatılmıştır nasıl güçlü bağlıdır. Ben size en popüler PHP IDE ve deneme sürümleri geçmesi tavsiye ve bir size en uygun hangi görünüyorsun. Bu, onlarla ya da çalışma olup olmadığını öğrenmek için oldukça kolay olmalıdır.

Nusphere en PhpED (14-günlük Deneme here ) ile bir iş için ben. Ben bu büyük bir proje ile hiç çalışmamış, ancak büyük olanları ve ben kodu arama işlevselliği ile memnun değilim. Muhtemelen çoğu IDE yıllardan gibi, elle eklenmesi durumunda bir autoload özlüyor içerir sağlar.

Sonra Zend Studio var (İndir here ) and Eclipse PDT (here ), and a whole lot more to look at in this question . Dışarı almak zorunda olacak kadar hepsi, PHP Kod tamamlama yapmak değil yaparlar.

Eclipse (Aptana, PDT veya Zend) herhangi bir lezzet kullanarak ve belgelerin iyi yararlanarak / * @ var gibi özellikleri saptadık ... * / açıklama mucizeler yok.

Örneğin, ben aşağıdaki yapıda Strube_MyModule adında özel bir modül üzerinde çalışıyorum eğer:

   Strube\
      MyModule\
          Block\
              Custom.php
          template\
              mymodule\
                  custom.phtml

Strube \ MyModule \ Blokları \ Custom.php

<?php
  class Strube_MyModule_Block_Custom extend Mage_Core_Block_Template {
    public function _construct() {
      $this->setTemplate('../../../../path/to/template/mymodule/custom.phtml');
    }

    /**
     * Eclipse is smart enough to follow PHP-Docs
     *
     * @return Mage_Customer_Model_Customer
     */
    public function getCustomer() {
      return Mage::getSingleton('customer/session')->getCustomer();
    }
  }

Şablon \ MyModule \ custom.phtml

<?php
  /**
   * PHP DOC!
   */
  /* @var $this Strube_MyModule_Block_Custom */
  // Now you can auto-complete $this->...
  // You can also <ctrl> + click on functions that descent from $this
  echo $this->getChildHtml();

  // It will also autocomplete based on PHP-doc @return tags
  echo $this->getCustomer()->getName();

Ben (o da büyük Java ve C projeleri kolları) büyük PHP projeler üzerinde çalışmak için Netbeans'ı kullandım. Benim şu anki CakePHP projeleri 35000 dosyalar, bunların 4000-5000 vb dış kitaplıkları dahil PHP dosyaları var

IDE bir süre için duyarlı, ama çalışmaya devam eğer gecede IDE halsiz olur ve bunu yeniden başlatmanız gerekir.

(Mage gibi :: helper ('yardımcı'), Mage :: getModels ('modülü / model'), vb) nesnelerin Magento örneğini işleyebilir IDE tabanlı Eclipse için Magento Plugin deneyin.

http://code.google.com/p/magento-plugin