Büyük / karmaşık bir proje yapısı nasıl?

3 Cevap php

(Iki kişi birbirine karşı oynamak böylece) ben oyunu Shithead (card game) programlama ediyorum nerede Lisede bu (büyük?) Projesi oluşturma. Ben çoğunlukla PHP, MySQL, JavaScript ve Ajax kullanacağız.

Ama ben daha önce böyle bir proje yaptık hiç. Ben sadece bu CMS sistemleri ve benzeri yaptık. Siz bu projeyi yapısı gerektiği konusunda herhangi bir ipucu var mı?

Ben de bu yüzden Nesne yönelimli programlamaya alışık değilim, ama ben bu düşünmelisiniz sanırım. Örneğin ben, kartları için bir sınıf yapmak gerekir? Ben herhangi bir ipucu ya da iyi bağlantıları için çok minnettarım!

3 Cevap

Yapmam gereken en iyi şey, nesne yönelimli programlama hakkında bazı makaleleri okumak olduğunu düşünüyorum, ve sonra PHP MVC ilgili madde taşımak.

Ben de size bir CMS oluşturmak başardı supprised değilim, ama bir kart oyunu 'büyük' ​​bir proje olarak görünüyor?

Muhtemelen bu gibi büyük bir proje için bir PHP çerçeve kullanmak isteyeceksiniz. Size dosyalarınızı yapısı yollarını vermek yok, ama app birçok bileşeni sizin için yapılabilir kalmaz.

Sen bir listesini görebilirsiniz here.

Büyük olanlar CodeIgniter, Symfony ve Zend Framework vardır. CodeIgniter (muhtemelen o öğrendiğim ilk biriydi) öğrenmek için kolay, ama biraz tarihli bulunuyor.

Ben şahsen tavsiye Kohana. Istiyorum Bu Kod Ateşleyici bir PHP5 liman olarak başladı, ama şimdi kendi içine büyüdü. Onlar sadece 3.0 2 gibi hafta önce yayınlandı.

Nesne yönelimli programlama muhtemelen gitmek için bir yoldur, ama sizin aşina için, bir usul şekilde bu işleme daha iyi olabilir eğer senin daha çok kullanılır.

Örneğin, proje için bu tür bir 'kart' belki bir suffling algorithim sahip bir 'güverte' nesnesi (kartları sadece bir koleksiyon, nesne olurdu (akılda ayı Ben bu oyunun kurallarına gerçek aşina değilim) bazı tip), kartların kadar yapılmış bir 'el' nesnesi ve devam oyunu temsil 'alan' nesnesinin çeşit ve oyuncuları içerecektir, güverte ve başka bir şey bulunan bir 'oyuncu' nesne o, yani ıskarta yığınları, skoru, ya da başka ne olursa olsun denilen oyun içermesi gerekiyordu.