Übersicht über die drei OOP paradigmen
- Schreiben der assertions
- Vergleich zu PHP OOP
- Für jeder der drei Arten, in der Reihenfolge
- Einleitng in das Paradigm
- Implementation
- Dokumentation
Implementiere und dokumentiere eine vereinfachte version von JavaScript Promises.
function myAsyncFunction () {
var promise = Object.create(Promise)
var succ = true
var err = false
setTimeout(function () {
if(err) promise.reject(err)
if(succ) promise.resolve(succ)
}, 0)
return promise
}
var test = false
function defineTest (data) {
test = data
}
myAsyncFunction()
.then(defineTest)
.catch(defineTest)
console.assert(test === true, 'Should be true')
test
// => true
Implementiere und Dokumentiere Promise
in Paradigmen. Dokumentiere die wichtigsten Teile jedes Paradigmas. Bei allen implementationen sollte im obigen Beispiel der assert
call true
zurückgeben. Promises sollten in mit diesen drei Methoden implementiert werden:
- Prototypisch
- Instanziirung einer Funktion
- ES6 Klassisch
function apiCallToMandrill (json) {
var promise = new Promise()
HTTP.post('http://api.mandrill.com/newMail', function (err, data) {
if(err) promise.reject(err)
promise.resolve(data)
})
return promise
}
apiCallToMandrill({
mailTo: 'dinimuater@ls7.ch',
header: 'Hallo',
body: 'Mueter'
})
.then(function (data) {
console.log(data)
})
.catch(function (err) {
console.error(err)
})