Chapter 10
Reading and Writing
Once a contract is deployed, interaction usually falls into two categories: reading state and changing state. Frontends use the same ABI for both, but the user experience and network behavior are very different.
Reads are lightweight because they ask a node to simulate execution against current state. Writes are heavier because they require a signed transaction, gas, and block inclusion before the chain records a new result.
Under the hood, both paths still rely on the contract ABI, which tells tools how to encode function names and arguments into calldata. The ABI is the bridge between human-readable functions and machine-readable bytes.
Good contract interfaces separate these two modes clearly. Users should know when they are only inspecting data and when they are about to authorize a state change that could cost money or permissions.