Media is too big
VIEW IN TELEGRAM
33. Wrapping Up
Mike discusses the different courses that students can take after completing Intermediate TypeScript V2. They highlight the content and benefits of each course, and encourages students to continue their TypeScript learning journey to enhance their skills and take their code basis to the next level.
#lesson
Mike discusses the different courses that students can take after completing Intermediate TypeScript V2. They highlight the content and benefits of each course, and encourages students to continue their TypeScript learning journey to enhance their skills and take their code basis to the next level.
#lesson
Title: TypeScript 5+ Fundamentals, v4
Description: TypeScript adds a powerful type system to JavaScript, adding type aliases, union/intersection types, and generics. Migrate to TypeScript, enhancing code reliability and error detection in your codebase.
Link: https://frontendmasters.com/courses/typescript-v4/
Time: 5 hours, 12 minutes
Lessons: 34 / 34
Tags: #course #frontendmasters #720p
Description: TypeScript adds a powerful type system to JavaScript, adding type aliases, union/intersection types, and generics. Migrate to TypeScript, enhancing code reliability and error detection in your codebase.
Link: https://frontendmasters.com/courses/typescript-v4/
Time: 5 hours, 12 minutes
Lessons: 34 / 34
Tags: #course #frontendmasters #720p
Frontendmasters
Learn the Fundamentals of TypeScript From Basic Typing to Advanced – Type Aliases, Union/Intersection Types, and Generics
TypeScript adds a powerful type system to JavaScript, adding type aliases, union/intersection types, and generics. Migrate to TypeScript, enhancing code reliability and error detection in your codebase.
Media is too big
VIEW IN TELEGRAM
1. Introduction
Mike North provides an overview of what will be covered in the course and explains the importance of types in TypeScript and how it helps catch errors at compile time. The structure of the course and the topics that will be covered, including variables, types, generics, and more, are also discussed in this segment.
- https://www.typescript-training.com/course/fundamentals-v4
#lesson
Mike North provides an overview of what will be covered in the course and explains the importance of types in TypeScript and how it helps catch errors at compile time. The structure of the course and the topics that will be covered, including variables, types, generics, and more, are also discussed in this segment.
- https://www.typescript-training.com/course/fundamentals-v4
#lesson
Media is too big
VIEW IN TELEGRAM
2. Workshop Setup
Mike demonstrates setting up the development environment by installing Volta, cloning the repo, and running Yarn to install the necessary dependencies. Additionally, the value of TypeScript in fullstack development and how it helps maintain type consistency between the backend and frontend is also discussed in this segment.
#lesson
Mike demonstrates setting up the development environment by installing Volta, cloning the repo, and running Yarn to install the necessary dependencies. Additionally, the value of TypeScript in fullstack development and how it helps maintain type consistency between the backend and frontend is also discussed in this segment.
#lesson
Media is too big
VIEW IN TELEGRAM
3. Compiling TypeScript with TSC
Mike explains how the TypeScript CLI works and demonstrates it by using a Hello World TypeScript program. How the TypeScript compiler can target different language levels and generate different module formats is also discussed. Finally, the purpose of declaration files and how they allow developers to benefit from type information when using TypeScript is covered in this segment.
- https://www.typescript-training.com/course/fundamentals-v4/03-variables-and-values/
#lesson
Mike explains how the TypeScript CLI works and demonstrates it by using a Hello World TypeScript program. How the TypeScript compiler can target different language levels and generate different module formats is also discussed. Finally, the purpose of declaration files and how they allow developers to benefit from type information when using TypeScript is covered in this segment.
- https://www.typescript-training.com/course/fundamentals-v4/03-variables-and-values/
#lesson
Media is too big
VIEW IN TELEGRAM
4. Variable Declarations & Inference
Mike discusses the use of variables and their types. The difference between `let` and `const` declarations, literal types, type annotations, the concept of sets, and how types represent sets of allowed values are covered. This segment concludes with an example of an implicit `any` type and how to use type annotations to provide explicit types.
- https://www.typescript-training.com/course/fundamentals-v4/03-variables-and-values/
#lesson
Mike discusses the use of variables and their types. The difference between `let` and `const` declarations, literal types, type annotations, the concept of sets, and how types represent sets of allowed values are covered. This segment concludes with an example of an implicit `any` type and how to use type annotations to provide explicit types.
- https://www.typescript-training.com/course/fundamentals-v4/03-variables-and-values/
#lesson
Media is too big
VIEW IN TELEGRAM
5. Any & Type Casting
Mike discusses typecasting in TypeScript and explains how to cast values to different types using techniques such as assigning a value to a different type, using the "as" keyword, or casting to the "any" type. TypeScript will object to casting incompatible types and suggest using the "any" type as an intermediate step when necessary.
#lesson
Mike discusses typecasting in TypeScript and explains how to cast values to different types using techniques such as assigning a value to a different type, using the "as" keyword, or casting to the "any" type. TypeScript will object to casting incompatible types and suggest using the "any" type as an intermediate step when necessary.
#lesson
Media is too big
VIEW IN TELEGRAM
6. Functions & Return Types
Mike explains how to add types to a TypeScript file and demonstrates adding type annotations to a function that takes two arguments and returns a number. The benefits of using TypeScript, such as catching type errors and improving code reliability, and the use of ESLint with TypeScript are also discussed in this segment.
#lesson
Mike explains how to add types to a TypeScript file and demonstrates adding type annotations to a function that takes two arguments and returns a number. The benefits of using TypeScript, such as catching type errors and improving code reliability, and the use of ESLint with TypeScript are also discussed in this segment.
#lesson
Media is too big
VIEW IN TELEGRAM
7. Objects & Property Types
Mike explains the concept of objects in JavaScript, how to define their types in TypeScript, and demonstrates how to create an object type and use it as a function argument. Optional properties, type guards, and how excess property checking prevents passing in unknown properties to an object are also covered in this segment.
- https://www.typescript-training.com/course/fundamentals-v4/04-objects-arrays-and-tuples/
#lesson
Mike explains the concept of objects in JavaScript, how to define their types in TypeScript, and demonstrates how to create an object type and use it as a function argument. Optional properties, type guards, and how excess property checking prevents passing in unknown properties to an object are also covered in this segment.
- https://www.typescript-training.com/course/fundamentals-v4/04-objects-arrays-and-tuples/
#lesson
Media is too big
VIEW IN TELEGRAM
8. Index Signatures
Mike discusses index signatures, introducing a use case where an object contains different phone numbers, including predefined and custom ones. How to define and use index signatures and conventions for accessing known properties and index fields are also covered in this segment.
#lesson
Mike discusses index signatures, introducing a use case where an object contains different phone numbers, including predefined and custom ones. How to define and use index signatures and conventions for accessing known properties and index fields are also covered in this segment.
#lesson
👍1
Media is too big
VIEW IN TELEGRAM
9. Array Types, Tuples & readonly
Mike discusses how TypeScript infers the type of array elements and how to define and use tuples. Using the `readonly` keyword to create immutable tuples and a discussion regarding the trade-offs of using tuples are also covered in this segment.
#lesson
Mike discusses how TypeScript infers the type of array elements and how to define and use tuples. Using the `readonly` keyword to create immutable tuples and a discussion regarding the trade-offs of using tuples are also covered in this segment.
#lesson
Media is too big
VIEW IN TELEGRAM
10. Structural vs Nominal Typing
Mike explains how type checking occurs when assigning values to variables, passing arguments to functions, and returning values from functions. Concepts such as type equivalence, static vs dynamic types, strong vs weak types, and nominal vs structural type systems are also demonstrated in this segment.
- https://www.typescript-training.com/course/fundamentals-v4/05-structural-vs-nominal-types/
#lesson
Mike explains how type checking occurs when assigning values to variables, passing arguments to functions, and returning values from functions. Concepts such as type equivalence, static vs dynamic types, strong vs weak types, and nominal vs structural type systems are also demonstrated in this segment.
- https://www.typescript-training.com/course/fundamentals-v4/05-structural-vs-nominal-types/
#lesson
Media is too big
VIEW IN TELEGRAM
11. Conceptualizing Union & Intersection Types
Mike explains how union types represent the "or" condition for types, allowing values from multiple sets, and how intersection types represent the "and" condition, requiring values to meet multiple constraints. Examples and visualizations to help students understand these concepts and build a mental model of types as sets of allowed values are provided in this segment.
- https://www.typescript-training.com/course/fundamentals-v4/06-union-and-intersection-types/
#lesson
Mike explains how union types represent the "or" condition for types, allowing values from multiple sets, and how intersection types represent the "and" condition, requiring values to meet multiple constraints. Examples and visualizations to help students understand these concepts and build a mental model of types as sets of allowed values are provided in this segment.
- https://www.typescript-training.com/course/fundamentals-v4/06-union-and-intersection-types/
#lesson
Media is too big
VIEW IN TELEGRAM
12. Union Types
Mike discusses the concept of literal types and how to create sets of specific values using union types. Questions about expressing sets without enumerating values and the use of expressions in type definitions are also covered in this segment.
#lesson
Mike discusses the concept of literal types and how to create sets of specific values using union types. Questions about expressing sets without enumerating values and the use of expressions in type definitions are also covered in this segment.
#lesson
Media is too big
VIEW IN TELEGRAM
13. Union Type Control Flow
Mike discusses how union types are commonly used in programs to represent different possibilities based on control flow. The concept of discriminated unions, where a literal type is used as a discriminator to determine the type of the larger value is also introduced in this segment.
#lesson
Mike discusses how union types are commonly used in programs to represent different possibilities based on control flow. The concept of discriminated unions, where a literal type is used as a discriminator to determine the type of the larger value is also introduced in this segment.
#lesson
Media is too big
VIEW IN TELEGRAM
14. Intersection Types
Mike discusses intersection types and how they are different from union types. Intersection types are very picky in terms of what values they accept, but they can be used in various contexts where the behavior of both types is required.
#lesson
Mike discusses intersection types and how they are different from union types. Intersection types are very picky in terms of what values they accept, but they can be used in various contexts where the behavior of both types is required.
#lesson
Media is too big
VIEW IN TELEGRAM
15. Type Alias
Mike explains the concept of interfaces and type aliases in TypeScript. How type aliases can be used to give names to types and simplify complex type definitions, how type aliases can be used in place of literal types, and how they can be extended using intersection types are also demonstrated in this segment.
- https://www.typescript-training.com/course/fundamentals-v4/07-interfaces-and-type-aliases/
#lesson
Mike explains the concept of interfaces and type aliases in TypeScript. How type aliases can be used to give names to types and simplify complex type definitions, how type aliases can be used in place of literal types, and how they can be extended using intersection types are also demonstrated in this segment.
- https://www.typescript-training.com/course/fundamentals-v4/07-interfaces-and-type-aliases/
#lesson
Media is too big
VIEW IN TELEGRAM
16. Interface extends & implements
Mike discusses how interfaces can be used to give a type a name and how they can be used for inheritance. The extends and implements keywords, as well as the differences between interfaces and type aliases are also covered in this segment.
#lesson
Mike discusses how interfaces can be used to give a type a name and how they can be used for inheritance. The extends and implements keywords, as well as the differences between interfaces and type aliases are also covered in this segment.
#lesson
Media is too big
VIEW IN TELEGRAM
17. Open Interfaces
Mike discusses re-declaring and combining interfaces, allowing for the augmentation of existing types, and the limitations of type aliases in this context. Questions from the audience regarding the implementation of interfaces and the impact of modifying interfaces on other files are also covered in this segment.
#lesson
Mike discusses re-declaring and combining interfaces, allowing for the augmentation of existing types, and the limitations of type aliases in this context. Questions from the audience regarding the implementation of interfaces and the impact of modifying interfaces on other files are also covered in this segment.
#lesson
Media is too big
VIEW IN TELEGRAM
18. Recursive Types
Mike explains the concept of recursive types using an example of nested numbers in an array. Defining a recursive type using type aliases in TypeScript and how it allows for infinitely nested arrays of numbers is also demonstrated in this segment.
#lesson
Mike explains the concept of recursive types using an example of nested numbers in an array. Defining a recursive type using type aliases in TypeScript and how it allows for infinitely nested arrays of numbers is also demonstrated in this segment.
#lesson
Media is too big
VIEW IN TELEGRAM
19. JSON Type Exercise
Mike provides an exercise where the goal is to define a type that accepts any valid JSON value. The solution, explaining the different types and their relationships and demonstrating how to pass all the test cases is also provided.
- https://www.typescript-training.com/course/fundamentals-v4/08-exercise-json-types/
#lesson
Mike provides an exercise where the goal is to define a type that accepts any valid JSON value. The solution, explaining the different types and their relationships and demonstrating how to pass all the test cases is also provided.
- https://www.typescript-training.com/course/fundamentals-v4/08-exercise-json-types/
#lesson