Neden çok iyi bir PHP çerçeve - Qcodo (veya Qcubed - şube) - çok sevilmeyen?

22 Cevap php

Bu çerçeve (QCodo) neredeyse unutulmuş ve tamamen sevilmeyen neden merak ediyorum.

Ben birkaç yıl önce kullanmaya başladım ve PHP ile beni tutan only şeydir. Evet ... gelişimi sıkışmış (daha aktif şube Qcubed şimdi neden budur) ama o hala bir yazılım çok iyi parça olduğunu.

Başlıca avantajları:

  • Olay (asp.net gibi bir şey) tahrik no spaghetti code
  • Güçlü kod üretimi
  • iyi ORM
  • KURU takip
  • çok basit AJAX desteği
  • yazmak için eğlenceli

O zamandan beri ben trendy olmak istedim ve Django kontrol ama ben (sadece doğru gelmiyor) normal istek tabanlı web uygulaması yazamıyor.

Inanmıyor musunuz? chess.com onunla yazılır ve mutlaka bol diğerleri vardır.

Benim 2 sorular şunlardır:

  1. Bunu (PHP kişi) duydunuz mu?
  2. Bu konuda düşünceniz nedir bunu kullanıyor iseniz (bize çalışma örnekleri göstermek)

Teşekkürler

22 Cevap

  1. Qcodo yaratıcısı (ler) gerçekten çerçeveyi terfi asla ve böylece, büyük bir taraftar oluşturmak vermedi. Ben kendi kullanımı için çoğunlukla onu yaratan, aynı zamanda başkalarına da sundu inanıyorum. Eğer bir kod üreten framework arıyorsanız eğer harika. Bu bir öğrenme eğrisi var. Yani bunun en yararlanmak için, bu örnekleri inceleyerek vakit geçirmek için en iyisidir.

  2. Qcodo gerçekten iyi bir yıl boyunca aktif bir gelişme olmuştur ve geliştirme yakında Qcodo her zaman devam edeceğini çok şans olacaksa görünmüyor. Qcodo yavaş yavaş ölmekte gibi görünüyor.

  3. Qcubed, Qcodo bir dalı, etkin geliştirme altında ve. It Qcodo ilerleme eksikliği ile sinirli var Qcodo kullanıcıları tarafından oluşturulan Kasım 2008 yılından bu yana olmuştur. Sadece başladık, burada değil Qcodo ile başlar. Ama olabilecek sorunlar / sorular aramak için Qcodo forumları kullanabilirsiniz.

Qcodo ve Qcubed fantastik çerçeveler vardır. Indirim ya da bunları duymamış sırf onları hafife almayın.

Yıllardır PHP bir çok kullanılan ve bunu hiç duymadım.

PHP ASP.NET veya Wicket taklit yapmak iyi bir şey değil. Ayrıca, kod tarzı bana iyi görünmüyor.

$this->btnSavePage = new QButton($this);
$this->btnSavePage->Text = "Save";
$this->btnSavePage->Visible = false;

$this->btnCancelEdit = new QButton($this);
$this->btnCancelEdit->Text = "Cancel";
$this->btnCancelEdit->Visible = false;

Macar notasyonu? OMG. Ben bir düğme oluşturmak için büyük bir nesne oluşturmak gerekir? Bana ağır.

Qcubed and Qcodo are used by us in 3 projects and these ones are the cleanest and easiest to maintain projects we ever had! This is great stuff and easy to understand. Just go into the code you won't need much manuals.

Temel sorunlar üzerinde cevaplar için Qcodo forumda kontrol etmek istiyorum, ama Qcubed Foruma olabilir bu yüzden Qcubed topluluk şu anda çok güçlüdür.

Biz bu harika ürün ve toplum ile kalmaya devam edecek!

Regards, tronics

http://www.twitter.com/qcodo

Hayır, ben bunu hiç duymamıştım.

Ben duydum Başlıcaları Zend, CakePHP, Symfony, Kod Ateşleyici ve ben yarasa kapalı sağ isimlerini hatırlamıyorum diğer bir veya iki olanlardır.

