Once again, this was a heavy chapter that focused primarily on functions, including the address
functions and the pure
, constant
, and view
functions. The address
functions can be intimidating, especially when you consider their multiple variations and their relationship with the fallback functions. If you are implementing a fallback function, remember to pay special attention to testing, especially from a security point of view. You should also pay special attention when using low-level Solidity functions such as send
, call
, and transfer
as they invoke the fallback function implicitly. Always try using contract functions that use ABI as it ensures that the proper function, along with its data types, is being called.
In the next chapter, we will dive deep into the world of events, logging, and exception handling in Solidity. Stay tuned!