← Back to blog
Learn Angular for free: resources you shouldn't miss (2/2)

Learn Angular for free: resources you shouldn't miss (2/2)

Learn Angular for free: top online resources you shouldn't miss (2/2)

Welcome to the second part of our comprehensive Angular learning resource guide! In the first part, we covered the foundational concepts of Angular. Now, we'll dive into advanced topics that will elevate your Angular expertise to the next level.

This segment focuses on reactive development, forms, testing, architecture, and the latest Angular features. These carefully curated resources will help you master the more complex aspects of Angular development.


RxJS

RxJS plays a vital role in Angular, enabling us to handle asynchrony, reactive programming, state management, and the composition of operations within our applications. While there is a perception that mastering RxJS can be challenging, I believe that learning RxJS itself is not overly complex. However, it does require a significant investment of time and patience.

I have curated a selection of five videos that serve as excellent introductions to RxJS. The first video by Joshua Morony explores three different approaches to learning RxJS. Next, Mike Pearson's speech at ng-conf demonstrates the distinction between an imperative and reactive approach through a practical example. Laith Academy offers a comprehensive hour-long course that explains the fundamentals of RxJS from scratch.


RxJS Operators

As mentioned earlier, the number of operators in RxJS is extensive, totaling over 100. However, we typically rely on a selected set of operators in everyday programming. The more familiar we are with the capabilities of RxJS, the more effectively we can produce high-quality code.

The first featured resource by Joshua Morony focuses on the most commonly used RxJS operators. In the second material, Mike Brocchi and John Niedzwiecki shed light on 20 lesser-known operators that are often overlooked. The following videos explore the distinctions between various transformation operators.


RxJS Best Practices

As we explore the capabilities of RxJS, it is crucial to also familiarize ourselves with the best practices associated with it. I recommend watching Michael Hladky's presentation at the ng-conf conference to gain insights into these practices. In his workshop-style talk, Michael demonstrates advanced patterns that can be applied in business applications.


RxJS Testing

Testing RxJS code is often considered a challenging aspect to master, but there are valuable resources available to aid in understanding this process. Kevin Kreuzer's video provides insights into using marble tests for testing reactive code. Joshua Morony's comprehensive material demonstrates various techniques for testing reactive code in different components.


Signals - New Feature Angular 16

In recent months, signals have emerged as a highly discussed topic among Angular developers. This feature was introduced as a developer preview in Angular version 16. I recommend starting with the first two videos created by Angular's official YouTube account to delve into this exciting development.


Forms

Mastering forms is a crucial aspect when it comes to building major business applications. In this section, I have curated a selection of videos and articles that will introduce you to various aspects of forms in Angular.

Fireship and Decoded Frontend have created informative videos covering the basics of reactive and template forms. Joshua Morony's video showcases the creation of dynamic forms based on JSON, offering insights into building dynamic and customizable form structures.


Testing

I once came across a tweet stating that testing Angular applications is often more challenging than writing the code itself. To delve deeper into the mechanics of writing effective tests, I recommend watching the following videos:

Reiner Hahnekamp delivers a speech showcasing various testing techniques in Angular. Shai Reznik's presentations focus on Angular's Test-Driven Development (TDD) approach. Maria Korneeva's video explores the use of Jest in Angular's unit tests.


State Management

The resources provided below will assist you in exploring the concept of state management and determining whether the usage of libraries like NgRx or rx-angular is necessary. It's important to note that this is a vast topic, and definitive answers may be elusive as the decision relies on various factors.


Architecture

In the first video, Manfred Steyer explores lightweight architectures using the latest innovations in Angular. Tomas Trajan's article presents a quick guide on building an epic Angular application with clean architecture. Then three books that talk about the use of Nx to create scalable Angular applications.


"Learning by reading is good, but learning by doing is better."

Engaging in problem-solving is an incredibly valuable approach to learning Angular. Thomas Laforge has developed a project that offers a hands-on experience, enabling you to enhance your Angular skills by tackling real-world challenges commonly encountered in your professional journey.


Angular 16

Angular 16 has brought us a lot of good, many new opportunities. Make sure to explore the dedicated Signals section mentioned earlier. In addition, I wanted to put here some materials prepared by Minko Gechev, Angular Team, and Manfred Steyer, in which they listed all the news from the new version of Angular 16.


Acknowledging the Incredible Contributors

I would like to thank all the creators who made this list possible. Each of you creates amazing content that allows us to become better programmers. In the second part of the article, the creators of the materials are (in alphabetical order):

Their dedication and hard work deserve our appreciation and gratitude. I encourage everyone to follow these talented authors, engage with their content, and support their ongoing efforts to empower and educate Angular programmers.


Conclusion

This concludes our comprehensive two-part guide to learning Angular for free. We've covered everything from foundational concepts in Part 1 to advanced topics like RxJS, testing, architecture, and the latest Angular features in this second part.

Key Takeaways:

  1. RxJS Mastery - Start with the basics and gradually work your way up to advanced patterns
  2. Hands-on Practice - Use Angular Challenges to apply what you've learned
  3. Stay Current - Keep up with the latest features like Signals and new Angular versions
  4. Test Everything - Learn testing early and make it part of your development process
  5. Architecture Matters - Understand how to build scalable, maintainable applications

Your Learning Journey:

Remember, becoming proficient in Angular is a journey, not a destination. The Angular ecosystem is constantly evolving, and staying curious and engaged with the community is key to your success.

Start with the basics, practice consistently, and don't be afraid to tackle challenging projects. The Angular community is incredibly supportive, and these resources will guide you every step of the way.

Happy coding, and welcome to the exciting world of Angular development! 🚀

Comments

Comments are disabled until analytics consent is granted.