Diferença entre manipulador, gerente e controlador

16

Existe alguma diferença entre nomear uma classe "Handler", "Manager" ou "Controller"? IE: PurchaseManager , PurchaseHandler , PurchaseController .

Estes são suficientes para transmitir o mesmo significado ou existe uma clara diferença entre eles?

Se não houver uma resposta independente de linguagem, considere Java como a linguagem.

    
por hpique 07.06.2011 / 19:03
fonte

2 respostas

13

Normalmente, um "Controlador" é a interface entre um componente da interface do usuário e um modelo (por exemplo, Compra). Controladores devem ser classes thin, fazendo pouco mais do que mapear eventos da interface do usuário para modelar funções.

Um 'Gerente' é um cheiro de código. A compra deve ser gerenciada por si mesma ou pode ser gerenciada por uma classe proprietária, como Fornecedor ou Comprador.

Um 'Manipulador' é geralmente uma única função envolvida em um objeto. Estes são necessários quando se programa em linguagens legadas sem funções de primeira classe.

    
por 07.06.2011 / 19:12
fonte
6

Embora minha resposta não seja baseada em definição, vejo algo rotulado como "Controlador" como uma implementação exclusiva versus um "Manipulador" como inclusive . Eu esperaria ver apenas uma existência de um "PurchaseController" e várias versões possíveis de um "PurchaseHandler".

Acho que outro nome comum para o Controller é "Broker" - que altera ligeiramente a perspectiva sobre ele.

    
por 07.06.2011 / 19:23
fonte

Tags