Todos os comandos que um usuário pode querer executar estão no PATH. É para isso que serve. Isso inclui comandos que você executa diretamente, comandos que outras pessoas executam diretamente e comandos que você ou outras pessoas executam indiretamente porque são invocados por outros comandos. Isso não se limita aos comandos executados a partir de um terminal: os comandos executados a partir de uma GUI também são pesquisados no caminho de busca de comandos (novamente, é para isso).
Precisando digitar o caminho completo seria terrível: você precisaria descobrir qual é o caminho completo! Você precisaria acompanhar se está dentro /usr/bin
(que contém a maioria dos programas fornecidos com o sistema operacional) ou dentro /usr/local/bin
(que contém programas instalados manualmente pelo administrador, bem como programas que não fazem parte do SO principal em alguns variantes unix) ou em algum outro diretório específico do sistema ou em algum lugar do diretório inicial do usuário.
É difícil responder sobre o "impacto no desempenho ou na manutenção" porque você não diz com o que está comparando. Se você está comparando com a necessidade de digitar o caminho completo em qualquer lugar, esse é um pesadelo para a manutenção: se você mudar de local um programa ou se quiser instalar uma versão mais recente do que a que veio com o sistema operacional ou foi instalada por um administrador de sistema, você tem que substituir esse caminho completo em todos os lugares. O impacto no desempenho de procurar o nome em alguns diretórios é insignificante.
Se você está comparando com o Windows, é ainda pior: alguns programas adicionam não apenas o executável, mas também todo tipo de lixo ao PATH, e você acaba com uma PATH
variável de uma milha que ainda não inclui todos os programas, porque muitos programas não se adicionam ao PATH do sistema quando você os instala.