TypeScript course - english



Kursarrangør: Glasspaper AS
Sted: Oslo, Helsfyr
Oslo
Kursadresse: Brynsveien 12, 0667 Oslo (kart)
Type:Åpent kurs / gruppeundervisning
Studie / yrkesutdanning
Undervisningstid: kl 09:00 - 16:00
Varighet: 3 days
Pris: 20.900
Neste kurs: 01.10.2025 | Vis alle kursdatoer

We provide course about TypeScript in english. This course aims to teach you TypeScript. From the very basics, including JavaScript fundamentals toadvanced topics. Every topics comes with exercises, so that what you learn sticks.

Course description:
Afterwards you should be able to safely type even the most exotic JavaScript constructs in your API or front-end framework code. Instructor-led course with hands-on exercises for every topic.

Course outline:
Module 1 - Introduction:
• History
• Why TypeScript
• The TypeScript Compiler (tsc)
• Setting up and running the compiler
• Compiler strictness: strict mode, noImplicitAny, strictNullChecks
• Configuration file (tsconfig.json) overview
• Runtime vs Compile-time type checking
• Type inference
• Automatic type assignment
• Best practices

Module 2 - Basic Use:
Basic Types:
• Overview of JS types: number, string, boolean, null, undefined
• Additional TypeScript types: any, unknown, void, never
• Arrays: number[], Array, multidimensional arrays
• null vs undefined
• Literals: string, numeric, and boolean literal types

Type Annotations:
• Variables and constants
• Function parameters and return types
• Object type annotations
• Combining types using Union (|) and Intersection (&)

Type Assertions:
• as syntax
• Non-null assertion operator (!)
• Loops, Iterators and Generators

Module 3 - TypeScript-Only Types:
Enums:
• Numeric and string enums
• Heterogeneous enums

Tuples:
• Fixed-length arrays with known types
• Tuple destructuring
• Optional tuple elements and spread in tuples

Module 4 - Working with Functions:
Function Types:
• Explicitly typing function arguments and return values
• Arrow function syntax

Special Cases:
• void vs never types
• Optional and default parameters
• Rest parameters
• Overloading functions

Destructuring with Type Annotations:
• Function parameter destructuring
• Nested destructuring

Exclamation Mark:
• The ! operator for definite assignment

Module 5 - Working with Classes:
Class Basics:
• Defining classes, constructors, and methods
• Using readonly and static modifiers

Access Modifiers:
• public, private, and protected
• Constructor parameter properties

Advanced Features:
• Abstract classes and methods
• Encapsulating member variables
• Using instanceof for type checking
• Conditional types (A extends B, C, D)

Module 6 - Types and Interfaces:
Defining Types:
• Basic types, union types, and intersection types
• Recursive types

Type Guards:
• typeof, instanceof, and custom type guards

Nullable Types:
• Handling null and undefined

Type Aliases:
• When and why to use type aliases

Mapped Types:
• Creating new types from existing ones

Interfaces:
• Defining array, function, and class types
• Extending interfaces

Type vs Interface:
• Key differences and when to use each

Module 7 - Utility Types:
Overview of built-in utility types:
• Partial
• Required
• Pick
• Omit
• Record
• Readonly
• Exclude and Extract
• NonNullable
• ReturnType
• InstanceType

Custom Utility Types:
• Creating and using custom utility types

Module 8 - Generics:
Introduction to Generics:
• Writing generic functions
• Generics in interfaces and classes

Generic Constraints:
• Extending types with constraints (T extends U)

Practical Applications:
• Generic utility functions
• Generic React components

Module 9 - Modules & Namespaces:
• Modules: Import, Export
• Namespaces
• Modules vs Namespaces

Module 10 - Declaration Files:
• Writing .d.ts files
• Using third-party declaration files
• Publishing a library with TypeScript

Module 11 - Advanced Topics:
• Type guards
• infer
• as const
• Create types using template literals
• Advanced types
• Do's and Don'ts
• Best practices and common pitfalls
• What's New in TypeScript
• Latest features in the most recent version

Module 12 - Front-end frameworks (optional):
• Use TypeScript in React, Angular, Vue, Svelte, etc.

Bonus - Modern JavaScript Features:
Destructuring:
• Arrays and objects
• Default values
• Nested destructuring

Promises:
• Promise.all, Promise.any, Promise.race, Promise.finally, and
• Promise.allSettled

Exception Handling:
• Advanced Concepts
• Async / await with TypeScript
• Error handling in async workflows
• WebWorkers

Course instructor: Rick Beerendonk

Rick is a senior consultant and trainer from The Netherlands. He has over 25 years of professional experience while working in small, large and fast growing organisations. His passion is simplicity, wellwritten code and team dynamics. He is specialised in front-end technologies and speaks regularly about these topics at international events.

Target audience:
Anyone who wants course about TypeScript

Prerequisites:
• At least 6 months programming experience
• Knowledge of JavaScript is a plus

Language:
• The course is given in english

Vis flere tilsvarende kurs: