CSC/ECE 517 Fall 2009/wiki2 7 co
Code Reuse Mechanisms
Different languages have different mechanisms for "code reuse". Assembly and low level languages have macros, C/C++ has includes, Ruby has mixins and modules, Java has packages, and there are many other concepts around reuse and extension. Write a page that describes the various mechanisms, group the mechanisms into logical categories, and discuss the advantages and disadvantages of the various schemes, in terms of simplicity, performance, reliability, or other factors.
Code Reuse
- Cut & Paste
- Macros
- Functions/Methods
- Includes
- Libraries
- Packages
- Inheritance
- Polymorphism
- Generics
- Mixins/Modules
- Aspect
- Patterns
Reasons Not to Reuse
- Speed
- Lack of documentation
- Complexity
- Poor Design
- Lack of Trust/Fear