Object Oriented Programming/Generic Programming

From Wikibooks, open books for an open world
Jump to navigation Jump to search

Generic Programming[edit | edit source]

"The key idea of generic programming or programming with templates is to define families of functions or classes. By providing the concrete type you get automatically a function or a class for this type. Generic programming provides similar abstraction like object-oriented programming."[1]

Proxies[edit | edit source]

"A proxy, in its most general form, is a class functioning as an interface to something else. The proxy could interface to anything: a network connection, a large object in memory, a file, or some other resource that is expensive or impossible to duplicate. In short, a proxy is a wrapper or agent object that is being called by the client to access the real serving object behind the scenes." [2]

Abstracting Classes[edit | edit source]

In this article along with the demo project, I will discuss Interfaces versus Abstract classes. The concept of Abstract classes and Interfaces is a bit confusing for beginners of Object Oriented programming. Therefore, I am trying to discuss the theoretical aspects of both the concepts and compare their usage. And finally, I will demonstrate how to use them with C#.

Abstracting Algorithms[edit | edit source]

The Significance of Uniformity[edit | edit source]

References[edit | edit source]

  1. [1], Object Oriented Generic and Functional programming
  2. Proxy_pattern