Promoção no ar
Tempo restante da oferta:
03 Horas
51 Min
50 Seg
Assinar →

O que é AOP - Programação Orientada a Aspectos?

Conheça a programação orientada a aspectos e o por que utilizá-la.

Marylene Guedes 6 anos atrás

Atualmente, existem vários paradigmas de programação, como por exemplo o paradigma orientado a objetos, onde temos instâncias de classes trocando mensagens entre si. Da mesma forma, também temos o paradigma funcional, onde podemos falar que existem funções que seguem alguns conceitos matemáticos interagindo entre si. Hoje, vamos abordar um outro tipo de paradigma: o AOP - Aspect Oriented Programming, ou Programação Orientada a Aspectos.

O que é a Programação Orientada a Aspectos?

O paradigma orientado a aspectos é um paradigma baseado em meta informações. Primeiramente devemos saber que meta informação é, resumidamente, uma “informação de uma informação”.

Por exemplo, vamos imaginar o seguinte: você tem um carro e esse carro é da cor “preta”. Essa é uma informação do carro, porém “preta” é um atributo. “Cor” seria uma meta informação do carro em um contexto onde a informação a ser tratada é o veículo em si. Já “preta” seria o valor do atributo “cor”, mas esse valor de atributo só tem “significado” ou “força” se sabermos sobre o que “cor” se trata, ou seja: se soubermos a meta informação – ou significado – de “cor”.

Às vezes, nos deparamos com responsabilidades que são difíceis de isolar ou que exigem a escrita de código que não fazem parte do domínio da aplicação; porém, ainda dizem respeito à aspectos essenciais.

A programação orientada a aspectos vem para nos ajudar nisso, pois é uma abordagem que permite a separação dos componentes funcionais de uma forma concisa, utilizando-se de mecanismos de abstração e de composição. O termo “aspecto” se refere aquilo que faz parte da aparência de algo.

O objetivo da programação orientada a aspectos é oferecer suporte para o desenvolvedor na tarefa de separar componentes entre si e os aspectos entre si, utilizando-se de mecanismos que permitam a abstração e composição destas.

Alguns exemplos seriam o gerenciamento de transações, logs, cache, indexação de dados etc.

Alguns conceitos…

• Join points: são os pontos que possuem algum aspecto associado. São os métodos da aplicação que necessitam da execução de algum aspecto;

• Point cuts: são expressões que identificam os join points, onde podemos usar namespaces, classes e expressões regulares para identificar os join points;

• Advices: são fragmentos de código que contêm o comportamento de um aspecto. Existem alguns tipos como Before, After e outros, onde cada um define em que momento da execução do join point, o comportamento do aspecto deverá ocorrer.

Curso Lógica Orientada a Objetos - Primeiros Passos Conhecer o curso

Por que utilizar esse paradigma?

Como esse paradigma geralmente envolve conceitos que independem da camada e não tem relação direta com os requisitos funcionais de um sistema, temos alguns benefícios como a reutilização, clareza e desacoplamento do código.

A programação orientada a aspectos também possibilita fazer a devida separação de responsabilidades, considerando funcionalidades que são essenciais para um grupo de objetos, mas não são de responsabilidade direta deles.

Continue lendo

Artigos relacionados

Um ano de acesso total para você viver de programação.

Todos os cursos e formações da TreinaWeb numa única assinatura, com professores que atuam no mercado, suporte direto e certificados. Do primeiro console.log ao mercado de trabalho.

  • 1 ano de acesso a todos os cursos
  • Cursos novos toda semana
  • Suporte direto com professores
  • Plano de carreira personalizado
  • Certificados digitais inclusos
  • Aplicativos para Android e iOS, com acesso offline
Garantia incondicional de satisfação

Teste por 7 dias e, se não fizer sentido para você, devolvemos seu dinheiro.

Acesso completo a todos os cursos e dezenas de Formações.

12 meses
Economize R$ 840,00 54% OFF

de 12x R$ 129,00 por apenas

12x R$ 59,00

sem juros no cartão de crédito ou R$ 599,00 à vista

Oferta termina em 03h 51min 50s

  • Acesso imediato e ilimitado durante 1 ano.
  • Plano de carreira personalizado.
  • Suporte direto com professores.
  • E muito mais!
Matricule-se agora