Introduction to frameworks

If you need an intro/introduction to any of the following frameworks .NET Framework, .NET, React Native, Flutter, Cordova, Spark, Hadoop, gRPC, please watch my videos on my YouTube playlist “Introduction to frameworks”.


Introduction to frameworks


Introduction to .NET Framework

The .NET Framework is a proprietary software framework developed by Microsoft that runs primarily on Microsoft Windows.

It was the predominant implementation of the Common Language Infrastructure (CLI) until being superseded by the cross-platform .NET project.

It includes a large class library called Framework Class Library (FCL) and provides language interoperability (each language can use code written in other languages) across several programming languages.

Programs written for .NET Framework execute in a software environment (in contrast to a hardware environment) named the Common Language Runtime (CLR).

The CLR is an application virtual machine that provides services such as security, memory management, and exception handling.

As such, computer code written using .NET Framework is called “managed code“.

FCL and CLR together constitute the .NET Framework.


Content source:

https://en.wikipedia.org/wiki/.NET_Framework

Top

Introduction to .NET

.NET is a free and open-source, managed computer software framework for Windows, Linux, and macOS operating systems.

It is a cross-platform successor to .NET Framework.

The project is primarily developed by Microsoft employees by way of the .NET Foundation, and released under the MIT License.

.NET supports four cross-platform scenarios:

  • ASP.NET Core web apps
  • Command-line/console apps
  • Libraries
  • Universal Windows Platform apps


Content source:

https://en.wikipedia.org/wiki/.NET

Top

Introduction to React Native

React Native is an open-source UI software framework created by Meta Platforms, Inc.

It is used to develop applications for Android, Android TV, iOS, macOS, tvOS, Web, Windows and UWP by enabling developers to use the React framework along with native platform capabilities.

It is also being used to develop virtual reality applications at Oculus.

In 2012 Mark Zuckerberg commented, “The biggest mistake we made as a company was betting too much on HTML as opposed to native“.

Using HTML5 for Facebook’s mobile version resulted in an unstable application that retrieved data slowly.

He promised Facebook would soon deliver a better mobile experience.

Inside Facebook, Jordan Walke found a way to generate UI elements for iOS from a background JavaScript thread, which became the basis for the React web framework.

They decided to organize an internal Hackathon to perfect this prototype in order to be able to build native apps with this technology.


Content source:

https://en.wikipedia.org/wiki/React_Native

Top

Introduction to Flutter

Flutter is an open-source UI software development kit created by Google.

It is used to develop cross platform applications for Android, iOS, Linux, macOS, Windows, Google Fuchsia, and the web from a single codebase.

First described in 2015, Flutter was released in May 2017.

The first version of Flutter was known as “Sky” and ran on the Android operating system.

It was unveiled at the 2015 Dart developer summit with the stated intent of being able to render consistently at 120 frames per second.

During the keynote of Google Developer Days in Shanghai in September 2018, Google announced Flutter Release Preview 2, the last major release before Flutter 1.0.

On December 4th of that year, Flutter 1.0 was released at the Flutter Live event, denoting the first stable version of the framework.

On December 11, 2019, Flutter 1.12 was released at the Flutter Interactive event.

 

Content source:

https://en.wikipedia.org/wiki/Flutter_(software)

Top

Introduction to Cordova

Apache Cordova (formerly PhoneGap) is a mobile application development framework created by Nitobi.

Adobe Systems purchased Nitobi in 2011, rebranded it as PhoneGap, and later released an open-source version of the software called Apache Cordova.

Apache Cordova enables software programmers to build hybrid web applications for mobile devices using CSS3, HTML5, and JavaScript, instead of relying on platform-specific APIs like those in Android, iOS, or Windows Phone.

It enables wrapping up of CSS, HTML, and JavaScript code depending upon the platform of the device.

It extends the features of HTML and JavaScript to work with the device.

The resulting applications are hybrid, meaning that they are neither truly native mobile application nor purely Web-based.

They are not native because all layout rendering is done via Web views instead of the platform’s native UI framework.

 

Content source:

https://en.wikipedia.org/wiki/Apache_Cordova

Top

Introduction to Spark

Apache Spark is an open-source unified analytics engine for large-scale data processing.

Spark provides an interface for programming clusters with implicit data parallelism and fault tolerance.

Originally developed at the University of California, Berkeley’s AMPLab, the Spark codebase was later donated to the Apache Software Foundation, which has maintained it since.

Apache Spark has built-in support for Scala, Java, R, and Python with 3rd party support for the .NET CLR, Julia, and more.

Spark was initially started by Matei Zaharia at UC Berkeley’s AMPLab in 2009, and open sourced in 2010 under a BSD license.

In 2013, the project was donated to the Apache Software Foundation and switched its license to Apache 2.0.

In February 2014, Spark became a Top-Level Apache Project.

Spark had in excess of 1000 contributors in 2015, making it one of the most active projects in the Apache Software Foundation and one of the most active open source big data projects.

 

Content source:

https://en.wikipedia.org/wiki/Apache_Spark

Top

Introduction to Hadoop

Apache Hadoop is a collection of open-source software utilities that facilitates using a network of many computers to solve problems involving massive amounts of data and computation.

It provides a software framework for distributed storage and processing of big data using the MapReduce programming model.

Hadoop was originally designed for computer clusters built from commodity hardware, which is still the common use.

It has since also found use on clusters of higher-end hardware.

All the modules in Hadoop are designed with a fundamental assumption that hardware failures are common occurrences and should be automatically handled by the framework.

The core of Apache Hadoop consists of a storage part, known as Hadoop Distributed File System (HDFS), and a processing part which is a MapReduce programming model.

Hadoop splits files into large blocks and distributes them across nodes in a cluster.

It then transfers packaged code into nodes to process the data in parallel.

 

Content source:

https://en.wikipedia.org/wiki/Apache_Hadoop

Top

Introduction to gRPC

gRPC (gRPC Remote Procedure Calls) is a cross-platform open source high performance Remote Procedure Call (RPC) framework.

gRPC was initially created by Google, which has used a single general-purpose RPC infrastructure called Stubby to connect the large number of microservices running within and across its data centers for over a decade.

In March 2015, Google decided to build the next version of Stubby and make it open source.

The result was gRPC, which is now used in many organizations outside of Google to power use cases from microservices to the “last mile” of computing (mobile, web, and Internet of Things).

It uses HTTP/2 for transport, Protocol Buffers as the interface description language, and provides features such as authentication, bidirectional streaming and flow control, blocking or nonblocking bindings, and cancellation and timeouts.

It generates cross-platform client and server bindings for many languages.


Content source:

https://en.wikipedia.org/wiki/GRPC

Top