Complete Web Development In Typescript - Beginner To Expert!
Last updated 2/2019
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 6.90 GB | Duration: 18h 19m
Last updated 2/2019
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 6.90 GB | Duration: 18h 19m
Build production-grade web apps by structuring and leveraging TypeScript's features in your JavaScript Web applications!
What you'll learn
Take a sneak peek at some more advanced type features such as aliasing, unions, guards, and intersections.
Build production-grade web applications by structuring applications and leveraging TypeScript's strong typing features in your JavaScript Web applications.
Introduce the Express. js web framework along with the real-time communication library Socket .IO and document database MongoDB
Write custom declaration files from scratch by relying on API documentation or by inspecting the module source code
Create single instances of classes throughout your apps with the Singleton pattern.
Broaden your knowledge of ES6 classes and how they relate to class-like pre-ES6 patterns.
Requirements
You should have knowledge of the syntax and language of JavaScript before taking this course. No prior knowledge of design patterns is required.
Description
Writing large applications in JavaScript is a challenge! TypeScript brings JavaScript down to earth by providing optional static typing and future JavaScript features today. TypeScript gives the developer instant feedback on the code they are writing in order to catch mistakes earlier in the development process. If you’re a developer looking to take advantage of dozens of features from the next generations of JavaScript without introducing a complex workflow to your project, then this Course is for you! This comprehensive 4-in-1 course is an A+ guide to building full-fledged, production-ready applications with TypeScript. To begin with, you’ll see how TypeScript helps you write maintainable applications and set up a cross-platform development environment for TypeScript. Moving further, you’ll learn about creational, structural, and behavioral design patterns to start using an IoC container in your TypeScript apps to increase extensibility, testability, and maintainability. Finally, you’ll develop a deeper understanding of the TypeScript type system and learn how to use it more effectively in the applications to build enterprise-ready, industrial-strength web applications.Towards the end of this course, you'll write better code with TypeScript’s language features. Build enterprise-ready, industrial-strength web applications.Contents and OverviewThis training program includes 4 complete courses, carefully chosen to give you the most comprehensive training possible.The first course, Introduction to TypeScript, covers building practical, maintainable and scalable applications using TypeScript. This course will guide you from a beginner’s level knowledge in JavaScript to being able to successfully start creating applications in TypeScript. Then we move onto the basics of TypeScript such as setting up your development environment and learning basic language features by building a simple utility application and extending it with more features. Finally, we explore some practical use cases, such as converting plain-old JavaScript to TypeScript and you’ll see how we tackle any issues faced such as external library references, dynamic typing, and more. By the end of the course, the viewer will be equipped to explain why TypeScript is advantageous for you and your team while also having a foundational knowledge of language features such as the type system, classes, interfaces, modules, and generics.The second course, Hands-On Web Development with TypeScript 3, covers building production-grade web applications by structuring applications and leveraging TypeScript's strong typing features in your JavaScript Web applications! This course is a perfect guide to learning the basics of TypeScript and creating simple web apps. As you know, writing large applications in JavaScript is a challenge. This course will help you overcome the difficulties and build web apps with ease. You'll learn to compile ordinary JavaScript so that the code you write in TypeScript will run in any browser that runs JavaScript. Next, you'll start to build an application and learn to use TypeScript to write well structured, type-safe, and scalable web front-end code. As you progress, you'll learn how to receive instant feedback on the code that you're writing in order to catch mistakes earlier in the development process. By the end of the course, you'll be confident enough to build the applications you want and need.The third course, Design Patterns in TypeScript, covers writing cleaner code and enhance your development skills with TypeScript design patterns. This course starts by exploring SOLID principles to write clean code. Then you will create new objects and the instance of classes with creational design Patterns. Next, you will utilize dependency injection with InversifyJS to create testable, maintainable, and extensible code. Moving on, you will explore structural design patterns to better express the relationships between different application entities. Lastly, you will investigate behavioral patterns to add flow to your applications and add levels of communication between your entities.The fourth course, Mastering TypeScript - Second Edition, covers writing better code with TypeScript’s language features. This course will take you on a journey through interacting with the type system to working efficiently with more advanced features of the language. It will strengthen your knowledge of TypeScript and help you see the benefits it brings. We use an example-based approach that walks you through a restaurant ordering sample application. In addition, we go one step further by showing you how to automate custom checks on a code base and how to close statically typed gaps.Towards the end of this course, you'll write better code with TypeScript’s language features. Build enterprise-ready, industrial-strength web applications.About the AuthorsKamran Ayub is a WebApps consultant and has been associated with the web industry since 2000. He specializes in both front-end and back-end development and is heavily involved in open source. Kamran has used TypeScript in large-scale open source projects since version 1.0. Currently situated in Minnesota, he has given talks on Demystifying TypeScript and TypeScript in Action multiple times over the past few years to different audiences and at different conferences such as his own workplace, the Twin Cities Code Camp, Minnesota Developer Conference, and Midwest .js. He has only received positive feedback on the sessions and is always excited to revamp them each year to update them and spread the love for TypeScript. He is excited to formally record a course on TypeScript where he can take the appropriate time to go over each of the topics he covers in his talks more in-depth and with the ability to focus on important points and explain.Tomasz Lelek is a Software Engineer, programming mostly in Java and Scala. He has been working with the Spark and ML APIs for the past five years with production experience in processing petabytes of data. He is passionate about nearly everything associated with software development and believes that we should always try to consider different solutions and approaches before solving a problem. Recently he was a speaker at conferences in Poland, Confitura and JDD (Java Developers Day), and also at Krakow Scala User Group. He has also conducted a live coding session at the Geecon Conference. He is a co-founder of www. initlearn. com, an e-learning platform that was built with the Java language. Dimitris Loukas is a software engineer currently part of a growing start-up building a revolutionary referral marketing platform with NodeJS, Angular, MySQL, Redis, and Docker. He is also developing trading software applications using C#, Aurelia and TypeScript. He is an author at Packt and has developed many video tutorials in C#, .NET Core and TypeScript. He has worked for two start-ups in the past, is active in the open source community, and loves taking up small side projects. He has developed microservices using C# and NodeJS and has also mastered Angular, Aurelia, and Vue. js. He is an early adopter of .NET Core and is fascinated by modern JavaScript and where the web is going.David Sherret is a software developer in the healthcare industry. Within that, he leads several projects including one that supports the logistics behind specialty pharmaceuticals and maintains a patented technology for reducing health insurance fraud. You can find him answering questions on the TypeScript tag on Stack Overflow.
Overview
Section 1: Introduction to TypeScript
Lecture 1 The Course Overview
Lecture 2 Cross-Platform Tooling with Visual Studio Code
Lecture 3 Installing and Configuring Node.js
Lecture 4 A Brief History of JavaScript
Lecture 5 Understanding JavaScript Types
Lecture 6 Advantages and Disadvantages of JavaScript
Lecture 7 Why TypeScript?
Lecture 8 Basic Features in TypeScript
Lecture 9 Advanced TypeScript Features
Lecture 10 Setting Up a Visual Studio Code Application
Lecture 11 Binary Math Refresher
Lecture 12 Implementing a Base64 Encoder
Lecture 13 Debugging in Visual Studio Code
Lecture 14 Adding an Encoder Interface
Lecture 15 Adding Support for Unicode Using Node.js
Lecture 16 Adding Another Encoder Implementation
Lecture 17 Choosing the Right Encoder with Options
Lecture 18 Refactoring for Testability
Lecture 19 Applying SOLID Principles
Lecture 20 Installing and Configuring Jasmine
Lecture 21 Writing Specifications in Jasmine
Lecture 22 Running Our Test Suite in Visual Studio Code
Lecture 23 Getting Draggabilly.js
Lecture 24 Setting Up Visual Studio Code
Lecture 25 Converting the Code
Lecture 26 Todo Application Overview
Lecture 27 Setting Up Visual Studio Code
Lecture 28 Converting the Server-Side Code
Lecture 29 Converting the Client-Side Code
Lecture 30 Node Library Overview
Lecture 31 Setting Up Visual Studio Code
Lecture 32 Writing Custom Declaration Files
Lecture 33 Converting the JS
Section 2: Hands-On Web Development with TypeScript 3
Lecture 34 The Course Overview
Lecture 35 Installing TypeScript
Lecture 36 Compiling First TypeScript Program
Lecture 37 Setup IDE and dev Environment
Lecture 38 Making Sense of TypeScript Errors
Lecture 39 Introduction to TypeScript Type System
Lecture 40 Creating JavaScript Application
Lecture 41 Walkthrough TypeScript Types Available
Lecture 42 Rewriting JavaScript App to TypeScript
Lecture 43 Understanding Namespaces
Lecture 44 Using Modules
Lecture 45 Creating a Typescript Application That Leverages Namespaces and Modules
Lecture 46 Using JavaScript Libraries from TypeScript Code
Lecture 47 Using Iterators and Generators for More Concise Codebase
Lecture 48 Leveraging Generics for Parametrization
Lecture 49 Guarding Correctness with Guard Types
Lecture 50 Using Intersections and Unions
Lecture 51 Using Mixins for Adding Behaviour to Existing Code-Base
Lecture 52 Using Decorators for Creating Fluent API
Lecture 53 Loading Optional Modules
Lecture 54 Calling Rest Services from TypeScript
Section 3: Design Patterns in TypeScript
Lecture 55 The Course Overview
Lecture 56 Introduction to SOLID
Lecture 57 The Single Responsibility Principle
Lecture 58 The Open/Closed Principle
Lecture 59 The Liskov Substitution Principle
Lecture 60 The Interface Segregation Principle
Lecture 61 The Dependency Inversion Principle
Lecture 62 Introduction to Design Patterns
Lecture 63 The Singleton Pattern
Lecture 64 The Factory Pattern
Lecture 65 Loose Coupling
Lecture 66 The Object Pool
Lecture 67 Introduction to Dependency Injection
Lecture 68 Creating a Custom Container
Lecture 69 Introduction to Decorators
Lecture 70 Adding Decorators to Our Container
Lecture 71 Introducing InversifyJS
Lecture 72 The Decorator Pattern
Lecture 73 The Adapter Pattern – Part 1
Lecture 74 The Adapter Pattern – Part 2
Lecture 75 The Facade Pattern
Lecture 76 The Composite Pattern
Lecture 77 The Strategy Pattern
Lecture 78 The Observer Pattern
Lecture 79 The Command Pattern
Lecture 80 The Template Method
Lecture 81 The State Pattern
Section 4: Mastering TypeScript
Lecture 82 The Course Overview
Lecture 83 Sample Application Overview
Lecture 84 Compiling TypeScript in the Sample Application
Lecture 85 Avoiding the any Type
Lecture 86 Implicit or Explicit Types
Lecture 87 Being Aware of Structural Typing
Lecture 88 Type Composition
Lecture 89 object Type
Lecture 90 Getting Specific with Literal Types
Lecture 91 Mapped Types for Greater Flexibility
Lecture 92 never Type
Lecture 93 Representing Data Objects
Lecture 94 Reducing Mistakes While Being Implicit
Lecture 95 Getting Serious with Strict Null Checks
Lecture 96 Compiler Options for Added Support
Lecture 97 Enforcing Rules and Coding Standards
Lecture 98 Verification with Syntax Tree Navigation
Lecture 99 Introduction: Before Moving
Lecture 100 Class-Like Pre-ES6 Patterns to TypeScript
Lecture 101 Class-Like Pre-ES6 Patterns to TypeScript (Continued)
Lecture 102 Static Class-Like Patterns in TypeScript
Lecture 103 Shortening a Class with Parameter Properties
Lecture 104 When to Use Arrow Function Properties
Lecture 105 Assert and Guard
Lecture 106 Making the Most of Type Guarding
Lecture 107 Multiple Function Signatures
Lecture 108 Rest and Spread
Lecture 109 Extending Built-In Types
Lecture 110 Code Refactoring
Lecture 111 Making the Most of let and const
Lecture 112 Working with Strings
Lecture 113 Enums
Lecture 114 Const Enums Versus Enums
Lecture 115 Moving to ES6 Modules
Lecture 116 Destructuring
Lecture 117 Definition Files
Lecture 118 Writing a Definition File
Lecture 119 Static Typing JavaScript Libraries on the Run
Lecture 120 Downloading and Managing Definition Files
Lecture 121 Included Definition Files
Lecture 122 Introduction to Generators
Lecture 123 Improving Performance and Efficiency with Generators
Lecture 124 Easier Asynchronous Code with Async/Await
Lecture 125 Harnessing the Power of Decorators
Lecture 126 Advanced Decorators
An experienced Software Development Professionals, Web Development Professional, JavaScript Developer, or a beginner in TypeScript, looking to up application development skills using the TypeScript.,If you are a server-side developer with a preference toward languages such as Java and C#, this course is also for you.