[Last updated 5/2024] Typescript: The Complete Developer’s Guide (Udemy – Vietsub and Engsub)
About Course
Views
What you’ll learn:
Master design patterns for building large applications
Integrate Typescript into React/Redux or Express projects
Understand Composition vs Inheritance, and when to use each
Write reusable code powered by classes and interfaces
Assemble reusable boilerplates for your own Typescript projects
Link gốc:
https://www.udemy.com/course/typescript-the-complete-developers-guide/
Time Course:
27 hours (339 Lectures + Documents)
Instructor
: Stephen Grider
Total Weight:
11.64 GB
** Note
:
Chú ý:
Course Content
10 – More on Design Patterns
-
013 The Big Reveal.mp4
04:37 -
024 Interfaces vs Abstract Classes.mp4
03:22 -
023 Solving All Issues with Abstract Classes.mp4
03:59 -
022 Why Use Abstract Classes.mp4
04:29 -
021 Abstract Classes.mp4
06:25 -
020 Issues with Inheritance.mp4
06:54 -
019 Integrating the Sort Method.mp4
02:43 -
018 Just…One…More…Fix.mp4
04:02 -
017 LinkedList.ts
00:00 -
016 Linked List Implementation.mp4
24:15 -
015 Sorting Arbitrary Collections.mp4
11:08 -
014 Interface Definition.mp4
04:48 -
001 App Overview.mp4
01:33 -
012 Separating Swapping and Comparison.mp4
13:57 -
011 Extracting Key Logic.mp4
07:29 -
010 Why is This Bad.mp4
02:21 -
009 Type Guards.mp4
09:13 -
008 Typescript is Really Smart.mp4
09:34 -
007 Two Huge Issues.mp4
07:37 -
006 Sorting Implementation.mp4
05:16 -
005 Sorter Scaffolding.mp4
03:10 -
004 A Simple Sorting Algorithm.mp4
04:46 -
003 Concurrent Compilation and Execution.mp4
05:05 -
002 Configuring the TS Compiler.mp4
07:40
19 – Redux with Functional Components and TypeScript
-
015 Applying Typings to Dispatch.mp4
02:46 -
028 Quick Wrapup – Final Lecture.mp4
03:18 -
027 Consuming Store State.mp4
03:02 -
026 Creating a Typed Selector.mp4
04:00 -
025 Awkward Typings Around React-Redux.mp4
04:46 -
024 Selecting State.mp4
04:16 -
023 Binding Action Creators.mp4
04:20 -
022 Calling an Action Creator.mp4
03:05 -
020 Reminder on Event Types.mp4
02:59 -
019 Oops… Initial State!.mp4
01:03 -
018 Wiring Up to React.mp4
03:24 -
017 Setting Up Exports.mp4
04:19 -
001 App Overview.mp4
02:04 -
014 Adding Request Logic.mp4
03:14 -
013 Adding Action Creators.mp4
04:27 -
011 A Better Way to Organize Code.mp4
03:36 -
010 Adding an Action Type Enum.mp4
05:41 -
009 Applying Action Interfaces.mp4
04:22 -
008 Separate Interfaces for Actions.mp4
04:21 -
007 Typing an Action.mp4
01:54 -
006 Annotating the Return Type.mp4
01:25 -
005 Reducer Setup.mp4
08:16 -
004 Redux Store Design.mp4
08:53 -
003 Project Setup.mp4
01:49
18 – React Functional Components with TypeScript
-
001 Generating TypeScript Enabled Projects.mp4
01:22 -
003 File Extensions and Starting Up React.mp4
04:34 -
004 Changes with TypeScript.mp4
02:33 -
005 The Big Difference with Props.mp4
03:53 -
006 Explicit Component Type Annotations.mp4
05:50 -
008 Annotations with Children.mp4
05:47 -
009 State with TypeScript.mp4
04:41 -
010 Type Inference with State.mp4
05:41 -
011 Quick Finish to the Example.mp4
00:55 -
012 More on State.mp4
04:19 -
013 Type Unions in State.mp4
05:41 -
014 Inline Event Handlers.mp4
03:18 -
015 Typing Standalone Event Handlers.mp4
02:39 -
016 Handling Drag Events Too!.mp4
03:43 -
017 Applying Types to Refs.mp4
05:35 -
018 More on Refs.mp4
04:29
17 – React and Redux Class Components with Typescript
-
014 The Generic Dispatch Function.mp4
04:47 -
026 App Wrapup.mp4
03:37 -
025 Tracking Loading with Component State.mp4
04:05 -
024 Again, Type Definition Files.mp4
03:00 -
022 Type Guards in Reducers.mp4
02:47 -
021 Expressing Actions as Type Union.mp4
04:06 -
020 Breaking Out Action Creators.mp4
03:20 -
019 Adding in Delete Functionality.mp4
02:53 -
018 Rendering a List.mp4
04:36 -
017 Connecting a Component to Redux.mp4
06:09 -
016 Validating Store Structure.mp4
05:05 -
015 A Reducer with Enums.mp4
06:45 -
001 React and Redux Overview.mp4
06:04 -
013 Action Types Enum.mp4
04:50 -
012 Action Creators with Typescript.mp4
06:44 -
011 Redux Setup.mp4
07:31 -
009 Functional Components.mp4
03:14 -
008 Confusing Component State!.mp4
10:39 -
007 Handling Component State.mp4
02:29 -
006 Interfaces with Props.mp4
03:24 -
005 Simple Components.mp4
03:34 -
003 Generating the App.mp4
01:07 -
002 App Overview.mp4
02:05
16 – Advanced Express and TS Integration
-
014 Defining a RouteBinder.mp4
05:03 -
024 App Wrapup.mp4
01:22 -
023 Using Property Descriptors for Type Checking.mp4
05:17 -
022 Fixing Routes.mp4
06:02 -
021 Testing Automated Validation.mp4
05:36 -
020 Automated Validation.mp4
03:25 -
019 Body Validators.mp4
05:55 -
018 Testing Use.mp4
03:22 -
017 The ‘Use’ Decorator.mp4
08:01 -
016 Metadata Keys.mp4
03:43 -
015 Closed Method Sets with Enums.mp4
07:38 -
001 A Quick Disclaimer.mp4
00:58 -
013 A Few Fixups.mp4
08:09 -
012 Proof of Concept.mp4
05:12 -
011 The Controller Decorator.mp4
04:20 -
009 The ‘Get’ Decorator.mp4
04:24 -
008 Let’s Refactor!.mp4
04:51 -
007 Practical Metadata.mp4
11:08 -
006 Basics of Metadata.mp4
08:46 -
004 Solution Overview.mp4
05:51 -
003 Why is This Hard.mp4
07:06 -
002 Project Overview.mp4
08:17
15 – Decorators
-
002 Decorators in Typescript.mp4
06:48 -
003 Details on Decorators.mp4
07:40 -
004 Property Descriptors.mp4
06:11 -
005 Wrapping Methods with Descriptors.mp4
02:07 -
006 Decorator Factories.mp4
02:46 -
007 Decorators Around Properties.mp4
03:57 -
008 More on Decorators.mp4
07:31
14 – Express + Typescript Integration
-
001 Typescript with JS Libraries.mp4
05:33 -
002 App Overview.mp4
03:19 -
003 Project Setup.mp4
03:31 -
004 Basic Routes with Express.mp4
06:31 -
005 Using an Express Router.mp4
03:45 -
006 Parsing Form Bodies.mp4
05:55 -
007 Why Doesn’t Express Play Nicely with TS.mp4
13:55 -
008 Issues with Type Definition Files.mp4
10:16 -
009 Dealing with Poor Type Defs.mp4
06:28 -
010 Wiring Up Sessions.mp4
08:35 -
011 Checking Login Status.mp4
03:19 -
012 Logging Out.mp4
01:09 -
013 Protecting Routes.mp4
04:50 -
014 A Closer Integration.mp4
06:33 -
015 The Refactoring Process.mp4
03:14 -
016 Prototypes Reminder.mp4
08:43
13 – Let’s Build a Web Framework
-
049 Parsing User JSON.mp4
07:12 -
057 Binding Event Handlers.mp4
07:06 -
056 Defining an Events Map.mp4
06:13 -
055 Rendering HTML.mp4
02:06 -
054 The UserForm’s Render Method.mp4
03:03 -
053 Building the UserForm.mp4
04:45 -
052 View Classes.mp4
04:03 -
051 A Class Method for Collections.mp4
02:14 -
050 Generic User Collection.mp4
06:22 -
058 Adding Model Properties.mp4
04:15 -
048 Implementing a Users Collection.mp4
03:01 -
047 Users Collection.mp4
03:25 -
046 Shortened Passthrough Methods.mp4
05:38 -
045 Model Wrapup.mp4
03:37 -
044 Final User Refactor.mp4
03:48 -
043 Extending the User.mp4
05:24 -
042 Extracting a Model Class.mp4
07:29 -
041 Composition vs Inheritance…Again!.mp4
09:02 -
068 Saving Data From a View.mp4
03:57 -
076 App Wrapup.mp4
03:35 -
075 CollectionView Implementation.mp4
16:52 -
074 Collection Views.mp4
02:20 -
073 View Nesting.mp4
06:52 -
072 Testing Region Mapping.mp4
04:00 -
071 Mapping Regions.mp4
05:40 -
070 Nesting with Regions.mp4
04:48 -
069 UserEdit and UserShow.mp4
06:12 -
040 Saving Data.mp4
05:38 -
067 Extending with Generic Constraints.mp4
12:14 -
065 Extracting a View Class.mp4
04:10 -
064 Reusable View Logic.mp4
12:25 -
063 Strict Null Checks.mp4
06:11 -
062 Reading Input Text.mp4
04:39 -
061 Re-Rendering on Model Change.mp4
04:56 -
060 Adding Methods to the User.mp4
04:30 -
059 Binding Events on Class Name.mp4
05:07 -
011 Dynamic Array Creation.mp4
05:26 -
020 Re-Integrating Eventing.mp4
12:48 -
019 Refactoring with Composition.mp4
03:48 -
018 Saving User Data.mp4
08:56 -
017 Successfully Fetching Model Data.mp4
04:50 -
016 Adding Fetch Functionality.mp4
05:12 -
015 Understanding REST Conventions.mp4
08:51 -
014 Adding JSON Server.mp4
07:14 -
012 Triggering Event Callbacks.mp4
03:56 -
021 Composition with Nested Objects.mp4
02:44 -
010 Storing Event Listeners.mp4
05:24 -
009 Listener Support.mp4
04:23 -
008 An Eventing System.mp4
02:43 -
007 Optional Interface Properties.mp4
06:36 -
006 Retrieving User Properties.mp4
05:58 -
005 Designing the User.mp4
02:48 -
004 Framework Structure.mp4
08:04 -
003 Parcel Setup.mp4
02:42 -
031 Two Important Rules.mp4
07:06 -
039 Fetching User Data.mp4
06:26 -
038 Setting Data While Triggering.mp4
03:22 -
037 A Context Issue.mp4
08:37 -
036 Passthrough Methods.mp4
06:55 -
035 Reminder on Accessors.mp4
05:07 -
034 Composition is Delegation.mp4
04:39 -
033 Re-Integrating Attributes.mp4
03:17 -
032 An Advanced Generic Constraint.mp4
09:35 -
001 App Overview.mp4
02:45 -
030 The Get Method’s Shortcoming.mp4
06:18 -
029 Extracting an Attributes Class.mp4
03:12 -
027 Optional Properties.mp4
07:00 -
026 Connecting Sync Back to User.mp4
04:29 -
025 Generic Constraints Around Sync.mp4
03:30 -
024 Refactoring Sync.mp4
10:40 -
023 Options for Adapting Sync.mp4
09:31 -
022 A More Complicated Extraction.mp4
02:48
12 – Advanced Generics
-
001 More on Generics.mp4
05:04 -
002 Type Inference with Generics.mp4
02:49 -
003 Function Generics.mp4
06:05 -
004 Generic Constraints.mp4
05:50
11 – Reusable Code
-
029 Goal Moving Forward.mp4
05:15 -
021 Alternate Refactor.mp4
04:19 -
022 Interface-Based Approach.mp4
02:03 -
023 Extracting Match References – Again!.mp4
02:32 -
024 Transforming Data.mp4
02:35 -
025 Updating Reader References.mp4
03:38 -
026 Inheritance vs Composition.mp4
03:19 -
027 More on Inheritance vs Composition.mp4
07:22 -
028 A Huge Misconception Around Composition.mp4
14:56 -
020 Applying a Type to a Generic Class.mp4
04:11 -
030 A Composition-Based Approach.mp4
06:25 -
031 Implementing an Analyzer Class.mp4
07:24 -
032 Building the Reporter.mp4
05:26 -
033 Putting It All Together.mp4
03:35 -
034 Generating HTML Reports.mp4
05:08 -
035 One Last Thing!.mp4
05:34 -
036 Oops, My Bad.mp4
03:14 -
037 App Wrapup.mp4
03:33 -
011 Data Types.mp4
02:33 -
002 Project Setup.mp4
05:57 -
004 Type Definition Files – Again!.mp4
06:45 -
005 Reading CSV Files.mp4
05:04 -
006 Running an Analysis.mp4
04:21 -
007 Losing Dataset Context.mp4
05:11 -
008 Using Enums.mp4
06:19 -
009 When to Use Enums.mp4
07:03 -
010 Extracting CSV Reading.mp4
08:49 -
001 Project Overview.mp4
01:45 -
012 Converting Date Strings to Dates.mp4
05:01 -
013 Converting Row Values.mp4
03:36 -
014 Type Assertions.mp4
03:56 -
015 Describing a Row with a Tuple.mp4
07:27 -
016 Not Done with FileReader Yet!.mp4
03:14 -
017 Understanding Refactor #1.mp4
04:34 -
018 Creating Abstract Classes.mp4
04:21 -
019 Variable Types with Generics.mp4
11:27
01 – Getting Started with Typescript
-
01:03
-
06:19
-
005 Environment Setup.mp4
07:59 -
007 A First App.mp4
04:42 -
008 Executing Typescript Code.mp4
05:03 -
009 One Quick Change.mp4
03:35 -
010 Catching Errors with Typescript.mp4
07:22 -
011 Catching More Errors!.mp4
05:15
09 – Design Patterns with Typescript
-
016 Hiding Functionality.mp4
06:28 -
026 App Wrapup.mp4
08:07 -
025 Optional Implements Clauses.mp4
06:06 -
024 Updating Interface Definitions.mp4
07:11 -
023 Showing Popup Windows.mp4
06:47 -
022 Implicit Type Checks.mp4
03:26 -
021 Restricting Access with Interfaces.mp4
05:35 -
020 One Possible Solution.mp4
06:37 -
019 Duplicate Code.mp4
02:44 -
018 Adding Markers.mp4
09:18 -
017 Why Use Private Modifiers Here’s Why.mp4
08:25 -
002 App Overview.mp4
02:44 -
015 Exploring Type Definition Files.mp4
12:46 -
014 Google Maps Integration.mp4
04:05 -
012 Adding Google Maps Support.mp4
07:38 -
010 Defining a Company.mp4
04:42 -
009 Export Statements in Typescript.mp4
05:05 -
008 Using Type Definition Files.mp4
06:20 -
007 Type Definition Files.mp4
05:16 -
006 Generating Random Data.mp4
05:29 -
004 Project Structure.mp4
03:19 -
003 Bundling with Parcel.mp4
04:54
08 – Building Functionality with Classes
-
001 Classes.mp4
03:46 -
002 Basic Inheritance.mp4
03:02 -
003 Instance Method Modifiers.mp4
06:40 -
004 Fields in Classes.mp4
06:18 -
005 Fields with Inheritance.mp4
04:18 -
006 Where to Use Classes.mp4
01:09
07 – The All-Important Interface
-
001 Interfaces.mp4
01:26 -
002 Long Type Annotations.mp4
04:42 -
003 Fixing Long Annotations with Interfaces.mp4
04:36 -
004 Syntax Around Interfaces.mp4
03:31 -
005 Functions in Interfaces.mp4
04:46 -
006 Code Reuse with Interfaces.mp4
04:15 -
007 General Plan with Interfaces.mp4
03:12
06 – Tuples in Typescript
-
001 Tuples in Typescript.mp4
04:04 -
002 Tuples in Action.mp4
05:27 -
003 Why Tuples.mp4
03:19
05 – Mastering Typed Arrays
-
001 Arrays in Typescript.mp4
05:04 -
002 Why Typed Arrays.mp4
04:30 -
003 Multiple Types in Arrays.mp4
02:57 -
004 When to Use Typed Arrays.mp4
00:53
04 – Annotations With Functions and Objects
-
001 More on Annotations Around Functions.mp4
04:55 -
002 Inference Around Functions.mp4
06:07 -
003 Annotations for Anonymous Functions.mp4
01:42 -
004 Void and Never.mp4
02:48 -
005 Destructuring with Annotations.mp4
03:35 -
006 Annotations Around Objects.mp4
07:05
03 – Type Annotations in Action
-
001 Type Annotations and Inference.mp4
02:02 -
002 Annotations with Variables.mp4
04:53 -
003 Object Literal Annotations.mp4
06:53 -
004 Annotations Around Functions.mp4
05:55 -
005 Understanding Inference.mp4
03:50 -
006 The ‘Any’ Type.mp4
07:47 -
007 Fixing the ‘Any’ Type.mp4
01:49 -
008 Delayed Initialization.mp4
03:04 -
009 When Inference Doesn’t Work.mp4
04:36
02 – What is a Type System
-
001 Do Not Skip – Course Overview.mp4
03:35 -
002 Types.mp4
05:11 -
003 More on Types.mp4
05:53 -
004 Examples of Types.mp4
04:48 -
005 Where Do We Use Types.mp4
00:49
Student Ratings & Reviews
No Review Yet