Apr 05 2021
You’ve learned React, mastered npm install, and can find your way around webpack.config.js. You can do just about anything as long as there’s a module for it, and there seems to be a module for everything. But what happens when you can’t find a module? Where do you go when you can’t find the answer on Stack Overflow? You feel like a solid developer, but there’s a gnawing sensation in the pit of your stomach. You don’t like to think about it, but it’s there. The truth… A lot of this is wizardry to you. If there wasn’t an example out there, in some cases you’d have no idea how to get any of this working.
Here’s what you need to do:
- Understand how different primitive types are stored in memory, down to the addresses, space allocated, and binary representation (if you haven’t run into the word mantissa you’re not far enough).
- Understand the difference between value types and reference types, and assigning values vs assigning pointers.
- Understand implicit typing, explicit typing, nominal typing, structural typing, and duck typing.
- Understand function scope, block scope, and lexical scope.
- Understand the difference between an expression and a statement, and what it means to evaluate an expression.
- Understand what happens (or doesn’t) in memory/on the call stack when an expression is evaluated, argument passed, result returned, etc. vs when a value is assigned or retrieved from a variable.
- Understand IIFE’s, modules, and namespaces. And why ES6 modules and block scope don’t fully replace IIFE’s.
- Understand how bitwise operators, typed arrays, and array buffers work. Use understanding RGBA as a way to understand how to manipulate binary data.
- (browser) understanding how the in-memory DOM and layout trees are built and modified, when/how reflows/layouts, composites and repaints are triggered.
- Understand new, constructors, instanceof, and instances.
- Understand the differences between Object.create and Object.assign.
- Understand factories and classes, and how these approaches differ.
- Understand the difference between member properties and properties on the prototype.
- Understand pure functions, side effects, and state mutation
- Understand how closures work, and how they look on the call stack.
- Understand how high order functions work, and when to use them.
- Understand recursion and how to use them to build abstract data structures.
- Understand that algorithms to solve many common problems exist, and be familiar enough with them to find the one you need on Google because nobody remembers all of them. Or even most of them.
- Understand the difference between the is a and has a relationship when it comes to inheritance, polymorphism, and code reuse.
- Understand partial functions, currying, compose, and pipe. And understand why unary functions are so useful.
Here you have it. The key to demystification. Did I miss something? If yes, feel free to send me an answer in the comments
How Much Does it Cost to Develop an E-learning App?13 Working Methods to Increase Gym Member RetentionOn-demand Food Delivery Platforms — Types, Features, and MonetizationHow to Automate the Work of Real Estate Agents?Best Countries for Outsourcing Developers in Eastern EuropeHow to Build an Effective Healthcare Mobile AppHow to Create an App Like Uber – Exceed Team’s Experience
GOT AN IDEA? LET'S DISCUSS!
Share your project’s scope, timeline, technical requirements, business challenges, and other details you consider necessary. Our team will study them and contact you soon. Let’s make an exciting product together!