Knockout: computable observable vs función

Cuando se utiliza el knockout, ¿cuál es la ventaja de usar observables computados de solo lectura en lugar de funciones simples?

Tome el siguiente constructor de viewmodel y el fragmento de código html, por ejemplo:

var ViewModel = function(){
    var self = this;
    self.someProperty = ko.observable("abc");
    self.anotherProperty = ko.observable("xyz");
    self.someComputedProperty = function(){
        return self.someProperty() + self.anotherProperty();
    };    
};

<input data-bind="value: someProperty"/>
<input data-bind="value: anotherProperty"/>
<p data-bind="text: someComputedProperty()"></p>

Todo aquí parece funcionar como cabría esperar, así que hay una razón por la que debería usar:

​var ViewModel = function(){
    var self = this;
    self.someProperty = ko.observable("abc");
    self.anotherProperty = ko.observable("xyz");
    self.someComputedProperty = ko.computed(function(){
        return self.someProperty() + self.anotherProperty();
    });    
};


<input data-bind="value: someProperty"/>
<input data-bind="value: anotherProperty"/>
<p data-bind="text: someComputedProperty"></p>

Me doy cuenta de que la documentación enhttp://knockoutjs.com/documentation/computedObservables.html afirma que "... los enlaces declarativos se implementan simplemente como observables computados", entonces, ¿eso significa que hay necesidad de que los use explícitamente en mis modelos de vista?

Respuestas a la pregunta(1)

Su respuesta a la pregunta