neden bazı çerçeveler yavaş?

3 Cevap php

neden bazı çerçeveler yavaş?

Örneğin nasıl zend çerçeveler kod ateşleyici daha yavaş olduğunu geliyor? sınıfların çok kullanmak istemiyorsanız, sadece sizin ihtiyaçlarınıza sınıfları seçti, o zaman yavaş almak gerekir?

Eğer Zend Framework ile sınıfların bir çok kullanmak zorunda kalıyor ya da otomatik olarak sınıfların bir sürü ön yükleme mi?

3 Cevap

Bu çerçevenin kod yazarken onlar hız halledilir ne kadar bağlıdır. CodeIgniter inanılmaz her zaman akılda tutmak speed yazılmıştır. Ayrıca büyük çerçeveler çerçeve yapım yavaş somun ve cıvata bir sürü autoLoad. Eğer bu çerçevelerin herhangi deneyimli Ancak, size geçerli proje için gerekli olmadığını düşünüyorum şeyler filtreleyerek tarafından iyi bir anlaşma için bir çerçeve hızlandırabilir.

Onlar istendiğinde Zend_Loader_Autoloader otomatik sınıfları yükler, böylece hiçbir "gereksiz sınıfları" vardır. Zend framework güçlü uygulamalar, yani hızlandırmak için bazı dersler vardır. "require_once en" dışında yorum ve PluginLoader kullanarak dosya önbelleği http://framework.zend.com/manual/en/performance.html (bazı diğer yöntemler ile birlikte) burada açıklandığı dahil

Eğer yenemezsin bazı şeyler vardır.

Herhangi bir çerçeve olabilir

  • Basit
  • Genişletilebilir
  • Hızlı
  • Anlaşılabilir
  • ...

Ama bir kerede tüm olamaz. Bu hızlı ve genişletilebilir olamaz. Bu genişletilebilir ise, bu iç sınıf veya kendi kullanmak istiyorsanız denetlemek zorundadır. Bu her şey için arabirimleri tanımlamak zorundadır. Bu nedenle (sınıflar ve arayüzler, özetleri, ... için) bir sürü dosya yüklemek için vardır. Yükleme sınıf MySQLDB sınıfı (tek bir amaç için bir sınıf) ve DbLayer_Interface, DbLayer_Abstract, DbLayer_MySQL (komple altyapı, arasındaki farka dikkat nerede siz) onun herhangi bir bölümünü yerine kullanabilirsiniz.

Ayrıca kolay bazı büyü ile geliyor. Daha çerçeve, sizin için yapar daha "magic" başlık altında oluyor. Bunun tek bir amaç için yapıldığını ve bir şey değiştirmek istiyorsanız kontrol yok gibi sihirli, hızlı olabilir.

ZF CI ve diğerleri daha yavaş olmasının nedeni de budur. Herhangi bir sınıf değiştirilebilir. Örneğin otomatik dilli sütun adlarını işleme, özel Db_Select sınıf genişletilmiş ve enjekte. Sen SELECT table.name_en FROM table gibi seçmek yapmak ve underlaying mantık SELECT table.name_en, table.name_fr, table.name_de FROM table anında ... Yani hız ticarette aldığınız gücü bulunuyor ;) aktarmaktadır.Gerçekte