Question

I have a difficulty in understanding the different between Refactoring and Aspect Oriented Programming.

I understand that Aspect Oriented Programming aims to increase modularity by separating cross cutting concerns, which also includes Code Duplication, tangling, etc.

But refactoring is also a process of restructuring code without changing its behavior and it also includes code duplication, etc.

Do I understand it wrong or is anybody can explain to me in an easy way how to understand those two? Thank you..

Was it helpful?

Solution

AOP and Refactoring are two different things. Refactoring has the goal to improve the internal qualities of the code without breaking the features/functionality visible to the user. AOP at the other side is a programming language paradigm introducing new language constructs like aspects and pointcuts for modularizing cross-cutting concerns. It can be used for refactoring the code to improve the modularity, but refactoring isn't its main goal.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top