Ben birkaç web uygulamaları MVC oldukça iyi bir temsil olduğunu düşündüğüm hayata geçirdik ama crackoverflow katıldı sahip beri, belki de benim ilk tanımları biraz basit ve böylece ben gerçekten arasındaki farklar hakkında bazı açıklama sevinir olduğunu bulma yaşıyorum Veri Erişim Katmanı ve bir web uygulamasının Model veya Domain Katman.
Bağlam için, ben şu anda nesne buluştu beni tüm nesneleri arasında yineleme sağlayan bir nesneyi döndüren get () fonksiyonu yanı sıra temsil ettiği tablodaki tek bir kayıt için CRUD fonksiyonları uygulamak, veri erişim nesneleri kullanın get () fonksiyonu için kriterler.
Bu veri erişim nesneleri benim iş mantığı içeren denetleyici komut doğrudan başvurulur.
Bu konularda, PHP ve MySQL çalışan ama diğer dillerde kodlanmış olabilir önerileri ilgileniyorum ediyorum.
UPDATE: daha spesifik Örneğin, ben onlar ait olan şirket e-posta adresi, etkin devlet, kullanıcı adı, şifre, gibi bilgileri tutan kullanıcı (burada kongre tekil tablo isimleri, vb) adlı tablo . Bu temel nesne kodu aşağıdaki gibi olacaktır:
class User implements DataAccessObject
{
protected $user_id;
protected $email;
protected $username;
protected $password;
protected $company_id;
protected $active // Bool that holds either a 0 or 1
public function __construct ( $user_id ) // Uses Primary Key to know which record to construct
{
$sql = //Sql to get this information from the database.
// Code necessary to assign member variables their values from the query.
}
public function insert(){}
public function update(){}
public function delete(){}
public static function get($filters, $orderVals, $limit){}
// An object such as user might also contain the following function definition
public static function login($username, $password){}
}
Ben veri erişim fonksiyonları ile (örneğin, bir kullanıcı için oturum olarak) herhangi bir gerçek-dünya türü işlevleri hem de birleştiren bir basitleştirilmiş forma DAO Katmanı ve Model katman bastardized olabilir gibi geliyor.