-
Урок 1.
00:01:05
How to Get Help
-
Урок 2.
00:06:20
Typescript Overview
-
Урок 3.
00:08:00
Environment Setup
-
Урок 4.
00:04:44
A First App
-
Урок 5.
00:05:04
Executing Typescript Code
-
Урок 6.
00:03:36
One Quick Change
-
Урок 7.
00:07:23
Catching Errors with Typescript
-
Урок 8.
00:05:16
Catching More Errors!
-
Урок 9.
00:03:37
Do Not Skip - Course Overview
-
Урок 10.
00:05:13
Types
-
Урок 11.
00:05:54
More on Types
-
Урок 12.
00:04:50
Examples of Types
-
Урок 13.
00:00:50
Where Do We Use Types?
-
Урок 14.
00:02:04
Type Annotations and Inference
-
Урок 15.
00:04:54
Annotations with Variables
-
Урок 16.
00:06:54
Object Literal Annotations
-
Урок 17.
00:05:57
Annotations Around Functions
-
Урок 18.
00:03:52
Understanding Inference
-
Урок 19.
00:07:48
The 'Any' Type
-
Урок 20.
00:01:50
Fixing the 'Any' Type
-
Урок 21.
00:03:06
Delayed Initialization
-
Урок 22.
00:04:38
When Inference Doesn't Work
-
Урок 23.
00:04:57
More on Annotations Around Functions
-
Урок 24.
00:06:09
Inference Around Functions
-
Урок 25.
00:01:43
Annotations for Anonymous Functions
-
Урок 26.
00:02:50
Void and Never
-
Урок 27.
00:03:36
Destructuring with Annotations
-
Урок 28.
00:07:06
Annotations Around Objects
-
Урок 29.
00:05:06
Arrays in Typescript
-
Урок 30.
00:04:31
Why Typed Arrays?
-
Урок 31.
00:02:58
Multiple Types in Arrays
-
Урок 32.
00:00:55
When to Use Typed Arrays
-
Урок 33.
00:04:06
Tuples in Typescript
-
Урок 34.
00:05:29
Tuples in Action
-
Урок 35.
00:03:21
Why Tuples?
-
Урок 36.
00:01:27
Interfaces
-
Урок 37.
00:04:43
Long Type Annotations
-
Урок 38.
00:04:37
Fixing Long Annotations with Interfaces
-
Урок 39.
00:03:32
Syntax Around Interfaces
-
Урок 40.
00:04:47
Functions in Interfaces
-
Урок 41.
00:04:16
Code Reuse with Interfaces
-
Урок 42.
00:03:13
General Plan with Interfaces
-
Урок 43.
00:03:48
Classes
-
Урок 44.
00:03:04
Basic Inheritance
-
Урок 45.
00:06:42
Instance Method Modifiers
-
Урок 46.
00:06:19
Fields in Classes
-
Урок 47.
00:04:19
Fields with Inheritance
-
Урок 48.
00:01:11
Where to Use Classes
-
Урок 49.
00:02:46
App Overview
-
Урок 50.
00:04:55
Bundling with Parcel
-
Урок 51.
00:03:20
Project Structure
-
Урок 52.
00:05:30
Generating Random Data
-
Урок 53.
00:05:18
Type Definition Files
-
Урок 54.
00:06:21
Using Type Definition Files
-
Урок 55.
00:05:07
Export Statements in Typescript
-
Урок 56.
00:04:44
Defining a Company
-
Урок 57.
00:07:39
Adding Google Maps Support
-
Урок 58.
00:04:07
Google Maps Integration
-
Урок 59.
00:12:47
Exploring Type Definition Files
-
Урок 60.
00:06:29
Hiding Functionality
-
Урок 61.
00:08:26
Why Use Private Modifiers? Here's Why
-
Урок 62.
00:09:19
Adding Markers
-
Урок 63.
00:02:46
Duplicate Code
-
Урок 64.
00:06:39
One Possible Solution
-
Урок 65.
00:05:36
Restricting Access with Interfaces
-
Урок 66.
00:03:27
Implicit Type Checks
-
Урок 67.
00:06:48
Showing Popup Windows
-
Урок 68.
00:07:12
Updating Interface Definitions
-
Урок 69.
00:06:07
Optional Implements Clauses
-
Урок 70.
00:08:09
App Wrapup
-
Урок 71.
00:01:35
App Overview
-
Урок 72.
00:07:41
Configuring the TS Compiler
-
Урок 73.
00:05:06
Concurrent Compilation and Execution
-
Урок 74.
00:04:48
A Simple Sorting Algorithm
-
Урок 75.
00:03:11
Sorter Scaffolding
-
Урок 76.
00:05:18
Sorting Implementation
-
Урок 77.
00:07:38
Two Huge Issues
-
Урок 78.
00:09:35
Typescript is Really Smart
-
Урок 79.
00:09:15
Type Guards
-
Урок 80.
00:02:23
Why is This Bad?
-
Урок 81.
00:07:30
Extracting Key Logic
-
Урок 82.
00:13:59
Separating Swapping and Comparison
-
Урок 83.
00:04:39
The Big Reveal
-
Урок 84.
00:04:49
Interface Definition
-
Урок 85.
00:11:09
Sorting Arbitrary Collections
-
Урок 86.
00:24:16
Linked List Implementation
-
Урок 87.
00:04:04
Just...One...More...Fix...
-
Урок 88.
00:02:45
Integrating the Sort Method
-
Урок 89.
00:06:55
Issues with Inheritance
-
Урок 90.
00:06:26
Abstract Classes
-
Урок 91.
00:04:31
Why Use Abstract Classes?
-
Урок 92.
00:04:01
Solving All Issues with Abstract Classes
-
Урок 93.
00:03:24
Interfaces vs Abstract Classes
-
Урок 94.
00:01:46
Project Overview
-
Урок 95.
00:05:58
Project Setup
-
Урок 96.
00:06:46
Type Definition Files - Again!
-
Урок 97.
00:05:06
Reading CSV Files
-
Урок 98.
00:04:23
Running an Analysis
-
Урок 99.
00:05:13
Losing Dataset Context
-
Урок 100.
00:06:20
Using Enums
-
Урок 101.
00:07:05
When to Use Enums
-
Урок 102.
00:08:51
Extracting CSV Reading
-
Урок 103.
00:02:34
Data Types
-
Урок 104.
00:05:03
Converting Date Strings to Dates
-
Урок 105.
00:03:38
Converting Row Values
-
Урок 106.
00:03:58
Type Assertions
-
Урок 107.
00:07:29
Describing a Row with a Tuple
-
Урок 108.
00:03:15
Not Done with FileReader Yet!
-
Урок 109.
00:04:36
Understanding Refactor #1
-
Урок 110.
00:04:22
Creating Abstract Classes
-
Урок 111.
00:11:29
Variable Types with Generics
-
Урок 112.
00:04:12
Applying a Type to a Generic Class
-
Урок 113.
00:04:21
Alternate Refactor
-
Урок 114.
00:02:05
Interface-Based Approach
-
Урок 115.
00:02:34
Extracting Match References - Again!
-
Урок 116.
00:02:37
Transforming Data
-
Урок 117.
00:03:40
Updating Reader References
-
Урок 118.
00:03:21
Inheritance vs Composition
-
Урок 119.
00:07:23
More on Inheritance vs Composition
-
Урок 120.
00:14:57
A Huge Misconception Around Composition
-
Урок 121.
00:05:17
Goal Moving Forward
-
Урок 122.
00:06:27
A Composition-Based Approach
-
Урок 123.
00:07:25
Implementing an Analyzer Class
-
Урок 124.
00:05:27
Building the Reporter
-
Урок 125.
00:03:36
Putting It All Together
-
Урок 126.
00:05:10
Generating HTML Reports
-
Урок 127.
00:05:35
One Last Thing!
-
Урок 128.
00:03:15
Oops, My Bad
-
Урок 129.
00:03:34
App Wrapup
-
Урок 130.
00:05:05
More on Generics
-
Урок 131.
00:02:50
Type Inference with Generics
-
Урок 132.
00:06:06
Function Generics
-
Урок 133.
00:05:51
Generic Constraints
-
Урок 134.
00:02:46
App Overview
-
Урок 135.
00:02:43
Parcel Setup
-
Урок 136.
00:08:06
Framework Structure
-
Урок 137.
00:02:49
Designing the User
-
Урок 138.
00:06:00
Retrieving User Properties
-
Урок 139.
00:06:38
Optional Interface Properties
-
Урок 140.
00:02:45
An Eventing System
-
Урок 141.
00:04:24
Listener Support
-
Урок 142.
00:05:25
Storing Event Listeners
-
Урок 143.
00:05:28
Dynamic Array Creation
-
Урок 144.
00:03:58
Triggering Event Callbacks
-
Урок 145.
00:07:15
Adding JSON Server
-
Урок 146.
00:08:53
Understanding REST Conventions
-
Урок 147.
00:05:13
Adding Fetch Functionality
-
Урок 148.
00:04:51
Successfully Fetching Model Data
-
Урок 149.
00:08:58
Saving User Data
-
Урок 150.
00:03:49
Refactoring with Composition
-
Урок 151.
00:12:50
Re-Integrating Eventing
-
Урок 152.
00:02:46
Composition with Nested Objects
-
Урок 153.
00:02:49
A More Complicated Extraction
-
Урок 154.
00:09:33
Options for Adapting Sync
-
Урок 155.
00:10:42
Refactoring Sync
-
Урок 156.
00:03:31
Generic Constraints Around Sync
-
Урок 157.
00:04:31
Connecting Sync Back to User
-
Урок 158.
00:07:01
Optional Properties
-
Урок 159.
00:03:13
Extracting an Attributes Class
-
Урок 160.
00:06:19
The Get Method's Shortcoming
-
Урок 161.
00:07:07
Two Important Rules
-
Урок 162.
00:09:37
An Advanced Generic Constraint
-
Урок 163.
00:03:19
Re-Integrating Attributes
-
Урок 164.
00:04:40
Composition is Delegation
-
Урок 165.
00:05:08
Reminder on Accessors
-
Урок 166.
00:06:56
Passthrough Methods
-
Урок 167.
00:08:38
A Context Issue
-
Урок 168.
00:03:23
Setting Data While Triggering
-
Урок 169.
00:06:27
Fetching User Data
-
Урок 170.
00:05:39
Saving Data
-
Урок 171.
00:09:03
Composition vs Inheritance...Again!
-
Урок 172.
00:07:30
Extracting a Model Class
-
Урок 173.
00:05:25
Extending the User
-
Урок 174.
00:03:49
Final User Refactor
-
Урок 175.
00:03:39
Model Wrapup
-
Урок 176.
00:05:40
Shortened Passthrough Methods
-
Урок 177.
00:03:27
Users Collection
-
Урок 178.
00:03:02
Implementing a Users Collection
-
Урок 179.
00:07:13
Parsing User JSON
-
Урок 180.
00:06:23
Generic User Collection
-
Урок 181.
00:02:15
A Class Method for Collections
-
Урок 182.
00:04:04
View Classes
-
Урок 183.
00:04:46
Building the UserForm
-
Урок 184.
00:03:04
The UserForm's Render Method
-
Урок 185.
00:02:07
Rendering HTML
-
Урок 186.
00:06:14
Defining an Events Map
-
Урок 187.
00:07:07
Binding Event Handlers
-
Урок 188.
00:04:16
Adding Model Properties
-
Урок 189.
00:05:09
Binding Events on Class Name
-
Урок 190.
00:04:31
Adding Methods to the User
-
Урок 191.
00:04:57
Re-Rendering on Model Change
-
Урок 192.
00:04:40
Reading Input Text
-
Урок 193.
00:06:13
Strict Null Checks
-
Урок 194.
00:12:26
Reusable View Logic
-
Урок 195.
00:04:11
Extracting a View Class
-
Урок 196.
00:12:16
Extending with Generic Constraints
-
Урок 197.
00:03:58
Saving Data From a View
-
Урок 198.
00:06:13
UserEdit and UserShow
-
Урок 199.
00:04:49
Nesting with Regions
-
Урок 200.
00:05:41
Mapping Regions
-
Урок 201.
00:04:02
Testing Region Mapping
-
Урок 202.
00:06:54
View Nesting
-
Урок 203.
00:02:21
Collection Views
-
Урок 204.
00:16:53
CollectionView Implementation
-
Урок 205.
00:03:36
App Wrapup
-
Урок 206.
00:05:35
Typescript with JS Libraries
-
Урок 207.
00:03:20
App Overview
-
Урок 208.
00:03:32
Project Setup
-
Урок 209.
00:06:32
Basic Routes with Express
-
Урок 210.
00:03:47
Using an Express Router
-
Урок 211.
00:05:56
Parsing Form Bodies
-
Урок 212.
00:13:56
Why Doesn't Express Play Nicely with TS?
-
Урок 213.
00:10:17
Issues with Type Definition Files
-
Урок 214.
00:06:29
Dealing with Poor Type Defs
-
Урок 215.
00:08:37
Wiring Up Sessions
-
Урок 216.
00:03:20
Checking Login Status
-
Урок 217.
00:01:10
Logging Out
-
Урок 218.
00:04:52
Protecting Routes
-
Урок 219.
00:06:34
A Closer Integration
-
Урок 220.
00:03:15
The Refactoring Process
-
Урок 221.
00:08:44
Prototypes Reminder
-
Урок 222.
00:06:49
Decorators in Typescript
-
Урок 223.
00:07:41
Details on Decorators
-
Урок 224.
00:06:12
Property Descriptors
-
Урок 225.
00:02:08
Wrapping Methods with Descriptors
-
Урок 226.
00:02:47
Decorator Factories
-
Урок 227.
00:03:58
Decorators Around Properties
-
Урок 228.
00:07:33
More on Decorators
-
Урок 229.
00:00:59
A Quick Disclaimer
-
Урок 230.
00:08:18
Project Overview
-
Урок 231.
00:07:07
Why is This Hard?
-
Урок 232.
00:05:52
Solution Overview
-
Урок 233.
00:08:47
Basics of Metadata
-
Урок 234.
00:11:09
Practical Metadata
-
Урок 235.
00:04:52
Let's Refactor!
-
Урок 236.
00:04:26
The 'Get' Decorator
-
Урок 237.
00:04:21
The Controller Decorator
-
Урок 238.
00:05:13
Proof of Concept
-
Урок 239.
00:08:10
A Few Fixups
-
Урок 240.
00:05:05
Defining a RouteBinder
-
Урок 241.
00:07:39
Closed Method Sets with Enums
-
Урок 242.
00:03:44
Metadata Keys
-
Урок 243.
00:08:02
The 'Use' Decorator
-
Урок 244.
00:03:23
Testing Use
-
Урок 245.
00:05:56
Body Validators
-
Урок 246.
00:03:26
Automated Validation
-
Урок 247.
00:05:37
Testing Automated Validation
-
Урок 248.
00:06:04
Fixing Routes
-
Урок 249.
00:05:19
Using Property Descriptors for Type Checking
-
Урок 250.
00:01:23
App Wrapup
-
Урок 251.
00:06:06
React and Redux Overview
-
Урок 252.
00:02:07
App Overview
-
Урок 253.
00:01:08
Generating the App
-
Урок 254.
00:03:36
Simple Components
-
Урок 255.
00:03:26
Interfaces with Props
-
Урок 256.
00:02:31
Handling Component State
-
Урок 257.
00:10:41
Confusing Component State!
-
Урок 258.
00:03:16
Functional Components
-
Урок 259.
00:07:32
Redux Setup
-
Урок 260.
00:06:46
Action Creators with Typescript
-
Урок 261.
00:04:52
Action Types Enum
-
Урок 262.
00:04:49
The Generic Dispatch Function
-
Урок 263.
00:06:47
A Reducer with Enums
-
Урок 264.
00:05:07
Validating Store Structure
-
Урок 265.
00:06:11
Connecting a Component to Redux
-
Урок 266.
00:04:37
Rendering a List
-
Урок 267.
00:02:55
Adding in Delete Functionality
-
Урок 268.
00:03:22
Breaking Out Action Creators
-
Урок 269.
00:04:08
Expressing Actions as Type Union
-
Урок 270.
00:02:49
Type Guards in Reducers
-
Урок 271.
00:03:02
Again, Type Definition Files
-
Урок 272.
00:04:07
Tracking Loading with Component State
-
Урок 273.
00:03:39
App Wrapup
-
Урок 274.
00:01:23
Generating TypeScript Enabled Projects
-
Урок 275.
00:04:35
File Extensions and Starting Up React
-
Урок 276.
00:02:34
Changes with TypeScript
-
Урок 277.
00:03:55
The Big Difference with Props
-
Урок 278.
00:05:51
Explicit Component Type Annotations
-
Урок 279.
00:05:48
Annotations with Children
-
Урок 280.
00:04:42
State with TypeScript
-
Урок 281.
00:05:42
Type Inference with State
-
Урок 282.
00:00:56
Quick Finish to the Example
-
Урок 283.
00:04:20
More on State
-
Урок 284.
00:05:42
Type Unions in State
-
Урок 285.
00:03:19
Inline Event Handlers
-
Урок 286.
00:02:41
Typing Standalone Event Handlers
-
Урок 287.
00:03:45
Handling Drag Events Too!
-
Урок 288.
00:05:36
Applying Types to Refs
-
Урок 289.
00:04:31
More on Refs
-
Урок 290.
00:02:05
App Overview
-
Урок 291.
00:01:50
Project Setup
-
Урок 292.
00:08:54
Redux Store Design
-
Урок 293.
00:08:17
Reducer Setup
-
Урок 294.
00:01:27
Annotating the Return Type
-
Урок 295.
00:01:55
Typing an Action
-
Урок 296.
00:04:22
Separate Interfaces for Actions
-
Урок 297.
00:04:23
Applying Action Interfaces
-
Урок 298.
00:05:42
Adding an Action Type Enum
-
Урок 299.
00:03:38
A Better Way to Organize Code
-
Урок 300.
00:04:28
Adding Action Creators
-
Урок 301.
00:03:16
Adding Request Logic
-
Урок 302.
00:02:47
Applying Typings to Dispatch
-
Урок 303.
00:04:20
Setting Up Exports
-
Урок 304.
00:03:25
Wiring Up to React
-
Урок 305.
00:01:04
Oops... Initial State!
-
Урок 306.
00:03:01
Reminder on Event Types
-
Урок 307.
00:03:06
Calling an Action Creator
-
Урок 308.
00:04:22
Binding Action Creators
-
Урок 309.
00:04:17
Selecting State
-
Урок 310.
00:04:47
Awkward Typings Around React-Redux
-
Урок 311.
00:04:01
Creating a Typed Selector
-
Урок 312.
00:03:03
Consuming Store State
-
Урок 313.
00:03:19
Quick Wrapup - Final Lecture
https://www.udemy.com/course/typescript-the-complete-developers-guide/
for example:
https://github.com/DanteDX/TSGround/tree/654c18e1670f9a0c7784d5c6573e2eda554798fe