What is the main purpose / family of use-cases for the existence of internal functions in solidity?
Internal Functions cannot be called by other external smart contract or wallet directly. But internal or public function within smart contract and call internal function.
Internal functions are used Mostly in below way.
We write a public function, which do some security checks.
After sucessful security checks the public function calls internal function.
and then calls
_transfer() internal function which transfers the token.
You could have done this in once public function. But this is how every code is written in standard format. As
_transfer() is used many times i.e. in
transferFrom() public function also calls
_transfer() internal function.