Login | Register   
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: C++
Expertise: All
Jan 8, 1999

Designing Legacy Code Wrapper Classes

In many systems, legacy C code is combined with newer C++ code. A common (yet wrong) practice is to wrap the C functions in a single C++ class and create a single instance thereof, which provides as its interface a series of operations mapped directly to the legacy functions. However, such a general wrapper class is not recommended. It allows indiscriminate access to a variety of unrelated operations. In addition, it isn't really an object-oriented solution; rather, such a class is merely a collection of operations. A better design approach is to divide the legacy functions into meaningful, self-contained units and wrap each unit by a dedicated class. For example, instead of wrapping a bunch of legacy networking functions in a large class, it is advisable to group these functions according to specific protocols.
Danny Kalev
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap