Diferido versus promessa

Qual é a diferença entre Deferred e Promise além das versões do jQuery?

O que devo usar para minha necessidade? Eu só quero ligar para ofooExecute(). Eu só preciso dofooStart() efooEnd() para alternar o status div html por exemplo.

//I'm using jQuery v2.0.0
function fooStart() { /* Start Notification */ }
function fooEnd() { /* End Notification */ }
function fooExecute() { /* Execute the scripts */ }

$('#button1').on('click', function() {
    var deferred1 = $.Deferred();
    var promise1 = $.Promise();

    deferred1.???

    promise1.???
});

questionAnswers(2)

yourAnswerToTheQuestion