Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying TypeScript Design Patterns
  • Table Of Contents Toc
  • Feedback & Rating feedback
TypeScript Design Patterns

TypeScript Design Patterns

By : Vane
3.7 (3)
close
close
TypeScript Design Patterns

TypeScript Design Patterns

3.7 (3)
By: Vane

Overview of this book

In programming, there are several problems that occur frequently. To solve these problems, there are various repeatable solutions that are known as design patterns. Design patterns are a great way to improve the efficiency of your programs and improve your productivity. This book is a collection of the most important patterns you need to improve your applications’ performance and your productivity. The journey starts by explaining the current challenges when designing and developing an application and how you can solve these challenges by applying the correct design pattern and best practices. Each pattern is accompanied with rich examples that demonstrate the power of patterns for a range of tasks, from building an application to code testing. We’ll introduce low-level programming concepts to help you write TypeScript code, as well as work with software architecture, best practices, and design aspects.
Table of Contents (10 chapters)
close
close
Free Chapter
1
1. Tools and Frameworks
In Progress | 0 / 5 sections completed | 0%
2
2. The Challenge of Increasing Complexity
In Progress | 0 / 5 sections completed | 0%
3
3. Creational Design Patterns
In Progress | 0 / 7 sections completed | 0%
6
6. Behavioral Design Patterns: Continuous
In Progress | 0 / 7 sections completed | 0%
7
7. Patterns and Architectures in JavaScript and TypeScript
In Progress | 0 / 5 sections completed | 0%

Liskov substitution principle


The open-closed principle is the essential principle of keeping code maintainable and reusable. And the key to the open-closed principle is abstraction with polymorphism. Behaviors like implementing interfaces, or extending classes make polymorphic shapes, but that might not be enough.

The Liskov substitution principle declares that derived classes must be substitutable for their base classes. Or in the words of Barbara Liskov, who raised this principle:

What is wanted here is something like the following substitution property: If for each object o1 of type S there is an object o2 of type T such that for all programs P defined in terms of T, the behavior of P is unchanged when o1 is substituted for o2 then S is a subtype of T.

Never mind. Let's try another one: any foreseeable usage of the instance of a class should be working with the instances of its derived classes.

Example

And here we go with a straightforward violation example. Consider Noodles and InstantNoodles...

Unlock full access

Continue reading for free

A Packt free trial gives you instant online access to our library of over 7000 practical eBooks and videos, constantly updated with the latest in tech

Create a Note

Modal Close icon
You need to login to use this feature.
notes
bookmark search playlist download font-size

Change the font size

margin-width

Change margin width

day-mode

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Delete Bookmark

Modal Close icon
Are you sure you want to delete it?
Cancel
Yes, Delete

Delete Note

Modal Close icon
Are you sure you want to delete it?
Cancel
Yes, Delete

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY