After learning the basics of computer science and the JavaScript ecosystem, and generally exploring, it's finally time to invest heavily in JavaScript. This investment will be rewarding in terms of the skills you will gain and the value it will add to you as a web developer and to your resume as a job seeker.
We are going to build a solid knowledge in JavaScript so that in the future you won't have skill issues. This will help you learn the technology and frameworks faster and more deeply.
Object oriented programming in JavaScript
Before we dive into implementing object-oriented principles in JavaScript, we need to understand what it is. To do so, please watch the following videos:
Since OOP is widely used in the industry and can be a bit complicated, feel free to explore more about it and ask question. here is a list of useful videos
After you did your researches get back to the track and start learning from the following resource.
The Modern JavaScript Tutorial
Previously, we learned some basics about JavaScript using the same source here. Its time to continue reading through this source again.
Advanced working with functions
We left this subject previously. It's now time to learn more about functions.
Object properties configuration
This subject is a little bit advanced and may be confusing, but you will learn enough for now. We will dive deeper into this topic at the appropriate time. Feel free to research more about the subjects introduced in this section.
After you read through these resources, please consider watching the following videos as well. They are great for learning and practicing the harder and more complicated parts of OOP:
OOP programming is a broad and extensive subject. Keep in mind that we will return for more in-depth learning about this topic. For now, what we have learned here is more than enough for the foreseeable future.
Debugging and error handling
Well, shit happens, prod environment will break, database tables will drop. and there is always a developer who needs to fix the issue and save the day. Besides that, we need to be prepared for unexpected errors and bugs. We have to anticipate potential issues and put safeguards in place so that, in case of an emergency, we don't overwhelm the system and break it.
Promises, Event Loops, Modules
These concepts are fundamental to asynchronous programming in JavaScript, which is essential for building responsive and efficient back-end applications. You'll learn how to work with promises, understand the event loop, and organize your code using modules.
Typescript
TypeScript is a superset of JavaScript that adds static typing. You'll learn the benefits of using TypeScript, its syntax, and how it can improve your code quality and maintainability. For now, we won't spend a lot of time learning TypeScript, but we will definitely return to this topic later to explore it further.
JavaScript Run Times
Understanding how JavaScript actually runs is key to writing efficient code.