Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

General Discussion

geoffrey
geoffrey
28,724 Points

JS - Knowing it perfectly before learning Framework ?

Hello everyone,

I would have a little question for experienced developers.

I'm learning some Javascript at the moment. And I know there are many frameworks such as Jquery, Angular that are widely used.

As a noob, I'm learning the basis of JS with TreeHouse. But once the basis learnt, do you think I really need to know, learn how to check forms and do anything else, using ONLY pure JS before using a framework ?

If I don't, will I misunderstand some importants aspects of JS by using any framework ?

Feel free to share you experience.

3 Answers

Scott Evans
Scott Evans
4,236 Points

Personally i feel its easier to know more about a language before using frameworks and libraries built for it.

As you are purely learning i feel it would be more beneficial to you to learn more about JavaScript before going into for example, jQuery. This will help you in a number of ways.

Reasoning

  • Having a greater understanding of JavaScript will help you understand the concepts of, and how frameworks operate.
  • Learning more pure JavaScript will give you a better understanding of the language it self and how this work, after all most frameworks are build to make things easier.

Pros

  • As stated above, a better understanding makes you a better programmer
  • You will have greater ability when encountering bugs and other JavaScript related problems

Cons

  • Obviously going deeper into pure JavaScript would take more time

If you are still only learning, and not creating anything for production, I feel the more knowledge you can get the better it will be in the long run. Feel free to ask me any more specific questions

Good Luck, Scott.

Hi there, I am in the same boat as you but I am getting there :) . Basically as you mentioned yourself that JQuery, Angular Backbone or then if you look at PHP , you have Laraval, Codeigniter, fuel PHP frameworks.. But these are libraries and frameworks based on the core concept of JavaScript and PHP. Understanding and grasping the core concepts of the language is paramount .. Once you understand how it works it will make more sense when you move on to these frameworks and libraries. So yes I believe take your time to understand the language first and then move on to the libraries. But there is no harm in studying these libraries and frameworks in understanding how are they incorporating these basic concepts. e.g.

function $ ( id) {
    return document.getElementById("id") ;
}
// Here you have simplified the whole process of selecting an id by writing a small function
// hence now you can write
$div = $('wrapper');

Silly example but kinda show how these variables function classes can be put together to make libraries and frameworks. hope that helps . cheers Ali

geoffrey
geoffrey
28,724 Points

Thank you, I'm going to follow your advices, I also think that's better. I was hesitating because I've seen many persons learning directly Jquery without knowing JS correctly.

Same at my evening classrooms, we are taught PHP, we've seen all the basis ( I mean how does work a for loop, comparison, cookies and things like that) but basically we've never created a full website from scratch using PHP.

I've learnt it from TH and I'm still in fact. But now, we are about to see, how to use a PHP framework, probably laravel.

It mostly uses OOP, and I honestly thing that's the last thing to do when you are a beginner, I have in mind that's better to practice at first with the language you want to learn and finally once you are good with that one, jump to a framework to save your time..

I'm going to do that so :)

Thank you.