There is an elephant in the room and you can’t ignore it.
It’s not about choosing the right JS framework, it’s ‘Software Engineering’.
‘Quick feature Delivery’ is crucial to any business, and just for the sake of it, there should not be any compromise on –
- Maintainability, everyone including you has to obey a coding guideline, linters come to rescue, plus it has to be as declarative as possible, a little compromise on performance over readability should be acceptable
- Testability, unless you love to live dangerously you should write tests
- Understandability, you have to have a lot of documentation, examples and support available easily/publicly for your choice set of tools
- Performance, a framework can yield good results if you know how to use it correctly and you must know how to do that
Angular meets all of the above pre-requisites – its yeoman generator comes bundled with full set of plugins that you’ll require alongside test generators in jasmine.
Note: Yeoman may not meet all of your requirements. It’s hackable just like any other application & hence, you must customize it to match requirements
And then, there are important elements e.g. Single Click Delivery and Continuous Integration.
Angular has Protractor, that helps you with Integration tests.
I had been a vanilla JS fan. It’s my forte. I loved jQuery too. However, I was in a state of denial, maintaining my stance that the fad for frameworks will end soon.
Then, there was a dilemma – there is high risk in being an early adopter, you may end up making a huge tech debt if you’re too early, and there is FOMO, if you procrastinate long enough you may miss out.
But, the elephant was in the room already and it left no space for my opinionatedness. And, I gave in.
It’s okay to succumb to the pressure and demands of the industry and embrace whatever comes your way.
And, remember folks, it’s again not about the framework.It’s about the bigger picture. If you can ensure all pre-requisites stated above, then your framework of choice barely matters.