SOLID – the single responsibility principle

All our classes should adhere to the single responsibility principle (SRP). The Person class declared during the very first example in this chapter represents a person, including all of their characteristics (attributes) and behaviors (methods). We are going to modify the preceding class by adding an email as validation logic:

class Person { public name: string; public surname: string; public email: string; public constructor( name: string, surname: string, email: string ) { this.surname = surname; this.name = name; if (this.validateEmail(email)) { this.email = email; } else { throw new Error("Invalid email!"); } } public validateEmail(email: string) { const re = /S+@S+.S+/; return re.test(email); ...

Get Learning TypeScript 2.x - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.