CSC/ECE 517 Fall 2009/wiki2 7 co

From Expertiza_Wiki
Revision as of 01:40, 5 October 2009 by Jlmatloc (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

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