It is called a command response model.
Imagine that you want to know the time,
If you have a watch, you will look at it, and immediately find out the time.
If you don't have a watch, you will ask someone the time, that person will check his watch and then tell you the time. This takes longer, and you have to ask for the data, but it is a much better practice for IoT.
Being able to use serialRead directly to read the data is like having a watch. The watch is continuously telling (or rather showing) you the time, regardless of whether you are listening to (or rather looking at). When you do look at the watch, you get the time directly.
If every device that you build has such a system, it will start congesting the IoT communication stream, and then decay your quality of service.
In a standard system, it's best to ask for the latest data from your end product, so that you have fresh data, and you don't congest your network.