Understanding TypeScript
What you’ll learn
Use TypeScript and its Features like Types, ES6 Support, Classes, Modules, Interfaces and much more in any of their Projects
Understand what TypeScript really is about and how it works
Why TypeScript offers a real advantage over vanilla JavaScript
Learn TypeScript both in theory as well as applied to real use-cases and projects
Learn how to combine TypeScript with ReactJS or NodeJS / Express
Requirements
JavaScript knowledge is required, though you don’t need to be an Expert
NO prior TypeScript experience is required
ES6 Knowledge is a plus but not required
Description
Join this bestselling, completely updated course to learn TypeScript from the ground up, in great depth!Learn what TypeScript is, why it really is a powerful addition to JavaScript, what its features are and how to use it! Learn why TypeScript is amazing, how it improves your JavaScript code and how it helps you avoid nasty bugs and errors!This course takes you from the very basics and its most important feature (types!) to the point where you’re able to use TypeScript in any of your projects. ReactJS projects included!As TypeScript is developed by Microsoft and strongly advertised and used by Angular 2+ (Google) and other popular libraries, it’s here to stay. Indeed, TypeScript is one of the most popular web development languages you can learn these days!Gain an edge today and be amongst the first to really understand TypeScript!Learn how you can use TypeScript to bring modern JS features like destructuring, arrow functions or classes to any environment and codebase – even if it does not support those features yet! Understand which types you may use and how you can build your own types. Learn how to write better code with types and with the many features offered by TypeScript!But, in this course, we’ll not stop after the basics! You will also learn about more advanced features (like decorators) and also how to set up workflows with TypeScript. This includes a TypeScript-only workflow as well as a webpack workflow.You’ll also learn that you’re not limited to Angular or plain JavaScript/ TypeScript projects. Instead, a complete module covers how you may use TypeScript with ReactJS and improve your React code with TypeScript as well.Practice what you learn!Watching videos is a great way to learn. And to a lot of students, it’s the best way. If you also want to practice the things you learn, this course offers you more than that though. Because this course comes with plenty of exercises (and solutions, of course) in addition to all the high-quality learning videos.So much Content!I’m not a fan of these courses which teach you the basics and then leave you alone. Instead, in this course you’ll get insights into:Types and how to use themHow the TypeScript compiler works (and how you may configure it)ES6 features with TypeScriptClasses in TypeScriptNamespaces and modulesInterfacesGenericsDecoratorsHow to integrate Third-Party JavaScript libraries into your TypeScript projectsHow to set up a TypeScript project with webpackOr how to set up a plain-TypeScript workflowHow to use TypeScript together with ReactJSHow to use TypeScript together with Node/ ExpressReal projects and use-cases!And so much more!
Overview
Section 1: Getting Started
Lecture 1 Welcome to the Course!
Lecture 2 What Is TypeScript & Why Should You Use It?
Lecture 3 Join Our Learning Community
Lecture 4 Installing & Using TypeScript
Lecture 5 TypeScript Advantages – Overview
Lecture 6 Course Outline
Lecture 7 How To Get The Most Out Of The Course
Lecture 8 Setting Up A Code Editor / IDE
Lecture 9 The Course Project Setup
Section 2: TypeScript Basics & Basic Types
Lecture 10 Module Introduction
Lecture 11 Using Types
Lecture 12 TypeScript Types vs JavaScript Types
Lecture 13 Important: Type Casing
Lecture 14 Working with Numbers, Strings & Booleans
Lecture 15 Type Assignment & Type Inference
Lecture 16 Object Types
Lecture 17 Nested Objects & Types
Lecture 18 Arrays Types
Lecture 19 Working with Tuples
Lecture 20 Working with Enums
Lecture 21 The “any” Type
Lecture 22 Union Types
Lecture 23 Literal Types
Lecture 24 Type Aliases / Custom Types
Lecture 25 Type Aliases & Object Types
Lecture 26 Function Return Types & “void”
Lecture 27 Functions as Types
Lecture 28 Function Types & Callbacks
Lecture 29 The “unknown” Type
Lecture 30 The “never” Type
Lecture 31 Wrap Up
Lecture 32 Useful Resources & Links
Section 3: The TypeScript Compiler (and its Configuration)
Lecture 33 Module Introduction
Lecture 34 Using “Watch Mode”
Lecture 35 Compiling the Entire Project / Multiple Files
Lecture 36 Including & Excluding Files
Lecture 37 Setting a Compilation Target
Lecture 38 Understanding TypeScript Core Libs
Lecture 39 More Configuration & Compilation Options
Lecture 40 Working with Source Maps
Lecture 41 rootDir and outDir
Lecture 42 Stop Emitting Files on Compilation Errors
Lecture 43 Strict Compilation
Lecture 44 Code Quality Options
Lecture 45 Debugging with Visual Studio Code
Lecture 46 Wrap Up
Lecture 47 Useful Resources & Links
Section 4: Next-generation JavaScript & TypeScript
Lecture 48 Module Introduction
Lecture 49 “let” and “const”
Lecture 50 Arrow Functions
Lecture 51 Default Function Parameters
Lecture 52 The Spread Operator (…)
Lecture 53 Rest Parameters
Lecture 54 Array & Object Destructuring
Lecture 55 How Code Gets Compiled & Wrap Up
Lecture 56 Useful Resources & Links
Section 5: Classes & Interfaces
Lecture 57 Module Introduction
Lecture 58 What are Classes?
Lecture 59 Creating a First Class
Lecture 60 Compiling to JavaScript
Lecture 61 Constructor Functions & The “this” Keyword
Lecture 62 “private” and “public” Access Modifiers
Lecture 63 Shorthand Initialization
Lecture 64 “readonly” Properties
Lecture 65 Inheritance
Lecture 66 Overriding Properties & The “protected” Modifier
Lecture 67 Getters & Setters
Lecture 68 Static Methods & Properties
Lecture 69 Abstract Classes
Lecture 70 Singletons & Private Constructors
Lecture 71 Classes – A Summary
Lecture 72 A First Interface
Lecture 73 Using Interfaces with Classes
Lecture 74 Why Interfaces?
Lecture 75 Readonly Interface Properties
Lecture 76 Extending Interfaces
Lecture 77 Interfaces as Function Types
Lecture 78 Optional Parameters & Properties
Lecture 79 Compiling Interfaces to JavaScript
Lecture 80 Wrap Up
Lecture 81 Useful Resources & Links
Section 6: Advanced Types
Lecture 82 Module Introduction
Lecture 83 Intersection Types
Lecture 84 More on Type Guards
Lecture 85 Discriminated Unions
Lecture 86 Type Casting
Lecture 87 Index Properties
Lecture 88 Function Overloads
Lecture 89 Optional Chaining
Lecture 90 Nullish Coalescing
Lecture 91 Wrap Up
Lecture 92 Useful Resources & Links
Section 7: Generics
Lecture 93 Module Introduction
Lecture 94 Built-in Generics & What are Generics?
Lecture 95 Creating a Generic Function
Lecture 96 Working with Constraints
Lecture 97 Another Generic Function
Lecture 98 The “keyof” Constraint
Lecture 99 Generic Classes
Lecture 100 A First Summary
Lecture 101 Generic Utility Types
Lecture 102 Generic Types vs Union Types
Lecture 103 Useful Resources & Links
Section 8: Decorators
Lecture 104 Module Introduction
Lecture 105 A First Class Decorator
Lecture 106 Working with Decorator Factories
Lecture 107 Building More Useful Decorators
Lecture 108 Adding Multiple Decorators
Lecture 109 Diving into Property Decorators
Lecture 110 Accessor & Parameter Decorators
Lecture 111 When Do Decorators Execute?
Lecture 112 Returning (and changing) a Class in a Class Decorator
Lecture 113 Other Decorator Return Types
Lecture 114 Example: Creating an “Autobind” Decorator
Lecture 115 Validation with Decorators – First Steps
Lecture 116 Validation with Decorators – Finished
Lecture 117 Fixing a Validator Bug
Lecture 118 Wrap Up
Lecture 119 Useful Resources & Links
Section 9: Practice Time! Let’s build a Drag & Drop Project
Lecture 120 Module Introduction
Lecture 121 Getting Started
Lecture 122 DOM Element Selection & OOP Rendering
Lecture 123 Interacting with DOM Elements
Lecture 124 Creating & Using an “Autobind” Decorator
Lecture 125 Fetching User Input
Lecture 126 Creating a Re-Usable Validation Functionality
Lecture 127 Rendering Project Lists
Lecture 128 Managing Application State with Singletons
Lecture 129 More Classes & Custom Types
Lecture 130 Filtering Projects with Enums
Lecture 131 Adding Inheritance & Generics
Lecture 132 Rendering Project Items with a Class
Lecture 133 Using a Getter
Lecture 134 Utilizing Interfaces to Implement Drag & Drop
Lecture 135 Drag Events & Reflecting the Current State in the UI
Lecture 136 Adding a Droppable Area
Lecture 137 Finishing Drag & Drop
Lecture 138 Wrap Up
Lecture 139 Useful Resources & Links
Section 10: Modules & Namespaces
Lecture 140 Module Introduction
Lecture 141 Writing Module Code – Your Options
Lecture 142 Working with Namespaces
Lecture 143 Organizing Files & Folders
Lecture 144 A Problem with Namespace Imports
Lecture 145 Important: Use Chrome or Firefox
Lecture 146 Using ES Modules
Lecture 147 Understanding various Import & Export Syntaxes
Lecture 148 How Does Code In Modules Execute?
Lecture 149 Wrap Up
Lecture 150 Useful Resources & Links
Section 11: Using Webpack with TypeScript
Lecture 151 Module Introduction
Lecture 152 What is Webpack & Why do we need it?
Lecture 153 Installing Webpack & Important Dependencies
Lecture 154 Adding Entry & Output Configuration
Lecture 155 Adding TypeScript Support with the ts-loader Package
Lecture 156 Adjust Webpack Config
Lecture 157 Finishing the Setup & Adding webpack-dev-server
Lecture 158 Adding a Production Workflow
Lecture 159 Wrap Up
Lecture 160 Useful Resources & Links
Section 12: 3rd Party Libraries & TypeScript
Lecture 161 Module Introduction
Lecture 162 Using JavaScript (!) Libraries with TypeScript
Lecture 163 Using “declare” as a “Last Resort”
Lecture 164 No Types Needed: class-transformer
Lecture 165 TypeScript-embracing: class-validator
Lecture 166 Wrap Up
Lecture 167 Useful Resources & Links
Section 13: Time to Practice! Let’s build a “Select & Share a Place” App (incl. Google Maps)
Lecture 168 Module Introduction
Lecture 169 Project Setup
Lecture 170 Getting User Input
Lecture 171 Setting Up a Google API Key
Lecture 172 Using Axios to Fetch Coordinates for an Entered Address
Lecture 173 Rendering a Map with Google Maps (incl. Types!)
Lecture 174 Working with Maps without a Credit Card
Lecture 175 Useful Resources & Links
Section 14: React.js & TypeScript
Lecture 176 Module Introduction
Lecture 177 Setting Up a React + TypeScript Project
Lecture 178 How Do React + TypeScript Work Together?
Lecture 179 Working with Props and Types for Props
Lecture 180 Getting User Input with “refs”
Lecture 181 Cross-Component Communication
Lecture 182 Working with State & Types
Lecture 183 Managing State Better
Lecture 184 More Props & State Work
Lecture 185 Adding Styling
Lecture 186 Types for other React Features (e.g. Redux or Routing)
Lecture 187 Wrap Up
Lecture 188 Useful Resources & Links
Section 15: Node.js + Express & TypeScript
Lecture 189 Module Introduction
Lecture 190 Executing TypeScript Code with Node.js
Lecture 191 Setting up a Project
Lecture 192 Finished Setup & Working with Types (in Node + Express Apps)
Lecture 193 Adding Middleware & Types
Lecture 194 Working with Controllers & Parsing Request Bodies
Lecture 195 More CRUD Operations
Lecture 196 Wrap Up
Lecture 197 Useful Resources & Links
Section 16: Course Roundup
Lecture 198 Thanks for being part of the course!
This Course is for every student who wants to extend his or her horizon beyond vanilla JavaScript,Everyone learning Angular should definitely understand how TypeScript works
Course Information:
Udemy | English | 14h 56m | 5.83 GB
Created by: Maximilian Schwarzmüller
You Can See More Courses in the Developer >> Greetings from CourseDown.com