SORU
5 Temmuz 2010, PAZARTESİ


Clojure Huzurlu bir web hizmeti geliştirmek için iyi bir başlangıç noktası nedir?

En azından aşağıdaki özellikleri desteklemesi gereken bir şey hafif, araştırıyorum:

  • Meta ile eylemlerin kolay tanımı için destek
  • Sarıcı fonksiyonu parametre olarak clojure haritasına isteği, ya da parametreleri özler
  • Kimlik doğrulama birden fazla form (temel, form, cookie) desteği
  • temel yetkilendirme apı yöntemi meta veri tabanlı
  • oturum nesnesi clojure göster sarılmış
  • ÇOĞALTMA kodlama (server yeniden başlatmanız gerekmez) canlı
  • geri dönüş otomatik serileştirme json ve xml için değer
  • nice (takılabilir) url parametre kullanma (örn eylem par1 /par2//eylem yerine? /=val1&par2=val2 par1)

Nispeten kolay bu seçeneklerin her biri için Mikro-çerçeve kendim roll olduğunu biliyorum, ama neden zaten var olan bir şey gibi Eğer tekerleği yeniden icat? Eğer varsa özellikle:

  • Katkıda bulunanlar/kullanıcı sayısının artması ile aktif proje
  • En azından belgeleri ve öğretici çevrimiçi temel var.

CEVAP
5 Temmuz 2010, PAZARTESİ


Öncelikle, Clojure (birlikte çalışabilirlik ile kullanılabilecek bir Java kütüphanesi formu hariç) tüm bunu yapmak için tek paketlenmiş bir çözüm bulmak pek olası değil bence. Clojure standart Web yığını haline geliyor ve insanlar çok farklı şekillerde maç karışımı olan kütüphaneleri bir dizi onlar mutlu bir şekilde mükemmel uyumlu olma eğilimindedir beri) oluşur.1

İşte size yararlı olabilecek bazı yapı taşları listesi:

  1. Ring -- Clojure temel HTTP isteği kütüphane kullanma; diğer tüm webby kütüphaneler (yollar, yazma &c.) bildiğim kadarıyla Yüzük ile uyumludur. Yüzüğü aktif olarak geliştirilmektedir, sağlam bir topluluk var, iyi yazılmış ve çok güzel SPEC bir belge tasarım felsefesini anlatan vardır. This blog post nasıl kullanabileceğini güzel bir örnek (tamamlama GitHub tepki) sağlar.

  2. İşlevsellik planlanan Sandbar -- şu anda bir kimlik doğrulama Kütüphanesi, daha fazla türleri; geliştirme aşamasında.

  3. Compojure -- yollar Halka üzerinde kullanılacak yazı için güzel bir DSL sağlayan olgun ve sağlam bir kütüphane. Bu güzel URL parametresi işleme verecektir.

  4. Compojure-rest -- "Compojure üstüne Dinlendirici uygulamaları oluşturmak için bir kütüphane". Compojure-dinlenme, anladığım kadarıyla, gelişiminin ilk aşamalarında, belki tasarımı etkilemek için bir fırsat olarak görebilirsiniz. :-)

  5. Başa çıkmak için bazı XML, clojure.contrib.lazy-xml (ve yardımcı kütüphane clojure.contrib.zip-filter.xml) ve Enlive (dahili clojure.xml ad şu anda çok kullanışlı); bu olurdu kullanılan tandem (ama amaçlarınız eski olabilir yeterli).

  6. JSON için, contrib ve clojure-json kütüphane (ve bendüşünüyorumen az bir lib şimdi unutmuş gibiyim...) vardı; en sevdiğini seç.

Tüm ÇOĞALTMA odaklı geliştirme stili (burada amaç çok fazla olan Halka bir numara için this SO question kabul cevabı ile son derece mutlu olacaktır. Sanırım yukarıdaki toplama bağlantıları mu bırakın bir kaç kör nokta (özellikle, kimlik doğrulama hikaye hala çözdüklerini, bildiğim kadarıyla söyleyebilirim), ama umarım bu iyi bir başlangıç.


1Tek tek paket çözüm için bina web uygulamalarını içinde Clojure bildiğim kadarıyla Conjure, ilham Raylar, maalesef kabul etmeliyim ki fazla bir şey bilmiyorum bu konuda, bu yüzden eğer ilgilendi, takip linki ve etrafa kaynaklar, wiki &c.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • discokatze

    discokatze

    23 EYLÜL 2009
  • Julia Graf

    Julia Graf

    6 Mayıs 2006
  • michal lelkowski

    michal lelko

    9 Temmuz 2006