Book Image

Hands-On Full Stack Web Development with Angular 6 and Laravel 5

By : Fernando Monteiro
Book Image

Hands-On Full Stack Web Development with Angular 6 and Laravel 5

By: Fernando Monteiro

Overview of this book

Angular, considered as one of the most popular and powerful frontend frameworks, has undergone a major overhaul to embrace emerging web technologies so that developers can build cutting-edge web applications. This book gives you practical knowledge of building modern full-stack web apps from scratch using Angular with a Laravel Restful back end. The book begins with a thorough introduction to Laravel and Angular and its core concepts like custom errors messages, components, routers, and Angular-cli, with each concept being explained first, and then put into practice in the case-study project. With the basics covered, you will learn how sophisticated UI features can be added using NgBootstrao and a component-based architecture. You will learn to extend and customize variables from Bootstrap CSS framework. You will learn how to create secure web application with Angular and Laravel using token based authentication. Finally, you will learn all about progressive web applications and build and deploy a complete fullstack application using Docker and Docker-compose. By the end of this book, you'll gain a solid understanding of Angular 6 and how it interacts with a Laravel 5.x backend
Table of Contents (13 chapters)

Understanding interfaces, classes, and generics in TypeScript

Object-Oriented Programming (OOP) is a very old programming concept, used in languages such as Java, C#, and many others.

One of the advantages of using TypeScript is being able to bring some of these concepts into your JavaScript web applications. In addition to being able to use classes, interfaces, and more, we can easily extend import classes and import modules, as we will see in the coming examples.

We know that using classes in pure JavaScript is already an option, with the use of ECMAScript 5. Although it is similar, there are some differences; we will not address them in this chapter, so that we do not confuse our readers. We will only focus on the implementations adopted in TypeScript.

Creating a class