Some people believe that the best way to learn anything is "learning by doing". Others would rather than learn through books and from teachers. Think of learning a language. Which way do you think is a better way to learn language?.
These two ways have some advantages and disadvantage by following their feature. In my opinion, there is no best way to learn anything, even though English.
The people get learning skills from many sources when they had grown up. Usually, their ability to understanding new things is based on their human nature and their talent. Some people gen up new words when they hear the first time. But in some other people, it is difficult to remember. Also, people had their own way to learn, which is set on their life experience. It is hard to compare learning skill because every skill is useful for owned people.
Everything has their special cause. So different to explain the essence of something. The people know about the essence of them is important to understand about something. For that reason, when we explain different meanings we must use different ways to beneficial for learners. For example, to guide locations by on the picture is easier than to write or to tell. However, to teach English grammar by writing is efficient than other ways.
So that we must attend to choose a learning ways, what kind of things we have to learn. Our choice would be related nature of them.I wouldn't say which one is better. In my case learning by doing is better for me. Finally, we must use both of them, only assume that which one is optimal for current condition.