One way to learn is to look over the interactive roundup of frameworks at TodoMVC and see how they work.
Were you expecting an answer here? If you were, I’m sorry, there is no answer to “which is the best”. However there are so many, I’m instead going to talk about how you should figure out the best one for you.
For example, ReactJS compiles jsx to .js files. When I first started learning, adding this addition to my workflow was another learning curve (on top of learning React) that I was not happy about, nor planning on. I had such a great workflow, I did not want to change it. Also, I kept hitting walls trying to get my gulp commands to run it for me, always throwing errors.
This is where some real trial and error comes into play. Try building something with one of the frameworks you want to learn about. I’d say look at ToDoMVC and their code, but nothing compares to actually building something. I learned AngularJS and ReactJS the same way, I built a WordPress theme powered by the WordPress REST API for each framework. I then built a backend admin app using both languages, just so I could really get a feel for each.
Bring what you learned above together and this is where “the best framework for you” really comes together. Once you find that perfect sweet spot of code that you like coding ’cause it fits well into your workflow, you have found the best framework for you. Other frameworks may share some of the coding, or the workflow, so keep on trying new ones.
Overall, this is why I personally picked Angular. It was a mix of peers who recommended it to me, and my instant connection. I was able to build something pretty robust very quickly, and to this day can get an Angular app (Single Page or micro app) up and running very quickly. I know how to work with it, it works well with my workflow, and overall I just enjoy working with it.
And if you want to talk to me about Angular and Angular 2, feel free to ping me on Twitters. I will be migrating to Angular2 soon 🙂
Yes, before you say you “should” learn Backbone because it is already in WordPress, you “should” not learn anything because someone else does. That is why while I love Angular, I won’t tell people to exclusively use it. Try Backbone, seriously….. good luck. If you want to try Backbone, Ian from Delicious Brains has a good intro and Adam Silverstein of 10up also does a great talk on Backbone.
Let us know which framework you like the best? Is it Angular? React? Ember? Backbone?