The Design Patterns Book, released in 1994 is even today very influential in how we designed our apps. However, I think the influence is about to end In the last 20 years the mainstream programming languages are object oriented and imperative and right now, they are oo, imperative and functional. The functional paradigm suggest different patterns for the problems stated in the book. In the second part of presentation, I try to explain Monads, as an example of a functional pattern.
35. subtract
abstractions
Lisp
ML
Haskell
functional languages
imperative languages
Java
C
Fortran
C++
add
abstractions
36. subtract
abstractions
Lisp
ML
Haskell
functional languages
imperative languages
Java
C
Fortran
C++
add
abstractions
Scala
Java 8
C#
F#
hybrid languages
66. asyncCall()
.then(function(data1){
// do something...
return anotherAsyncCall();
})
.then(function(data2){
// do something...
return oneMoreAsyncCall();
})
.then(function(data3){
// the third and final async response
})
.fail(function(err) {
// handle any error resulting from any of the above calls
})
.done();
67. var promise = new Promise(initialFunction)
var anotherPromise = promise.then(functionB)
var yetAnotherPromise = anotherPromise.then(functionC)
...
68. var promise = new Promise(initialFunction)
var anotherPromise = promise.then(functionB)
var yetAnotherPromise = anotherPromise.then(functionC)
...
69. var promise = new Promise(initialFunction)
var anotherPromise = promise.then(functionB)
var yetAnotherPromise = anotherPromise.then(functionC)
...