RxJS offers a powerful functional approach for dealing with events and with integration points into a growing number of frameworks, libraries and utilities. But learning RxJS and reactive programming can be difficult, there are a lot of new concepts, big API service and a fundamental shift and mindset from imperative to declarative style.
Continue reading “RxJS: What and Why”Blog
Next.js Basics
Next.js is a framework that builds up on react. it has more features than react, it focuses on more things than React and it gives us clear guides and rules on how we should write our code and structure our files.
Continue reading “Next.js Basics”Node Server in Detail – part 1
NodeJs is a powerful technology that we can use to create end-to-end applications with one language which is JavaScript and these applications can handle millions of users without blocking. we can build any application we can think of such as web applications, desktop applications, and hardware (embedded systems).
Continue reading “Node Server in Detail – part 1”Internet and Networking Protocols Overview
In this article, I will cover the basics of How the internet works by covering the history of the web and the networking protocols that make it work and are important for us as web developers to know and understand.
Continue reading “Internet and Networking Protocols Overview”Promises Deep Dive
Before promises, we handled asynchronous code with callbacks which were hard to handle well. besides being an unreadable code (pyramid of doom), trying to handle multiple callbacks to run after an asynchronous operation ended or handle a completed process later in the code was hard to handle. There was a need for a better coding approach for handling asynchronous events.
Continue reading “Promises Deep Dive”Composition Over Inheritance
Before we start to understand the limitations of inheritance and how you can solve them with composition it will be good to point out that prototypal inheritance is for object-oriented programming paradigms as closures are for functional programming paradigms and that inheritance is when you design your types around what they are while the composition is when you design your types around what they do.
Continue reading “Composition Over Inheritance”JavaScript Factories
Sometimes the creation of an object can be complicated and the factory pattern can be used to simplify that and hide a lot of that from our front end. Basically, the factory pattern can help us simplify object creation and create different objects based on need. in this article, we will see simple examples to understand the factory pattern in JavaScript and the advantages over the others.
Continue reading “JavaScript Factories”JavaScript Errors
In JavaScript, we have a native error constructor function which we can create instances of it by using the “new” keyword”. the instance itself doesn’t do anything but by using the “throw” keyword with the error instance, interesting things can happen.
Continue reading “JavaScript Errors”JavaScript – Object Oriented Programing
Object Oriented Programing means bringing together the data and the behavior in a single location called an object. data and behavior are the 2 main things in programs. data means the things we keep in memory and behavior means functions, the things that programs can do. This paradigm is entirely different than the functional programming paradigm that keeps a separation between the data and behavior.
Continue reading “JavaScript – Object Oriented Programing”JavaScript Super Powers – Prototypal Inheritance
Inheritance is when one object gets access to the properties and methods of another object. the classical inheritance is very verbose but the Prototypal inheritance is simple, flexible, extensible, and easy to understand. both ways are not perfect but prototypal inheritance can be very powerful.
Continue reading “JavaScript Super Powers – Prototypal Inheritance”