Czy istnieje odpowiednik DDD w FP? Wydaje mi się, że DDD jest ważne tylko w paradygmacie OOP.Domain Driven Design w programowaniu funkcjonalnym?
Odpowiedz
To zależy jak poważnie głosisz Ewangelię DDD:
Jeśli kupisz we wszystkich szczegółach książki Erika Evansa, szczególnie rzeczy w części II, który jest silnie zorientowanym obiektowo niż nikt przy zdrowych zmysłach próbowałby to powtórzyć w języku funkcjonalnym.
Jeśli interesujesz się przede wszystkim w części I książki, że wszyscy uczestnicy projektu powinni mieć wspólny język w domenie, to liderzy ruchu funkcjonalno-programistycznego znajdują się w obszarze domeny osadzonej -pecific languages . Teraz są one wspólną walutą, ale paper by Erik Meijer and Daan Leijen at DSL'99 zrobiło wiele, aby te techniki były popularne. Zbudowanie osadzonego DSL jest obecnie bardzo popularną techniką programowania funkcjonalnego, a jeśli szukasz embedded domain specific Haskell, znajdziesz wiele przykładów.
Więc moja odpowiedź brzmi: ważne, fundamentalne idee Domain-Driven Design mogą być stosowane w sposób funkcjonalny zachodzącego, ale wiele szczegółów obiektowych są nieistotne.
Języki specyficzne dla domeny. Zobacz na przykład this book.
DDD eXchange 2012: Grega Younga na Programowanie funkcyjne z DDD
http://skillsmatter.com/podcast/design-architecture/ddd-functional-programming
- 1. Domain Driven Design dla Node.js
- 2. Domain Driven Design - Aggregate Roots
- 3. buforowanie Kod Lokalizacja w Domain Driven Design
- 4. Access Control w Domain Driven Design
- 5. Domain Driven Design w aplikacji Node.js
- 6. Domain Driven Design: Kiedy tworzyć agregat Root?
- 7. Domain Driven Design, Domain objects, nastawienie do seterów
- 8. Mutowalność w programowaniu funkcjonalnym
- 9. W jaki sposób Domain Driven Design obsługuje raportowanie?
- 10. Domain Driven Design: jak odzyskać listy złożonych danych
- 11. Kiedy nie powinniśmy stosować podejścia opartego na Domain-Driven Design?
- 12. Domain Driven Design: gdzie znajduje się logika przepływu pracy?
- 13. Zrozumienie sekwencjonowania w programowaniu funkcjonalnym
- 14. Czy istnieje niezgodność między repozytoriami Design Domain Driven Design i Spring Data?
- 15. podpisy/typy w programowaniu funkcjonalnym (OCaml)
- 16. Określanie typu funkcji w Programowaniu funkcjonalnym
- 17. Dlaczego powinienem używać funktory aplikacyjne w programowaniu funkcjonalnym?
- 18. Czy wszystkie czyste funkcje w programowaniu funkcjonalnym są ciągłe?
- 19. Cel trzeciego argumentu funkcji "zmniejszania" w programowaniu funkcjonalnym Java 8
- 20. Jak pisać historie/scenariusze w BDD (Behavior Driven Design)
- 21. Jakiej techniki w programowaniu funkcjonalnym trudno się nauczyć, ale później przydatna?
- 22. Czy istnieje pojęcie "fold with break" lub "find with accumulator" w programowaniu funkcjonalnym?
- 23. Filtr sekwencji F # w funkcjonalnym stylu
- 24. PropTypes w funkcjonalnym elemencie bezstanowym
- 25. Test Driven Development w PHP
- 26. Redukcje w programowaniu
- 27. Właściwie używając singleton design pattern
- 28. [: Nieoczekiwany operator w programowaniu powłoki
- 29. Co oznacza "pakowanie" w programowaniu?
- 30. użyj dplyr mutate() w programowaniu
47 minut wystarczy, aby wyjaśnić skopiuj i aktualizację, wtf. –