Cut-off refers to things that have the same commonality in the code you write in different parts of the project. It may be a special way of handling exceptions in your code, recording method calls, time processing, re-executing some methods, and so on. If you do not use any of the class libraries that face-cutting programming to do these things, you will leave some very simple and repetitive code in your entire project that will make your code difficult to maintain. For example, some methods in your business logic layer need to be logged, some exceptions need to be processed, some executions need to be timed, database operations need to be retried, and so on.
One feature of crosscutting concerns is that they often occur in many of the core concerns and are essentially similar everywhere. such as permission authentication, logging, transaction processing.
The role of AOP separates the core concerns from the crosscutting concerns in the separation system.
AOP technology is based on the reflection mechanism and dynamic agent mechanism of language.
Aspect oriented Programming (AOP)