Code - Reusable (Duplicate) - Program Structure

Card Puncher Data Processing


A powerful concept in most modern programming languages is the ability to group code into reusable units.

Reusable units are:

Reusability of code can happen on different levels:

By wrapping code, you can call it wherever you want, without resorting to copy-and-paste.

Wrapping code introduce the notion of dependency.

Before software can be reusable it first has to be usable.

Ralph Johnson

Even if you aren't developing reusable components, thinking in these terms tends to improve the quality of the software you write.

Code should be reused rather than copied.


With reusability, a language needs to implement an import functionnalities in order to locate the reusable.

Rule of thumb

A good rule of thumb is that if a component:

  • is used several times,
  • or is complex enough on its own

it's a good candidate to be a reusable component. See Code - Refactoring

Minimal set of operations that your app needs. DRY: Don't Repeat Yourself.

How to decide if you should create a new function or object ?

Single responsibility principle: a component should ideally only do one thing. If it ends up growing, it should be decomposed into smaller subcomponents.

Only for big function

Discover More
Sorting Quicksort Anim
Algorithm - Polymorphic

An algorithm is said to be polymorphic if the same method can be used on many different implementations. algorithms are reusable functionality.
Card Puncher Data Processing
Ansible - Role

Roles is the reusable unit of Ansible. You may think of it as a function. It: helps make playbook content self-contained works well with things like git submodules for sharing content with others....
Bad Integration
Art of Programming - Integration of reusable (app, module, )

Integration of reusable (module, system, ...) ReducingKen Beck Mario Fusco Tim...
Code Refactoring
Code - Refactoring

The process of modifying the code structure, without modifying its current behavior, is called Refactoring. Refactoring is a method that search to improve the code quality of a program. code duplication...
Card Puncher Data Processing
Code Shipping - (Library|Package)

A library is a component meant to be consumed either by: another library or an application. A library is also known as a package. ( scope/directory ) Library are reusable software components...
Card Puncher Data Processing
Language - (Import|Include|Require)

import basically makes names (generally of function) available to the current script. To load modules, language uses different expression: imports includes. require (Node) The import functionality...
Card Puncher Data Processing
Language - Reusable Block

Re-usability in code. A reusable block is a block of code that have a name and therefore can be called (ie reused) with parameters List: a function body, a class definition (ie object)
React - Component (User-defined Element)

A component is a user-defined react element in the React tree. Components let you split the UI into independent, reusable pieces, and think each piece in isolation. Conceptually, components are like...
Card Puncher Data Processing
The Art of Programming - Information System and Software Design

The Art of Programming - Information System and Software Design This section is about how to use the basic block of a language in order to create high order component. Abstract:_The_Art_of_DesignThe...
Card Puncher Data Processing
UI - Usability


Share this page:
Follow us:
Task Runner