Evet, Chess.com de kullanmak yapmak ve genel olarak onunla çok mutlu olmuştur. Nasıl / nerede iyi bir milyonun üzerinde sayfa gösterimi bir gün alıyorsanız zaman tüm bu QFormStates saklamak için anlamaya çalışıyorum sorunlu alabilirsiniz. Her sayfa görünümü kendi QFormState olduğunu! Biz memcache içine hepsini koyarak bu çözüldü! Bu bir öğrenme eğrisi biraz var, ama bunu bilmek bir kez, gerçekten daha fazla belgelerine gerekir asla. Ben aslında uzak tamamen QQ kullanarak taşındı ve bizim ORM dosyalarındaki tüm özel sql kullanmak var. QQ sadece ağır optimize sorguları yapmak için yeterince güçlü değildir ve son derece ayarlı sorgular veritabanı soyutlama daha önemlidir. Sonuçta, site işlev ve hızlı olması gerekiyor. İşte (bizim üyeleri sayfada rastgele bir "kullanıcı spot" göstermek için bu kullanmak için kullanılır) veritabanından rastgele bir kullanıcı yüklemek için bizim Kullanıcı sınıfta bir örnek ORM statik bir yöntemdir. Bu köle veritabanını değil, bizim master (özel inşa fonksiyonu) nasıl kullandığına dikkat. Randomize Kullanıcı sadece her 10 dakikada bir (600s) değişir, böylece aynı zamanda memcache kullanır.

public static function LoadRandom($blnAvatarRequired = true, $blnForce = false) {
  $strCacheKey = MyMemcache::QueryToKey("User->LoadRandom()");
  if($blnForce || false === ($objUser = MyMemcache::G()->GetQuery($strCacheKey))) {
    $objDatabase = QApplication::GetSlaveDbConnection();

    $DaysAgo = new QDateTime(QDateTime::Now);
    $DaysAgo->AddDays(-10); //make sure this is an active member

    // Setup the SQL Query
    $strAvatarReq = $blnAvatarRequired ? ' and u.has_avatar':'';
    $strQuery = "
      select
        u.*
      from
        user u
      where
        u.is_enabled=1 and
        u.create_date > '$DaysAgo'
        $strAvatarReq
      order by
        rand()
      limit
        1
    ";

    // Perform the Query and Instantiate the Result
    $objDbResult = $objDatabase->Query($strQuery);
    $objUser = User::InstantiateDbRow($objDbResult->GetNextRow());
    MyMemcache::G()->SetQuery($strCacheKey, $objUser, null, 600);
  }

  return $objUser;
}

Ben yaklaşık 3 yıldır üzerinde ve kapalı PHP işi yapıyorum ve bunu hiç duymadım. Bir PHP çerçeveler isim kimse sorun ve alacağız olağan şüpheliler: vb Kod Ateşleyici, Kek, Zend,

QCodo Devs onların biraz pazarlama çalışması gerekiyor sanırım!

Ben 2 yıldır QCodo kullanarak oldum ve şimdi QCubed beraberim.

Bu web uygulamaları geliştirmek ve korumak için güzel bir yol gibi, kod dağıtmak ve bunu test etmek için en kolay yoludur. QCubed şimdi kabul büyüyor ve tüm QCodo en Toplum için iyi olduğunu unutmayın.

Ben çerçeveler geliştirme çok zaman kaydedebilirsiniz düşünüyorum ama birçok durumda hepsi senin web gelişmeler için tavsiye edilmez.

Ben iki yıl önce kullanmaya başladım. Pro:

  1. veritabanından kod üretimi
  2. ORM nesne yönelimli
  3. ajax basit kullanımı

Eksileri:

  1. qcubed topluluk yeni iyi fikirler ile bir proje üzerinde taşımak çok yetenekli değil
  2. Yeni kod Mike Ho düzeyde değildir.
  3. qforms eyaletinde böcek, qcodo / qcubed biçimleri.
  4. popüler değil.
  5. onlar devam edin ve DDD ve ileri mühendislik kullanmak istemiyorum.
  6. formlar sadece etkin js ile çalışır.
  7. PHP ile yazılmış.
  8. yeni eklenti sistemi kötü tasarlanmış.

Şu anda, Grails Hazırda ve Bahar inşa varolan herhangi bir Java kodu, iyi bir şablon kütüphane, farklı js çerçeveler kullanma olanağı kullanmak için imkanı ile çok DDD odaklı en iyi çerçeve, gibi görünüyor. Grails ile basit bir web uygulaması veya finansal uygulama yazmak mümkündür.

Ben gelecekte PHP kullanmak için değil umut, ama ben Qcubed / Qcodo biliyorum çünkü gerekli olacak eğer bunu kullanacak. Yeni başlayanlar için, ben bunun daha güvenli bir gelecek var, Symfony, büyük topluluk, mre eklentileri tavsiye zengin özelliklere sahip.

