2009-10-15 5 views

Respuesta

8

Suele significar "cosas que quieres hacer en muchos lugares, lo que no tiene mucho que ver con la carne real de esa pieza de código".

Los ejemplos más comunes son:

  • manejo
  • seguridad de las transacciones
  • de registro
  • manejo

encuentro se suele mencionar con respecto a Aspect-Oriented Programming (AOP) de error que por lo general los intentos para manejar cosas como esta de manera declarativa, por ejemplo con atributos/anotaciones Como una gran simplificación, se trata de aplicar un código de placa de caldera (por ejemplo, para verificar la identidad/autoridad del usuario en el contexto actual, o para registrar la entrada/salida del método) automáticamente sin hacer que el código en sí sea complicado.

2

Te recomiendo que mires un marco como Postsharp y pruebes el ejemplo this del sitio de postsharp. Si conoces java a lok en AspectJ, vale la pena echarle un vistazo. Pero primero es posible que desee leer el enlace publicado por Jon Skeet :)

3

El ejemplo estándar de "hello world" para el corte transversal es el registro: Tiene un error en su sistema de producción y no tiene idea de lo que está pasando. Para resolverlo, realmente necesita ver qué funciones de su código se llaman y qué parámetros obtienen y qué devuelven.

Esta es una tarea simple que puede automatizarse por completo: Ubique todas las funciones (o un subconjunto utilizando un filtro de algún tipo) y agregue una llamada de registro que imprima el nombre y los parámetros. Como el código contiene toda la información que necesita para completar esta tarea, lo que realmente desea es una herramienta que lo haga por usted y lo haga en un solo lugar (en lugar de tener que editar miles de archivos de origen añadiendo declaraciones de registro en todas partes).

Cuestiones relacionadas