đ Key Learning Outcomes
- Learn to manage complexity in enterprise-grade applications by applying essential programming principles.
- Understand how to reduce code complexity through state management, dependency injection, and separation of concerns.
- Gain skills in object-oriented programming with TypeScript, focusing on object modeling, method extraction, and managing flow control.
- Explore functional programming techniques, including reducers and immutability, to improve code maintainability.
- Master the use of observable streams for handling asynchronous operations and preserving state over time.
đ¨âđĢ About the Course
This course delves into the principles and patterns needed to architect enterprise-level applications in JavaScript and TypeScript. Through controlled examples, you'll learn how to tackle complexity by applying core programming principles such as dependency injection, state management, and functional programming techniques. The course also covers object-oriented programming concepts and strategies for handling asynchronous data streams using observables.
đ¯ Target Audience
- Developers building or maintaining large-scale JavaScript applications.
- Engineers looking to simplify complex codebases and improve application architecture.
- Those interested in applying both object-oriented and functional programming patterns in enterprise applications.
- TypeScript users seeking to leverage its features for better code organization and type safety.
â Requirements
- Strong understanding of JavaScript, including ES6+ features.
- Basic knowledge of TypeScript.
- Familiarity with object-oriented and functional programming concepts.
đ Course Content
- Introduction to Enterprise Patterns: Overview of the course structure and the importance of reducing complexity in enterprise applications.
- Managing Complexity: Techniques for managing state, applying dependency injection, and extracting methods to maintain clean, testable code.
- Object-Oriented Programming: Learn object modeling, defining and typing objects, and managing state with TypeScript.
- Functional Programming Techniques: Implement reducers, higher-order functions, and immutable methods to manage application state effectively.
- Time Management in Applications: Explore observable streams and how to manage asynchronous operations and preserve state over time.
- Distributed Complexity: Simulate user actions and manage distributed state across application instances using real-world examples.
Drop a comment
Enterprise Architecture Patterns by Lukas Ruebbelke
Log in to leave a feedback
Loginđ Psst! Interested in More Architecture Courses?
Advanced Angular Component PatternsVideo
by Isaac Mann
đšī¸ Levels: đ Advanced
âŗ Duration: 0.5 hours
đ¤ Price: Subscription
đ§âđģ Learning Platform: Egghead.io
Software Design PrinciplesWrittenInteractive
by Nik Stern
đšī¸ Levels: đ Intermediate
âŗ Duration: 1 hours
đ¤ Price: Subscription
đ§âđģ Learning Platform: Codecademy
Hardcore Functional Architecture Patterns in JavaScriptVideo
by Brian Lonsdorf
đšī¸ Levels: đ Advanced
âŗ Duration: 4 hours
đ¤ Price: Subscription
đ§âđģ Learning Platform: Frontend Masters