Angular 17 Just Dropped, And It's Good?
Angular 17 just came out and from the looks of things, it actually looks good. Angular has been falling behind its comeptitors in recent years, and has always been known as the "harder" framework to learn. That stigma might just change in the near future.
I come from a Vue background, so let's see if this is enough to finally become team red.
The Angular team has introduced a slew of new features in v17. Let me break down some of the new or updated features you can expect to see in future projects.
Feature | Description |
---|
Built-in Control Flow | Introduces a new block template syntax for control flow that simplifies syntax and improves type checking, with new syntax for conditional statements and loops closer to JavaScript. |
Deferrable Views | Enables declarative and powerful deferred loading for components and their dependencies, simplifying the management of loading states and interactions with the IntersectionObserver API. |
Performance Improvements | Boasts up to 90% faster runtime due to optimized control flow and up to 87% faster builds for hybrid rendering, thanks to a new diffing algorithm and a more optimal implementation of the for loop. |
New Documentation Site | Launches Angular.dev as the new home for Angular documentation, featuring improved content, structure, and an interactive learning journey with WebContainers for learning Angular directly in the browser. |
Revamped Hybrid Rendering Experience | Makes server-side rendering (SSR) and static-site generation (SSG) more accessible with new CLI prompts and the introduction of the @angular/ssr package, integrating SSR into the Angular CLI tooling. |
Vite and esbuild | The default build system for new projects now uses Vite and esbuild, leading to significant improvements in build and refresh times. |
Standalone APIs | Standalone components, directives, and pipes are now enabled by default in new applications, promoting a gradual move away from NgModules. |
New Lifecycle Hooks | Introduces new lifecycle hooks like afterRender and afterNextRender for better performance and more control over DOM interactions. |
Material Design 3 | Ongoing work to incorporate Material Design 3 with more customization options for components, not yet ready in Angular 17. |
Developer Experience Enhancements | Includes enhancements such as experimental view transitions support, automatic preconnect in the image directive, and the ability to defer loading of the animations module. |
In a move to centralize resources and foster a stronger community, the Angular team has launched Angular.dev. This new platform is set to become the go-to place for all things Angular, from documentation to community support.
As a Vue developer, I can definitely see that the Angular team has been taking inspiration from its other competitors. I'm not sure if any of these features are in the React world, but they're definitely in Vue. And that isn't a bad thing. These are many features that attracted me to Vue in the first place and it definitely has me wanting to try and see their spin on it.
With every new release, the question arises: is it worth the upgrade? Angular v17 seems to not only introduce new features but also refine the existing ones, making it a compelling upgrade for those looking to leverage the latest in web development.
If you are a large team that has been using older Angular versions, it's probably best to hold off on upgrading to v17 until everything has been tried and tested. We wouldn't want entire websites going down because of unforseen failures in integration.
All-in-all, I think Angular 17 is moving in the right direction and seems competitive now in the smaller web developer space. With increases in performance and developer experience, Angular could be the framework of choice in the near future. I will be doing my own tests to see if it's right for me, but I can say that yes, Angular 17 is worth the hype.