01
The Declarative Interface Model
The scaling problems of manual updates, the one-way flow from state to view, the component's input-output contract, binding markup to data, identity preservation in conditional and list rendering, and the reconciliation algorithm.
- 01 Why a Framework The scaling problems of updating an interface by hand; how the number of update paths grows, keeping state in two copies, the self-repairing shape of drift, and the work an interface framework takes over.
- 02 Declarative Rendering The pure function that produces the view from state; the cycle of one-way flow, the three conditions of purity, the difference between a view description and the tree, and the cost of fully rebuilding the description.
- 03 The Component Concept Splitting the view function into pieces; the contract made of a prop, an output callback, and local state, the identity of a component instance, the area re-render spreads through, and which component a piece of state should live in.
- 04 Template and Expression Syntax Binding markup to data; compiling a template once and running it many times, separating static and dynamic parts, the scope and limits of expressions, text escaping, and the distinction between attribute and property binding.
- 05 Conditional and List Rendering Views with a variable structure; the difference between not producing an element and hiding it, the cost of index matching versus keyed matching in list updates, the criteria for choosing a key, and the preservation of identity.
- 06 Reconciliation Comparing the new view description against the previous one; the virtual tree, the three assumptions that make comparison linear, producing the patch list, and a measured comparison against approaches that update without comparing.