

This is an excellent take! ๐
That said you should strive to use both functions and classes. If you can simplify your functions to allow mostly any primitive input, thatโs great. It can be reused many times throughout your code. But if you have certain operations that only work with one type, then donโt be afraid to use a class
This advice looks sound. I'll definitely take it into consideration.

I donโt like/use the
class
keyword in JS, because I quite like the paradigm with prototypes & stuff, and that keyword tries to make it fit into a totally different paradigm, which doesnโt really work IMHO.
I've read somewhere that Javascript is more of a prototype-oriented language rather than an object-oriented one. Do you agree with this?
BTW, Iโve developed a few strats to have my own style in TS that I like quite a lot. I can tell more if youโre interested.
Thank you! But maybe not right now; I'm still learning the basics. Have you considered write an article about it? ๐ฎ

Fun fact: I made this meme to explain my classmates static variables.

Never heard of Lemoa, but I will definitely try. Thanks! ๐

Yes. Spiders are the superior web developers. They're especially good at eliminating bugs.

Hey, this looks pretty good. Thanks! ๐

I think you should do whatโs comfortable to you
Good advice, but I would like to expand outside of my comfort zone to learn different styles of programming.
but also try to adapt to the common language in each of the code bases you will be working on, so that everyone is on the same page.
Absolutely agree with you there.
Good luck in your journey!
Thank you! โค๏ธ

TypeScript is next on my list. The loose typing of JavaScript drives me a little nuts sometimes ๐ .

As long as youโre opting for composition over inheritance, itโs probably fine.
Totally agree with you there.
Probably on the โsparinglyโ end.
I'm on the same train of thought as you. I feel that relying too much on class
ignores the better features that JavaScript has to offer. However, I'm sure that its application is useful on the occasion where inheritance IS (but very rarely) necessary.

Yes. This seems to be one of the common arguments against "classes": they're not exactly classes in the traditional sense, and everything you can do in JavaScript can be done so without touching the class
keyword. It's basically syntactic sugar that adds more confusion to the language, or so I heard. I've read this article that explains the flaws behind with this feature: https://www.toptal.com/javascript/es6-class-chaos-keeps-js-developer-up
๐ฅ Discussion ๐ฅ ES6 Classes. Good or Evil?


Hello, everyone ๐. I am a newcomer when it comes to JavaScript. I come from an OOP background (C# and Java). I've recently learned that ES6 has a class
keyword that preforms similarly (but not exactly) to common OOP languages. Normally I would be inclined to use this feature in my projects; however, it came to my attention that the usage of class
in JavaScript seems to be heavily discussed (mostly in a negative light). My questions to this community are:
- Should it be used often, sparingly, or be outright avoided?
- What are its advantages and disadvantages?
- Are there specific cases where the usage of
class
excels?
Please share your thoughts.

I've never felt so identified by a meme.

I Imagine the merge conflict hell that these programmers have to go through...

Thank you for the advice. Unfortunately I couldn't upload a .gif version; the website throws the following error: SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data
. I image that this could be the result of a file being too big (the .gif version is 5.27MB). So at the end I decided to upload the .mp4 version (799 KB).

Stage 4.5: console.log() everything.

Applying the (DRY) Do Repeat Yourself principle.

Even if you DO escape, there is no guarantee that you'd leave with your sanity intact.
When you incorrectly implement the stop condition in your recursive function.
Video
Click to view this content.

You would think that being named Null would probably cause a problem. But Jeffrey? lol

I'm starting to learn full-stack development. This meme scares me, ngl.
When you incorrectly implement the stop condition in your recursive function.
Video
Click to view this content.