What Is Node.js and Why Should You Use It?

What Is Node.js?

Node.js is an open-source, cross-platform runtime environment and and library for executing JavaScript code outside of a browser. It uses an event-driven, asynchronous, non-blocking I/O architecture, making it lightweight and efficient for data-intensive real-time applications running across distributed devices.

Node.js is neither a framework nor a programming language but a runtime environment. It was written and introduced by Ryan Dahl in 2009.
Node.js was built on top of chrome V8 JavaScript Engine that is written in C++ language. All the JavaScript code is executed by the V8 JavaScript engine; which converts the code into Assembly code, which is then converted into machine code. Machine code is something that a computer processor understands.

what-is-nodejs
what is node js

Read more >>

C# Dynamic Type: Var vs dynamic keywords in C#

The dynamic keyword is used to define dynamic types. Dynamic type is used to avoid compile-time type checking. The compiler does not type-check dynamic type variables at compile time, instead, the compiler check the type at the run time. If the syntax of the statement is invalid, an error will be thrown at runtime.

Dynamic types are similar to object types, despite the fact that type checking for object type variables occurs at compile time rather than at runtime for dynamic type variables.

csharp dynamic type
C# dynamic type

Read more >>

C# Unsafe Code: Why do we need unsafe code in C#?

Unsafe code in C#

In general, the code written in C# is safe code that doesn`t directly access memory using pointers. It also doesn’t allocate raw memory. Instead, managed objects are created.
On the other hand, unsafe code in C# usually refers to a section of code that is not processed by the CLR (Common Language Runtime) and directly access memory using pointers.

Since pointers are complex and might result in memory-related errors like stack overflow, overwritten system memory, etc., extra caution must be taken while handling unsafe code.
By default, pointers are not supported in C#. However, the use of pointer variables is permitted by the unsafe keyword.

charp unsafe code

Read more >>

C# Events: Top 5 Differences between delegates and events in C#

C# Events: The Events enable a class or object to notify other classes or objects when some interesting thing happens to the object. A class that sends or raises the event is called the publisher, and the classes that receive or handle the event are referred to as subscribers.

There can be multiple subscribers to a single event. Typically, when an action takes place, a publisher raises an event. The subscribers who want to be notified when an action takes place should register or subscribe to handle specific events.

The following diagram shows the event in C#.

csharp events
C# event model

Read more >>

Sealed Class in C# with examples

csharp-sealed-class
sealed class in C#

What exactly is a sealed class?

A sealed class is a class that cannot be inherited by any class but can be instantiated. A sealed class can’t have any derived classes. A common use for a sealed class is to prevent a class from being accidentally inherited.

The purpose of a sealed class is to show that it is highly specialized and does not need to extend to add new functionality through inheritance. This is because it modifies or overrides its behavior.

Read more >>