Güncellemeler:

  • Hayır veritabanı göçler, veritabanı şema değişiklikleri izlemek için bir yol
  • Tablosu oluşturulur yansıtan bir şema
  • Gerçek TDD için tasarlanmış değil, bu modeller, kontrolörler ve görüşlerini test etmek kolay değildir. Onlar sadece bir düşmanca test web çerçevesi için bir test çerçeve eklendi
  • QForms hala dinlenmişti ve çeşitli kontroller ve tetik Ajax hatayı kullanarak ve uygulama engelleme zaman durumunu gevşek olabilir.
  • ORM uzun vadede (konuşkan / gereksiz kod sürü) kullanmak çok sıkıcı ve Raylar konsolu gibi bir araç ile test edilemez, sonunda saf SQL kullanımı ve phpMyAdmin ile test için daha az zaman alır.
  • Ben interger (kod oluşturulan sorgular) olarak alan anılmalıdır zaman ORM hata çok, bazen bir dize olsun.
  • Orada bir ön denetleyicisi ve bir yönlendirme sistemi değildir ve çerçeve kamu yolun içinde olduğunu! Eklentileri de kamu yolunda yüklenir!
  • Diğer MVC çerçeveler benzer ve M ORM yerine sadece modeli için duruyor onlar bir şey değil garip dizin yapısı.
  • Rails veya Symfony ve diğer birçok etiketleri gibi etiketlemek link_to değil.
  • Zaman sadece atık yararlıdır üzerinde karmaşık metacontrols.
  • Geliştiricilerin çoğu kullanıcı merkezli bir tasarım yerine veri odaklı biri kullanmak beri Rails bir çok kullanılan değilken Çerçeve iskele odaklanmıştır.
  • Gösterim object-> .. işlemek ve JS ve özel kontrolleri özelleştirilebilir bir ağrı vardır, ve bunun yerine bir şablon içinde kalıyorum mantığı oturumu ile bir sınıf içinde olan her şeyi dolu.
  • PHP 5.3 (test fakat çözülmesi gerektiğini değil) ve Quercus üzerinde çalışmaz.
  • Raylar / Grails eklenti her şeyi yapma ton vardır.

Ben devam edebilir ama fikir olsun düşünüyorum. Sadece birkaç ay için Rayları veya Grails öğrenmek o bana ne düşündüğünüzü bildirin.

Ben Raylar benim Qcodo proje hareket ediyorum ve ben harika bir ortam, güzel bir topluluk var ve web yenilik en Ruby ve Rails civarındadır. Raylar iyi web geliştirme aracı olarak birkaç kez seçildi ve Java ya da. Net yerine geçebilecek tek olmuştur

Ben bunu duymuş olsa (Qcodo. .. bu çatal değil) bunu kullanarak hiç bakmadım. Çerçeveler ton ve sadece çok ihtiyacı vardır. PR ve mindshare böyle bir durumda derece önemlidir ve Qcodo gerçekten ya yoktu. Şimdi bir avuç sakinim ben yeni bir çerçeve öğrenmeye başlamak için, hiçbir zaman, ne de eğim var.

Bu Yüzücü Log kullanır mySwimLog

Ben beta 2 beri QCodo kullanarak ve şimdi QCubed bir çekirdek Beyi değilim, yani evet, ben bunu duydum oldum.

Ne başlangıçta çerçeveye beni çekti kod nesil oldu. Ben asp.net ve CodeSmith geldi ve bana asp.net olay-odaklı yaklaşımı ve CodeSmith kod üretimi verdi hem bir çerçeve bulmak için çok memnun oldu.

Ben de benim PHP uygulaması geliştirmek için yeni bir dil öğrenmek zorunda kalmazsınız tüm saf OO PHP, öyle seviyorum, ve ben basit istediğim gibi davranmaz çerçevesinde herhangi bir yönü özelleştirme.

Tüm bu bize birçok Fortune 500 şirketleri için ve ana bilgisayar sattık Öğrenme Yönetim Sistemi, bakımı kolay ve sağlam üretmek mümkün olan sonuçlandı.

Böyle bir ORM yaklaşımın zamanı yükü gibi bazı olumsuz yanları, ama okunabilirlik ve daha kolay uygulamanın diğer yönlerini düzene ve anlamlı hem geliştirme süresini azaltır yeteneği kod sonuçlarının temiz düzen ve hata vardır üretti.

QCubed bir toplum odaklı proje olduğundan, herkes, bilet gönderebilirsiniz iyileştirmeler önermek veya değişiklikleri görüşmek, projenin nereye gideceğini çok açık ve yapıcı geri bildirim çok açık yapabiliyor.

