O dispatcher da função Solidity é uma árvore em que:
- Os nós internos executam divisões binárias.
- Os nós folha contêm até 4 seletores de função, testados linearmente.
Dica 1: o bytecode da função 'fallback' é gerado duas vezes no bytecode. Para reduzir o tamanho do bytecode, encapsule a lógica de fallback em uma função interna.
Dica 2: se você tiver uma função usada com muita frequência, crie um alias com um seletor de função '0x00000000', o que o torna o mais barato de pesquisar.