← Glossário
Glossário · Dev

O que é Hooks?

São pontos de conexão que permitem que você intervenha e execute operações personalizadas em momentos específicos durante o processo de execução do software.

Definição

Enquanto um software está em execução, são portas especiais deixadas pelos desenvolvedores para que possam injetar seu próprio código no fluxo principal. Dessa forma, sem alterar o programa principal, você pode garantir que seus próprios comandos sejam executados quando um evento específico ocorrer. Por exemplo, você pode usar um hook para dizer ao sistema para fazer um backup automaticamente quando um arquivo for salvo.

Analogia: É como uma passagem secreta adicionada ao sistema de segurança de um prédio; em vez de entrar pela porta principal, você instala um mecanismo especial que é ativado quando um alarme específico toca.

Como funciona

Os desenvolvedores de software colocam marcadores dentro do código principal, como 'quando chegar aqui, execute esta função'. Você personaliza o processo conectando seu próprio código a esses marcadores. Graças a esse método, mesmo que o software principal seja atualizado, os recursos que você adicionou continuam funcionando.

Onde é usado

Você os encontrará frequentemente nos bastidores de sites, em frameworks de desenvolvimento de aplicativos e em sistemas de plugins.

Costuma ser confundido com

Podem ser confundidos com plugins; enquanto os hooks são mais um ponto de conexão em nível de código, os plugins oferecem recursos de escopo mais amplo.

Perguntas frequentes

Por que não alteramos o código principal diretamente?

Alterar o código principal faz com que todas as suas modificações sejam excluídas quando o software é atualizado; os hooks, por outro lado, não são afetados pelas atualizações.

Termos relacionados

Ferramentas relacionadas

Esta explicação foi escrita em linguagem simples para a TreScout e traduzida automaticamente do original em turco · a versão turca é a que vale. Se algo parecer errado ou faltando, escreva para hello@trescout.com. Ler em turco →