Kafa karıştırıcı başlık için özür dilerim ....
Biz birden fazla şirket tarafından kullanılacak bir uygulama geliştiriyoruz. Çoğunlukla, uygulama, bunun için tasarlanmış veri için özelleştirilmiş veritabanı manipülasyon sayfalarında (arama sayfaları, sayfaları düzenlemek, vb) standart tür aynıdır.
Ancak, her şirket biraz farklı bir süreci vardır ve biz her şirket ile doğrudan ilgili olacak şekilde bize sayfayı görüntüleyen hangi şirketin bağlı sayfaları oynamak sağlayacak sistemi çeşit kullanmak istiyorum. Örneğin, böylece bir şirket, bir veri giriş sayfasında bir çift ekstra alanları isteyebilirsiniz, ya da başka bir şirket, bir arama sonuçları ekranda farklı bir veri parçasını görüntülemek isteyebilirsiniz, ve.
Bu tüm varsayımsal olduğunu anlamak ve sana vermek için somut bir örnek olsaydı, ama dürüst şirketleri bile bize çok iyi örnekler verilmiş değil. Biz sadece hazır olmak istiyorum.
Yani benim temel soru, what is the most flexible way to allow for these tweaks and customizations on a per-company basis? Açıkçası, en esnek ama en azından programcı dostu yolu, her bir şirket için app tam bir kopyasını yapmak olacaktır. Hepimiz çalışan ve test edilmiş ve özelleştirilmiş kodu kaynaklanan sorunlarınız onları tutmaya çalışıyorum, tüm sitelerde güncelleme kodu yönetmek gerekir çünkü bu besbelli bir seçenek değildir.
Smarty Bu bir çözüm olarak ilgili düşünceleriniz nelerdir? Biz şablonları bir ana dizi var, ama sonra her şirket herhangi bir yedek şablon dosyaları ile farklı bir alt klasör varsa eğer, belki de ... Tabii ki biz hala onlardan birini değiştirdiğinizde farklı şablon dosyaları bir demet güncellemeniz gerekir, ama olur biraz daha zaten lokalize olur.
Daha iyi bir yolu var mı? Biz hala özgün dosyaları düzenleyebilir ve değişiklikleri (tür bir yama gibi) orijinal üstüne adapte olacak, böylece belki şablon motoru differencing çeşit? Ya da belki de PHP5 nesne yönelimli özelliklerini kullanmak ve sonra polimorfizmi kullanmalıyım? Ne iyi öneri olduğunu ve bu tür bir şey ile deneyim yaşadım özellikle, neden ne seçenekleri ve hangi kullanılan ve?