The ‘original’ Angular: Still kicking in 2018
© Shutterstock / Ball
The AngularJS is over seven years old, but it’s still a viable framework option. In this article, Lyubomir Petkov explains why you don’t actually need to migrate to a newer version of Angular.
Hey, are you an Angular developer or running a company with multiple projects with their front-end based on the original AngularJS? Have you ever felt that you are falling behind your friends or competing businesses and under pressure that you should be using more recent versions such as Angular 2, 4 or 5 instead?
With the technology evolving you are now definitely at a crossroad — should you consider making an immediate conversion to the latest trend or should you decide to stick with good old, though imperfect, first version of Angular?
No need to worry! In this article, my aim is to show you that whatever choice you make, there is not really a bad decision. You just need to consider the ups and downs of each scenario. I will explore them here and share with you some of my personal front-end development experience which is extensive, as you might have guessed from the title, in working with Angular.
Path one: Shifting to Angular
Angular 2.0 introduced a massive change in the structure as compared to version 1.0. The architecture of Angular v1 is based on the Model-View-Controller pattern (MVC) whereas the one of Angular v2 is based on services and controllers. Version 4.0 is more of an upgrade to 2.0. It contains a lot of performance improvements, new features and has also reduced the code file size.
Starting a new project
If you’re beginning a brand new project or starting from scratch, what better time to dive in the world of Angular and create an up-to-date product using a technology that will be supported extensively in the next few years? If you are managing teams that are experienced with Angular, then a good option is to let one or some of them work with the latest version and master it in the process. Then, they can gradually spread the knowledge internally within the company. In the future, you and your employees will be confident to work on projects using this cutting-edge technology.
Migrating an already existing project
If an AngularJS project is near its end, it’s probably not necessary to migrate to Angular. However, if it’s a long-running project and it’s likely that it will continue to grow in the future, it might be a good idea to consider migrating to the latest version of Angular. Rewriting all project modules at once just for the sake of using the newest frameworks is a bad idea. It’s time-consuming and irritating.
According to Dor Moshe, “One of the keys to a successful upgrade is to do it incrementally, by running the two frameworks side by side in the same application and porting AngularJS components to Angular one by one. This makes it possible to upgrade even large and complex applications without disrupting other business because the work can be done collaboratively and spread over a period of time. The upgrade module in Angular has been designed to make incremental upgrading seamless.” Moshe gives a detailed explanation on how to achieve a seamless incremental upgrade on Hackernoon.
Path two: Continue working with AngularJS
I’ve been part of a small Angular development team of people and we’ve been involved in the development of the platform since Day 1. Over two years in the making, it is currently live with approximately 80,000 registered users. And yes, the front-end is built with the might of the original Angular framework. As I am now quite familiar with it, I feel pretty confident and comfortable using it for web development and I think it has been a great tool for meeting customer needs.
We have accumulated so much knowledge of the current version. We’ve also produced a large amount of code with it during this two-year period. We are stable at the moment and in a mature stage of the project, maybe nearing the end of the development phase so it’s probably not feasible for us to make the transition to Angular.
AngularJS will remain essential
AngularJS has been around for so long now – it was released in October 2010, to be exact – and one great thing about it is that it’s open-source. There’s a large community behind it, constantly contributing plugins and fixing bugs. There are tons of existing projects in production which still need to be maintained.
In my opinion, if you currently have an original Angular 1 project, you are safe for now. Even when it is eventually depreciated, there are enough users from the open source community who will be engaged enough to help it live on. But don’t take my word for it! Alex Kras explained that it’s still okay to use Angular 1 in 2017.
Flexible but also reasonable
Before choosing to update your application’s front-end from AngularJS to Angular, you should take into account different factors, from how much time and effort has been invested in the project, how many people have been involved, how much work is still left undone, and even the future plans of your own team and the client.
In the long term, I would probably slowly transition to Angular as a default front-end web development framework, but only after it proves its trustworthiness. For now, I would not hesitate to continue working on existing projects with AngularJS. Of course, that’s not to say I wouldn’t incorporate modules from higher versions of Angular if they have shown themselves to be useful.
In conclusion, be flexible. Don’t be scared of new and unfamiliar technologies but always measure the risks that come with making major changes to an established workflow. Also, don’t be afraid to “fall behind” the competition in terms of not jumping straight to the freshest and trendiest stuff there is out there.
To read more about Angular, download the latest issue of JAX Magazine: