Skip to content

Latest commit

 

History

History
26 lines (17 loc) · 600 Bytes

abstraction.md

File metadata and controls

26 lines (17 loc) · 600 Bytes

Abstraction

Abstraction is the process of defining general format for different methods in a program.

For example if we consider the following program that applies the square twice on a given number, we can create an abstraction for that function in the described manner compare to creating a method which apply the same function twice on a given number.

function square(n) {
  return n * n;
}

function applySquareTwice(n) {
  return square(square(n));
}

applySquareTwice(2); // 16

// Abstracted Function

function applyTwice(n, f) {
  return f(f(n));
}

applyTwice(2, square); // 16