Conceitos e as terminologias do AOP
1) Pointcut: um predicado que separa os pontos de junção. O conselho está associado a uma expressão de pointcut e é executado em pontos específicos de junção correspondido por ele (por exemplo, a execução de um método com determinado nome). O conceito de separação de junção, conforme correspondências com expressões de pointcut, é central para AOP, e Spring usa a linguagem de expressão de pointcut Aspect) por padrão.
II) Introduction: declara métodos ou campos adicionais em nome de um tipo. Spring AOP permite que você introduza novas interfaces (e uma implementação correspondente) para qualquer objeto recomendado. Por exemplo, você pode usar uma introdução para fazer um bean implementar uma interface IsModified a fim de simplificar o armazenamento em cache.
III) Target object: objeto que é aconselhado por um ou mais aspectos (também conhecido como objeto aconselhado). Uma vez que Spring AOP é implementado com proxies em tempo de execução, esse objeto sempre será um objeto com proxy.
Assinale alternativa correta:
A
I e III apenas são verdadeiras
B
I e II são verdadeiras
C
II e III são falsas
D
II e III são verdadeiras
E
Nenhuma das alternativas
Ed
mês passado
Vamos analisar cada uma das afirmações: I) Pointcut: A descrição está correta. Um pointcut é realmente um predicado que define pontos de junção onde um conselho pode ser aplicado. Portanto, essa afirmação é verdadeira. II) Introduction: A descrição também está correta. A introdução permite adicionar novos métodos ou campos a um tipo existente, e o exemplo dado sobre a implementação de uma interface é pertinente. Portanto, essa afirmação é verdadeira. III) Target object: A descrição está correta. O objeto alvo é aquele que é aconselhado por aspectos e, no contexto do Spring AOP, ele é sempre um proxy. Portanto, essa afirmação é verdadeira. Agora, vamos verificar as alternativas: A) I e III apenas são verdadeiras. (FALSO, pois II também é verdadeira) B) I e II são verdadeiras. (VERDADEIRO, pois ambas estão corretas) C) II e III são falsas. (FALSO, pois ambas são verdadeiras) D) II e III são verdadeiras. (VERDADEIRO, pois ambas estão corretas) E) Nenhuma das alternativas. (FALSO, pois temos alternativas verdadeiras) As alternativas B e D são verdadeiras, mas como a questão pede a alternativa correta e considerando que a B é a mais direta, a resposta correta é: B) I e II são verdadeiras.