SORU
21 HAZİRAN 2010, PAZARTESİ


Fonksiyonel-OO melez diller için desen tasarımı?

Zaten Scala gibi diller için en iyi uygulamalar herhangi bir koleksiyonun var mı?

Fonksiyonel diller için tasarım desenleri üzerine bir çalışma buldumDesign patterns for functional strategic programming. GoF OO diller için tasarım desenleri var. Ama fonksiyonel-OO melezler için herhangi bir desen var mı? Tek gördüğüm this listesidir. Bilinen nedir?

CEVAP
21 HAZİRAN 2010, PAZARTESİ


Bill Venners iki desen, hem de ağır ScalaTest kullanılır bence

Özellik (dekorasyon karıştırmak dışında dekoratör desen yapısı benzer, sınıf kompozisyon yerine nesne kompozisyonu amacıyla) tercümesi:
http://www.artima.com/scalazine/articles/stackable_trait_pattern.html

Özellik (kütüphane tasarımcıları müşterileri ya mixins veya ithalat yoluyla erişim hizmetleri sağlamak için sağlar) özverili:
http://www.artima.com/scalazine/articles/selfless_trait_pattern.html

Türü güvenli builder:
http://blog.rafaelferreira.net/2008/07/type-safe-builder-pattern-in-scala.html

Bağımsız olarak Genişletilebilir Çözümler için İfade Sorunu - "Ölçeklenebilir Bileşen Soyutlama" desen, Katalog, ama aynı zamanda benzer sorunlar (Ziyaretçi desen gibi) ile ilgilidir değil . gibi ^br> http://www.scala-lang.org/docu/files/IC_TECH_REPORT_200433.pdf

Gözlemci Desen küçümseyen - Gözlemci için bir alternatif
http://infoscience.epfl.ch/record/148043/files/DeprecatingObserversTR2010.pdf

Ayrıca Haskell tür sınıfların scala öykünme tasarımı bir model düşünebilirsiniz. İlk açıklama en azından bulabildiğim () Zavallı Adam Türü Sınıflar
http://lampwww.epfl.ch/~odersky/talks/wg2.8-boston06.pdf
Biraz blog girişleri de bu konu ile mevcuttur.

Ve ben de çeşitli monadlar söz konusu kaynaklar, onlarla ilgili bir çok şey bulabilirsiniz tamamen yanlış değilim sanırım.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Abe Olandres

    Abe Olandres

    16 EYLÜL 2006
  • GoogleTechTalks

    GoogleTechTa

    15 AĞUSTOS 2007
  • Mr. H

    Mr. H

    1 Temmuz 2012