Moving from components to composable functions
So far, I explained the word component by saying that it refers to UI elements. In fact, the term is used in quite a few other areas. Generally speaking, components structure systems by separating distinct portions or parts of them. The inner workings of a component are typically hidden from the outside (known as the black box principle).
Tip
To learn more about the black box principle, please refer to https://en.wikipedia.org/wiki/Black_box.
Components communicate with other parts of the system by sending and receiving messages. The appearance or behavior of a component is controlled through a set of attributes, or properties.
Consider TextView
. We set text by modifying the text
property and we control its visibility through visibility
. What about sending and receiving messages? Let's look at Button
. We can react to clicks (receive a message) by registering (sending a message) an OnClickListener
instance. The same principle...