Burada bahsedilen olumsuz bazı şeyleri savunmak, ben sadece sözde "sorun" çoğu için bilet sadece yarattığı hiç işaret edecektir. Ve ben bize http://qcu.be de bakmak için bir bilet oluşturmak memnun etmek için bunlardan herhangi biriyle karşılaşırsanız yok herkese tavsiye ederim.

Tamam, İşte bu Qcodo / Qcubed şey hakkında söylemek istediğiniz bir şey:

  1. Onun parlak. Ben sadece ne kadar büyük olduğunu hakkında hiçbir kelime var. Sen CodeIgniter'ı demek? Symfony? Ben Qcubed söylüyorlar.

Ben üzerinde çalışıyorum proje başlamak istedim zaman oldu ve ben Qcodo sitede indi, tüm bu ve bir Wikipedia makalesi aracılığıyla içine baktı, ve sonra Qcubed üzerine ... ve ben şaşırdım.

: Ben en sevilen özellikleri

  1. Hiçbir SQL sorguları gerekli. Tabii ki, bu yapılabilir ama birçok şey halledilir!
  2. Çekirdek işlevsellik gelen Şablonlar birbirinden ayrılması.
  3. Özel denetimler oluşturma çocuk oyuncağı (ve onun değil CakePHP) 'dir.
  4. Tamamen bile tahrik edilir. Devletler tasarrufu "nerede oluyor?" ... Gibi
  5. Öğrenme eğrisi yok. Sadece Yii veya Symfony exmaples bakmak ve sonra Qcubed örnekler için gidin. Onun çok basit diğerlerine göre.
  6. Tam AJAX desteği. Bunu seviyorum.
  7. Hiçbir JavaScripting. Bir 'javascript' eylemi olarak bir şey yapmak istersek, javascript tarafından yapılır. 'QAjaxAction' bir sözcüğü değiştirmek ve ajax gider. Yine sayfa reloads değiştirin. Daha ne istiyorsun?
  8. Otomatik Tamamla, tiplemeleri (otomatik ve manuel hem kontrol) ve ne değildir!
  9. Hemen hemen her şey satır düzenleme!

Bu Yii gelince, evet dondurma birkaç kiraz vardır. Ama Qcodo içinde daha fazla olduğunu düşünüyorum.

Sen Kimlik Doğrulama desteği demek? Eh, ben 1 günde Qcubed ile entegre birini oluşturdu. Bu diğer çerçeveler ile baş ağrısı lerning bir hafta kurtardı. Qcubed kayalar.

evet, ben yavaş gelişimini nefret ediyorum. Ama ben onun yakın tamamlamak düşünüyorum! (Ben de birkaç şey biliyorum ama ben tahayyül yeteneğine sahip olduğum şey Qcubed yoluyla çözülmesi almak gibi görünüyor olabilir).

Ben onların sayfalarında iniş önce ... bana arama bir hafta kaydedilmiş olurdu daha popüler olsaydı.

Ben şimdi 1.5 yıldır QCodo / QCubed kullandık. Bir noktada dağınık gibiydi benim kendi çerçevesi ile başladı. Ben daha olgun bir framework arıyorsanız o zaman başladı. Neyse ki ben QCodo buldum. O zamandan beri, hatta başka bir şey arıyor hiç düşünmediniz. Çerçeve onunla istediğiniz her şeyi yapabilirsiniz, böylece esnek ve güçlüdür.

Ben olay odaklı mimarisi ile hemen hemen hiçbir deneyimi vardı. Mevcut birkaç belge vardı çünkü Yani, başından, biraz zor oldu. Ama toplum kendisi çok aktif olduğunu ve muhtemelen (hatta bazen saat) 1-2 gün içinde acemi sorulara cevap olsun. Ancak şu anda dokümantasyon seviyesi yolu daha iyi olduğunu ve toplum da daha aktif :)

Ben şikayet bir şey yok. Ben bazı sorunlar / önerileriniz varsa, ben çekirdek geliştiricileri ile bu tartışmaya çalışacağız. Yapıcı tartışma olmadan şeyler hakkında sızlanan topal imho olduğunu.

Ben şimdi 3-4 başarılı projeler için QCodo / QCubed kullandık. Daha ben kullanmak, daha çok seviyorum :) Ve de, ben boş vaktim olduğunda daha iyi bir çerçeve geliştirmeye yardım etmeye çalışıyorum. Ve ben şimdi QC kullanmaya başlamak için ikna olduk fazla 10 kişi vardı ki, diyebilirim ;) Ve ben çok daha fazla olacağını umuyoruz.

QCubed tamamen kayalar!

http://www.piranhamethod.com/2009/04/09/qcodoqcubed/

Ben bunu duydum ve ben onu seviyorum.

