2009-08-05 18 views
6

Bu yüzden, bir php framework kullanarak uygulamamı yeniden yazmayı çok istiyorum; çünkü bu, kullanıcıların katılımını kolaylaştırmayı ve uygulamanın tasarımını geliştirmeyi kolaylaştıracağını düşünüyorum.CakePHP'de bir php uygulaması yeniden yazmak

CakePHP, PHP web çerçevelerinin en iyisine benziyor. Kimsenin deneyimleri var mı? El ile kodlanmış PHP'den bir çerçeve kullanmaya devam etmeyi düşünmem gereken uyarılar nelerdir?

cevap

8

seçtiğiniz edeceğiz çerçevesinde bağlı değil, bilirsin gereken ilk şey şudur: bunu

  • şeyler crapping yapacağız bilmek için

    • biraz zaman alacağım , ^^
    • böylece bu süre içinde, sen

    Ben noktalardır düşünüyorum tam olarak faaliyete :-) olmadan önce aslında biraz zaman alacağım dikkate almak En düşük tahmin edilen noktalar: bir çerçeve kullanmak çok zaman almaz ... Onu iyi kullanmak ve yeteneklerinin tümüyle uzatmak ... Eh, birkaç ay, belki ... Yani, projenizin sonu "Ben bunu ilk defa yeniden yazarken öğrendiğim tüm şeylerle yeniden yazmalıyım" diyeceksiniz: -D

    Bunun anlamı şudur: Çerçevenin neler yapabileceğini öğrenin onu kullanmak ve büyük uygulamalarınızı yeniden yazmaya başlamadan önce, küçük uygulamalarda bir süre kullanabilirsiniz!


    Sonra muhtemelen hayır "en iyi çerçevesi" vardır: bir çerçeve bir proje için çok uygundur olabilir ve başka bir ikinci, farklı bir proje için iyi olabilir.

    CakePHP ile hiç çalışmamıştım; Gerçekten Zend Framework'u seviyorum. Fakat bu kişisel bir fikirdir ve O, symfony'u gerçekten seven insanları tanır; yanlış değil: Symfony harika - ve ben yanlış değilim^^^
    Yine de, bazen bazı konularda hemfikir; motive ederseniz, birçok yayınlarına göz alabilir


    Doctrine (symfony varsayılan ORM katmanı) gerçekten büyük kısmı şu ve biz symfony ve ZF tabanlı projelerde hem de kullanma eğiliminde olması ... gibi SO hakkında, çerçeveler hakkında ...O ^^
    ("Hangi f ile

    iyi şanslar: İşte o bir çift ramework" - ve sübjektif - oldukça pationnating olan

  • +0

    Herhangi bir nedenden dolayı Zend Framework'ün tescilli olduğunu düşündüm. Sanırım yapacak daha çok araştırmam var. – mattl

    +0

    Büyük uygulamamın çerçeveye yazılması söz konusu olduğunda, zaten geliştiricilerden oluşan bir yığın var, ama her zaman daha fazlasını kullanabiliriz. Yardım etmek ister misiniz? – mattl

    +0

    Onun arkasında bir şirket (Zend) var, ama, hayır, kesinlikle tescilli değil; Doğru olarak hatırlarsam, bir çeşit BSD lisansı altındadır (ve bu kullanıcılar için harika bir şeydir); http://framework.zend.com/license adresini ziyaret edin - ve arkasında bir şirket olan tek çerçeve değildir; Symfony'de bir tane var, örneğin –

    2

    CakePHP'nin iyi bölümleri var ama "en iyi" bir çerçeve yok. En popüler PHP çerçevelerinde neyin iyi olduğu hakkında bazı ipuçları ile Here's a thread.

    Daha önce MVC çerçeveleri kullanmamışsanız (ve Kek MVC çerçevesidir) Bence ilk önce MVC architecture ile familiaze yapmalısınız.

    +0

    Rails projesinde MVC'yi biraz yaptım. İşaretçi için teşekkürler. – mattl

    +0

    Uygulamanızı neden Rails'de yeniden yazmıyorsunuz? – RaYell

    +0

    Raylar, insanların konuşlandırılması için oldukça zordur ve bunun mümkün olduğunca kolay olmasını istiyoruz. İnsanlar bunu 5 dolarlık bir hosting hesabına atabiliyor olmalı. – mattl

    1

    FWIW, ben bazı php gelişimini yapıyordu bir süre kullandım. Kullanımı kolay buldum ve hızlı gelişme özelliği harikaydı ve son 3 yılda daha iyi anlaştığımı hayal ediyorum. irc channel'da bir ton yardım var ve belgeler iyi. PHP'de uzman olmak için yeterince uzun süre dayanmadım. Ancak, o zamanlar bir programcı olarak yeni başlamıştım ve Larry Masters'a (yaratıcısı aka phpnut) girmişti ve tasarım prensipleri hakkında konuşmak için iyi bir insandı ve iyi bir insandı. Sonra tekrar iyi bir web çerçevesi yazmak için süper iyi bir adam olmak zorunda değilsiniz (Size DHH'ye bakıyorum).

    0

    Çerçevelerin çoğu, onlara kendi yollarını "bağlamanız" anlamına gelir; Yapacakları bir şey yapmak istemezseniz, genellikle onu hacklemeniz gerekir. Örneğin, kaç tane PHP çerçevesi şu anda Facebook Connect'i destekliyor?

    Şahsen, sadece istediğiniz parçaları kullanabileceğiniz "çerçeveler" tercih ederim. Zend bu şekildedir, Doktrini ve Propel diğer kodlarla kullanılmak üzere tasarlanmış ORM'dir. Örneğin, Symfony çerçevesi de kullanabilir.

    Son olarak, iyi ölçeklendiren popüler bir PHP çerçevesi bulamadım.

    0

    Birkaç proje için cakephp kullandım. Öğrendiğim andan itibaren hiç bir zaman php yazmamıştım (yeni bir şeyler denemek istediğim eğlenceli bir kod yoksa veya MVC'den başka tasarım fikirlerini öğrenmek istemiyorsa). Belirtildiği gibi, öğrenme biraz zaman alacaktır. Ne kadar zamanınız gerçekten arka planınıza bağlıdır. Bir web komut dosyası dili için başka bir MVC çerçevesi kullandıysanız, bunu gerçekten hızlı öğreneceksiniz; RoR geliştiricileri saat/gün içinde alacaklar. MVC framework'leri ile ilgili tecrübeniz yoksa, size biraz zaman alabilir, ancak size daha sonra yolda (zamanla başladığınız proje dahil) zaman kazandıracak.Bu güne kadar, her zaman yeni bir proje başlatmaya başladığımda CakePHP hakkında yeni şeyler öğreniyorum, bununla birlikte kaynak kodlarının çoğunu kazmaya devam etmekteyim (kesinlikle bunu yapmanıza gerek yok, dökümantasyon ve yardım panoları.). fazlasıyla yeterlidir).

    Kesinlikle bakmanızı tavsiye ederim. Bu size çok zaman kazandıracak ve kafanızı farklı bir şekilde düşünecektir (MVC'ye alışkın değilseniz).

    Şansın en iyisi. Bunları öğrenmek kez

    +0

    Dağıtım hakkında yorumda bulunduğunuzu fark ettim. Dağıtım ile ilgili bir sorunum olmadı, sunucuya taşımak kadar kolay. sunucunuzun php kodunu çalıştırmaya hazır olduğunu ve mod_rewrite sahip olduğunu varsayarak ve bazı yapılandırma dosyalarını değiştirerek. – Alejandro

    0

    CakePHP'nin convention over configuration yaklaşımı birkaç avantajı vardır: Kodu organize tutmaya yardımcı olur ve anlaşılır

  • daha kolay birden çok geliştiriciler aynı uygulamaya ortak çalışma yapmasını kolaylaştırır

    • markaları geliştiricilerin diğer geliştiricilerin uygulamalarını anlaması mümkündür

    Bir legac'ı yeniden yazarken iki ana seçeneğiniz vardır CakePHP'de y uygulaması:

    • değişim veritabanı şeması kurallarını yansıtmak için - eski veritabanı arayüzü için daha az kod
    • kodları modellerini ortaya çıkan - this book tüm ayrıntılarına girer

    Ya yol, yukarıda yaptığınız zaman, oldukça düz yelken ve iyi bir öğrenme deneyimi.

  • İlgili konular