SORU
1 Aralık 2008, PAZARTESİ


Veritabanlarını ve Fonksiyonel Programlama oran vardır?

Bir süre için bir web geliştirici oldu, ve son zamanlarda bazı fonksiyonel programlama öğrenmeye başladım. Diğerleri gibi, bazı önemli sorun profesyonel çalışmalarım için bu kavramlar pek çok geçerli yaşadım. Benim için başlıca nedeni bu olduğunu görüyorum bir çatışma arasında FP hedefi kalan vatansız gibi oldukça yüksek oranlar ile bu gerçeği çoğu web geliştirme çalışması yaptım oldu ağır bağlı veritabanları, çok veri merkezli.

Bana pek OOP tarafında çok daha verimli bir geliştirici yapan bir şey için MyGeneration d00dads gibi nesne-ilişkisel mappers keşfi oldu .,:: Net Sınıf için mekanda çalışan perl, ruby için ActiveRecord, vb. Bu beni Ekle ve select deyimlerine tüm gün yazmaktan kalmak ve nesneler gibi veri ile çalışma odaklanmak için izin verdi. Tabii ki, hala kendi güç gerektiğinde SQL sorguları yazabilirim, ama başka güzel sahne arkasında çekilen.

Şimdi fonksiyonel programlama dönerek, Bağlantılar demirbaş sql kod bir sürü, this example gibi yazma gerektirir gibi FP web çerçeveler çok gibi görünüyor. Weblocks görünüyor biraz daha iyi görünüyor, ama kullanmak biraz OOP modeli ile çalışmak için veri, ve hala gerektirir kod için elle yazılmış her tabloda veritabanı olarak this example. Bazı kod oluşturma bu haritalama fonksiyonları yazmak için kullanın sanırım, ama kesinlikle un-lisp gibi görünüyor.

(Weblocks veya Bağlantıları son derece yakından, sadece nasıl kullanıldıklarını yanlış anlaşılma olabilir) baktım not.

Bu yüzden soru için veritabanına erişim bölümlerini (ki sanırım oldukça büyük) web uygulaması veya başka bir geliştirme gerektiren arayüzü ile bir sql veritabanı geldik zorla aşağı bir aşağıdaki yolları:

  1. Fonksiyonel Programlama kullanmayın
  2. El ile SQL sürü Yazı veya SQL-kod ala Bağlantıları içeren, BM-ayrı sinir bozucu bir şekilde erişim Veri
  3. Pseudo-OOP paradigması içine fonksiyonel dilimizi, böylece zerafet ve gerçek fonksiyonel programlama istikrar kaldırma kuvveti.

Açıkça, bu seçeneklerden hiçbiri ideal görünüyor. Buldu bir şekilde bu sorunları aşmak? Gerçekten bir sorun var mı?

Not: ben şahsen FP cephesinde LİSP en aşina değilim, eğer herhangi bir örnek ver ve birden fazla FP dil bilmek istiyorsanız, lisp muhtemelen seçim tercih edilen dil olur

Sorunlar web geliştirme diğer yönleri için özel this question. PS:

CEVAP
1 Aralık 2008, PAZARTESİ


Gelecek de bu bakış açısının bir veritabanı kişi bunu ön uç geliştiriciler deneyin çok zor yollar bulmak için veritabanları uygun modeli yerine düşünün en etkili yollar için kullanın veritabanı olmayan nesne yönelimli ya da işlevsel ama ilişkisel ve kullanarak set teorisi. Bu kod genellikle kötü performans neden gördüm. Ve daha fazla performans ayarlama için zor bir kod oluşturur.

Veritabanı erişim göz önüne alındığında üç ana konuları - veri bütünlüğü tüm iş kuralları kullanıcı arayüzü ile veritabanı düzeyinde değil zorunlu olmalıdır), performans ve güvenlik vardır. SQL ilk iki konuları daha etkili bir şekilde herhangi bir ön dil daha yönetmek için yazılmıştır. Özellikle bunun için tasarlanmıştır çünkü. Bir veritabanı görev kullanıcı arayüzü görevi daha farklı bir şeydir. Görevi yönetmek için en etkili bir kod türü kavramsal olarak farklı mıdır acaba?

Ve veritabanları bilgileri bir şirketin hayatta kalması için kritik tutun. Olduğunu, işletmelerin hayatta kalma söz konusu olduğunda yeni yöntemleri denemek için istekli olmadığını merak ediyorum. Heck birçok işletme bile varolan bir veritabanını yeni sürüme yükseltmek için isteksiz. Veritabanı tasarımı doğasında muhafazakarlık var. Ve kasıtlı olarak bu şekilde.

T-SQL yazmayı deneyin veya bir veritabanı tasarım kavramları kullanıcı arayüzü oluşturmak için kullanmazdım, neden Dil ve tasarım kavramları senin benim veritabanına erişmek için kullanmayı dener misin? Süslü (veya yeni) yeterli SQL olmadığını düşündüğün için mi? Yoksa rahat değil mi? Bir şey ile en rahat modeline uymuyor diye kötü ya da yanlış olduğu anlamına gelmez. Farklı ve meşru bir sebebi muhtemelen farklı olduğu anlamına gelir. Farklı bir görev için farklı bir araç kullanır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • disneychannel

    disneychanne

    19 ŞUBAT 2006
  • TechBalance

    TechBalance

    12 HAZİRAN 2011
  • Tinkernut

    Tinkernut

    28 Aralık 2006