There are three basic ways to learn a new framework (or new programming language). In roughly the order you should try them, and in increasing order of usefulness, they are:
- Reading documentation
- Reading code
- Writing code
Reading Documentation
Reading the framework/language’s documentation is the best first step in trying to understand it; you want to get an overview of the thing, and introductory documentation is the best way to see the “lay of the land” quickly. On the other hand, many frameworks/languages (particularly those put out by large organizations) have a crushing amount of documentation. If you try to read it all, you’ll never finish. Therefore, once you get a rough idea of how things work, you should move on to the next step:
Reading Code
Reading existing code in the new framework/language lets you see how it’s used in practice. Looking at code will help you to determine which parts of the documentation are actually useful to read, and show you how the concepts discussed in that documentation are applied. However, there’s a nearly infinite amount of code to read, so after you look through two or three small examples, it’s time for the final step:
Writing Code
The only way to really learn a framework/language is to program for/in it. You should pick a small project (preferably something you’ve implemented before; you don’t want to be figuring out what to build at the same time you’re trying to figure out the basics of how to build it) and implement it in the new environment. In the course of doing so, a lot of questions will arise about how to do things; these questions will be answered by consulting both existing code and the documentation.
Iteration
Once you’ve knocked out a program or two, the documentation should make more sense, and you can revisit those parts of it which recommend themselves to you. You can cross-check that documentation against existing code, and write more code to test your understanding of what you’re reading. After a few iterations of this process, you’ll find yourself doing actual work.
The most important things are to:
- Avoid getting bogged down in minutiae
- Constantly incrementally expand your understanding
Happy coding.