this post was submitted on 21 Jun 2023
5 points (100.0% liked)
No Stupid Questions (Developer Edition)
923 readers
1 users here now
This is a place where you can ask any programming / topic related to the instance questions you want!
For a more general version of this concept check out [email protected]
Icon base by Lorc under CC BY 3.0 with modifications to add a gradient
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I'd suggest the MDN tutorials on Web Development: https://developer.mozilla.org/en-US/docs/Learn as a starting point. They also cover several frameworks (React, Ember, Svelte, Vue, Angular) - but I'd only recommend a framework after you have a good grasp on JS as a language. For deepening your JS knowledge I can very much recommend the "You don't know JS" books, they are free to read only: https://github.com/getify/You-Dont-Know-JS.
Also: pick one framework, not all of them. The safest bet is probably react, I personally work with Angular. Anyway, for the framework of your choice you probably want to walk through their official tutorials.
Gotcha thank you, I know C++ and C# (C# is by far what I have the most experience in), how similar are those to JS? I know that JS is more functional where a function would have a class passed in rather than a class containing methods. What other differences should I expect?
Javascript can be written both in a functional and an oo style, it doesn't prescribe one over the other. The way inheritance works (prototype based) might be a source of confusion, because even though there is a class based syntax since 2015, it still has a prototype chain under the hood. Also the binding of the this pointer can work in unexpected ways. And things like scope and hoisting of variables are a bit different. Also there is no overloading of methods. It pays off quickly to read about the basic mechanics of the language if you want to do something with it.
I'm working in a company where many developers have a strong Java background, the company adopted Typescript/Angular a few years ago for new projects and it got adopted by colleagues with long tenures quickly, the syntax similarities are so close that in my eyes it is more problematic when some expectations are translated over that just don't hold, than that the colleagues struggeling with language itself, more difficult might be that standard library does not translate over in the same way the language primitives do.