Skip to Content
Learning TypeScript 2.x - Second Edition
book

Learning TypeScript 2.x - Second Edition

by Remo H. Jansen
April 2018
Beginner content levelBeginner
536 pages
13h 21m
English
Packt Publishing
Content preview from Learning TypeScript 2.x - Second Edition

SOLID – the open/closed principle

The open/closed principle (OCP)  recommends that we design our classes and methods in a way that enables us to extend their behavior (open for extension) in the future without modifying their current behavior (closed for modification).

The following code snippet is not great because it does not adhere to the open/closed principle:

class Rectangle { 
    public width!: number; 
    public height!: number; 
} 
 
class AreaCalculator { 
    public area(shapes: Rectangle[] ) { 
        return shapes.reduce( 
            (p, c) => { 
                return p + (c.height * c.width); 
            }, 
            0 
        ); 
    } 
} 

The preceding code does not adhere to the open/closed principle because if we need to extend our program to also support circles, we will need to modify the existing AreaCalculator ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Mastering TypeScript - Fourth Edition

Mastering TypeScript - Fourth Edition

Nathan Rozentals
Learning TypeScript

Learning TypeScript

Josh Goldberg
TypeScript for Beginners

TypeScript for Beginners

Bharath Thippireddy

Publisher Resources

ISBN: 9781788391474Supplemental Content