Ben de bir dotNet / CodeSmith ortamda geldi. Ben PHP bir dotNet sitesi tercüme etmek istediği bir proje tuttuğunda iyi orijinal uygulamanın mantık kuruldu şekilde taklit edebilecek bir çerçeve için baktım. Ne buldum şişirilmiş çerçeveler veya tamamen projelerin gereklerini yerine getirmediği çerçeveler oldu ya.

PHP kod üretimi için MyGeneration aracını kullanarak araştırma yaparken yanlışlıkla QCodo buldum. Ben beri geriye bakmadım. Kullanım kolaylığı, hızlı bir şekilde karmaşık uygulamalar ve gerçek OO yaklaşımı QCodo inşa yeteneği şimdi QCubed benim amaçlar için en iyi çerçeve yapar kullanır.

Ben artık uzunca bir süre için QCodo, ZCodo ve şimdi QCubed kullanarak oldum.

Ben aslında benim ihtiyaç zamanında, ben istediğim şeyleri yapmak için yeterince olgun değildi CakePHP'de için bir yedek olarak aldı.

Ben bir çerçeve olarak onunla süper mutluyum; Sadece yeterli şeyler soyutlayan, ancak programlama gözden kaybetmek çok fazla değil.

Ben gelecekte sorumlu değilim herhangi bir geliştirme projesi için kullanmayı planlıyorsanız, ve ben QCubed orada PHP5 için en iyi topluluk tutulan framework olmak için arıyorum.

Hızlı nedeni popülerlik ve başarı genellikle teknik en iyi ne ile gitmek kalmamasıdır. Ben herhangi bir teknik okul sayısız örnekleri ile gelip eminim. Çok sayıda pazarlama gibi vasat çözümlerini teşvik şeyler, ilk hamle avantajı, insanların dikkatini çekiyor, bazı alanda bir dokunuş daha iyi olmanın, bazı yüksek profilli uygulamasında kullanılan, ya da sadece düz şans vardır.

Diğer nedeni ne sana teknik olarak iyi görünen farklı bir şey yapıyor birileri için çok görünmeyebilir olmasıdır.

Ben QCubed büyük ve esas olarak, çünkü size (t have to write Jscript and you don t jQuery kullanmak zorunda) Ajax kullanabileceğiniz yol olduğunu düşünüyorum.

Bir çok kullanışlı bir belge: http://www.qcodo.com/demos/QcodoClassLibrary.pdf

I chose QCodo 4 years ago to develop our product. I've never regretted - now we're 3 developpers on the thing, and any non-OOP solution wouldn't work. We have installed almost 50 customers with it - on Apache, IIS, my SQL and SQLServer platforms, Linux or W2003. F The design is brilliant, code-generation is great, and it's really easy to develop, extend, and maintain. I can't read any other code now...

Evet, pazarlama oldukça zayıf olduğunu ve proje sadece yaratıcısı (Mike Ho) bağlıdır kullanılır. Tüm bunlar son zamanlarda Git taşındı ve pazarlama yakında daha iyi olmalıdır. Ve, şimdi Mike Ho geri döndü!

Ben Flash Remoting içeren birkaç projelerde kullanmış ama EDP maddeleri. NET gibi gibi ben gerçekten yok gibi ben sadece çerçevesinde ORM kullanın. Akış vatansız web için doğru tüm görünüyor değil. ORM ayrı bir bileşeni olarak piyasaya olabilir eğer harika.

  1. qcubed topluluk yeni iyi fikirler ile bir proje üzerinde taşımak çok yetenekli değil

    Saçmalık

  2. Yeni kod Mike Ho düzeyde değildir.

    Saçmalık

  3. qforms eyaletinde böcek, qcodo / qcubed biçimleri.

    ?

  4. popüler değil.

    Ne yani

  5. onlar devam edin ve DSL ve ileri mühendislik kullanmak istemiyorum.

    Senin nokta? Rotanızı gitmek istemiyor, her framework yanlıştır? Ben biri için yaptığınız önerileri istemem

  6. formlar sadece etkin js ile çalışır.

    Sağ Şaka gerekir? Kullanıcıların JS etkin olması yoksa, o zaman taş çağında konum ...

  7. PHP ile yazılmış.

    No comment

  8. yeni eklenti sistemi kötü tasarlanmış.

    Dayanarak bu ne diyorsun? Ben bu saçmalığı söylemek de olur

Açıkçası bu posteri ile bazı gizli gündem var ... Ben de Senfoni yakından bakmak yaşadım - ve ben her zaman Senfoni üzerinde QCubed ile giderdim. Büyük ya da küçük uygulamalar için