Doc: Describe property bindings in terms of relationships
authorSze Howe Koh <szehowe.koh@gmail.com>
Wed, 14 May 2014 14:33:34 +0000 (22:33 +0800)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Fri, 16 May 2014 01:45:07 +0000 (03:45 +0200)
commitea401b8ebff8ee58f6db7b1c623883a72365a2b8
tree9156aee24509c117d111ba41c6fa66067ab5ea33
parentd3064953f12d780e06578d97990533c93b3c2781
Doc: Describe property bindings in terms of relationships

- This patch aims to help readers think about bindings more
  "declaratively" by introducing a new (albeit very leaky) level of
  abstraction: Treat bindings as finitary relations, rather than mere
  JavaScript expressions.

- In essence, property bindings are for describing relationships between
  properties. The fact that the QML engine reactively updates a
  property's value when its dependencies change, and the fact that
  arbitrarily complex expressions are valid bindings, are simply
  implementation details.

- Discourage the use of side effects in property bindings. They are not
  essential for the main purpose of property bindings, they break the
  finitary relation model, and their use can reduce code
  readability/maintainability/toolability.

- Discourage complex property bindings for similar reasons.

Change-Id: I5a0a03bd02768d4c504797a0f86569f3ac066e96
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
src/qml/doc/src/cppintegration/exposecppattributes.qdoc
src/qml/doc/src/javascript/expressions.qdoc
src/qml/doc/src/javascript/topic.qdoc
src/qml/doc/src/qmllanguageref/documents/scope.qdoc
src/qml/doc/src/qmllanguageref/syntax/propertybinding.qdoc
src/quick/doc/src/concepts/convenience/topic.qdoc