Introduction: About Verilab
Chapter 1 Introduction to AOP
1.1 What are aspects—part I?
1.2 Why do I need aspects? What’s wrong with cross cutting concerns?
1.3 Surely OOP doesn’t have any problems?
1.4 Why does AOP help?
1.5 Theory vs. real life—what else is AOP good for?
1.6 What are aspects—part II?
Chapter 2 AOP in e
2.1 How do I extend a class?
2.2 How do I extend a class for multiple values of a determinant?
2.3 How do I extend a type?
2.4 How do I introduce a new non-coverage member to a class?
2.5 How do I introduce a coverage group to a class?
2.6 How do I extend a coverage group?
2.7 How do I change the behaviour of a method?
2.8 How do I limit the scope of my extensions?
2.9 Using return in method advice
2.10 Controlling the order of method extension calls
Chapter 3 Using AOP to Organise your Code
3.1 A word about style
3.2 What aspects do I want to use?
3.3 Mapping aspects to files
Chapter 4 Creating Flexible Code
Chapter 5 Creating Pluggable Code
5.1 The extendable case statement
5.2 The factory pattern
Chapter 6 Improving your Productivity
6.1 Shifting the power
6.2 Dealing with broken code
6.3 Handling workarounds
6.4 Reducing and deferring class complexity
6.5 Adding problem specific functionality
6.6 Reducing the OOP induced overhead
Chapter 7 AOP in Action
7.1 Creating a class with a selectable algorithm
7.2 Creating a configuration interface for an eVC
7.3 Using aspects to create a layered verification environment
7.4 Creating r