PHP sınıfları kullanmak için bazı yararlı yolları nelerdir?

7 Cevap php

PHP sınıfları kullanmayı öğrendim ve şimdiye kadar sadece gerçekten onlar için bir yararlı bir uygulama bulduk. Böyle çıkış olarak benim web uygulaması kullanıcılara ilişkin çeşitli görevleri preform bir kullanıcı sınıfını yarattı avatar, mesajlar vb show sayısı.

Kenara Bu örnek, bir pratik anlamda sınıfları kullanmak için bazı diğer yararlı yolları nelerdir?

7 Cevap

Bu diğer insanların kodunu okumak ve sınıflara ayrılmış şeyleri nasıl görmek için gerçekten iyi bir fikir. Bazı PEAR modules or a framework ( Zend Bak Symfony, Kek ).

Eğer 'şeyler yapar' bir 'şey' tanımlayabilirsiniz herhangi bir zamanı, bir nesneyi tanımlayan bir aday var. Hemen akla pop PHP standart kütüphane, iki somut örnekler şunlardır:

  • Çok sayıda veritabanı modülleri bağlantıları, sorguları & için nesneleri kullanabilirsiniz Sonuçlar.
  • DateTime sınıfı girişi ve ile zaman genel bir kavram kapsüller çıkış biçimlendirme, timezone dönüşümleri & tarih aritmetik.

Şey Nesne Tabanlı Programlama büyük bir fikir, - Eğer bir nesne yönelimli bir şekilde hemen hemen her programlama sorunu çözebilir.

Sınıfları (yukarıda bahsedilen örneğin ARMUT paketleri, diğerleri) ile, zaten yazılı ve ortak görevleri gerçekleştirmek için test edilmiştir kodunu kaldıraç edebiliyoruz.

Siz de, tekerleği yeniden icat değil yardımcı olur.

Ben son derece [tasarım desenleri] hakkında öğrenme tavsiye ederim [1]. Birçoğu sınıflarının iyi şekilde yapmak ve ortak programlama sorunları çözmek. Özellikle Fabrikası ve Soyut Fabrika desenleri başlamak için iyi bir yerdir.

Bunu kontrol etmek isteyebilirsiniz böylece, PHP farklı desenleri bir dizi uygulama hakkında bir bölüm vardır PHP Hacks olarak adlandırılan mükemmel bir kitap da vardır.

Ayrıca, onlar nasıl çalıştığını görmek ve daha fazla fikir almak için PHP bu yerleşik bazı nesneleri keşfetmek:

Böyle çıkış olarak benim web uygulaması kullanıcılara ilişkin çeşitli görevleri preform bir kullanıcı sınıfını yarattı avatar, mesajlar vb show sayısı.

Çıkış http://en.wikipedia.org/wiki/Cohesion_ (computer_science)

Sizin örnek Mantıksal bütünlük gibi geliyor.

Fonksiyonel uyum için hedefliyoruz. Her sınıf belirli bir görevi yapar, ve mümkün olduğunca generic gibi sınıfları yapmak ve size tekrar tekrar kullanabilirsiniz bulacaksınız.

Bu büyük bir örnek, Symfony'nin sfParameterHolder olduğunu:

http://www.symfony-project.org/book/1_2/02-Exploring-Symfony-s-Code#chapter_02_sub_parameter_holders

Symfony tüm parametreleri saklamak için sfUser sınıfında, (kendisi aldatılan tersbölülerden vb elimden tüm istek parametreleri temsil eden bir sınıf) web isteği nesne istek parametrelerini saklamak için, (a MVC) görünüm şablonları için değişkenleri tutmak için kullandığı sonunda $ _SESSION vs vs gitmek

Symfony'nin "sandbox" Download / lib / symfony / klasörüne gidin ve ondan öğrenmek. Bu "karmaşık s ama kod imho çok temiz.

http://www.symfony-project.org/installation

Zend çok güzel, ama sayı dosyaları mayb ezici içerir ve ben çizgi önek kullanarak özellikle, bizzat kendi adlandırma kuralları düşkün değilim.