Note: This document is a work in progress. You can help improve it.

Important terminology

The world of .NET comes with many keywords and terms to learn and understand, here we talk about the standard, most essential terms.

Remember that even though people in the real world mix these terms, they are very different

.NET

.NET is a free, cross-platform, open-source developer platform for building many different types of applications.

With .NET, you can use multiple languages, editors, and libraries to build for web, mobile, desktop, gaming, and IoT.

--.NET site

.NET is a platform built by Microsoft that gives developers the tools to build modern apps. Like using a workbench for building something in the physical world, it gives you the tools, place, and practices for building software.

The .NET Platform is a complex environment that has three primary flavors

  • .NET Core is a modern, cross-platform version of .NET. The industry is moving towards .NET Core and is currently migrating to take advantage of the new framework. Most new development is happening on .NET Core. During the course, we cover the most recent version of .NET Core.
  • .NET Framework is the workhorse of the .NET world. Framework is usually (though not necessarily) legacy code.
  • Xamarin/Mono is for building mobile apps using the tools of .NET

What makes .NET and it's three flavors robust is that all three of them implement .NET Standard. .NET Standard is a unified interface for the three flavors of .NET. This unified interface means that code, knowledge, and ideas able to be used across the other flavors of .NET. Read more about it on their F.A.Q..

.NET Core

Since the course focuses on .NET Core, here are some standard terms that come up during the course.

ASP.NET

ASP.NET is the framework in .NET that we use to build web apps. This includes running a server, returning HTML and JavaScript, and Authentication. ASP.NET is the blanket framework for all things .NET and web-based. If there is a web site that uses .NET, they are running ASP.NET.

WEB API

Web API is a framework within ASP.NET that helps developers build APIs. APIs are used to store and query data. Web API is a set of tools, libraries, packages, and ideas that make developing RESTful APIs easy.

C#

When we write software, we need to write it using a programming language. A programming language is a language that a developer uses to give commands to a computer. In the .NET world, there are three prominent languages.

  • C# is the most popular language use using .NET. It is a modern, multi-paradigm language that is continually updated. C# is known for being a strongly typed language that is widely used with .NET.
  • F# is a functional language that has its roots in Lambda calculus and is similar to OCaml, Scala, and Haskell.
  • Visual Basic is an event-driven language that is commonly used in Excel and is tightly coupled with the Windows EcoSystem.

During the class, we cover the basics of C#.

Summary

During the course, we use C# to build RESTful Web API endpoints that are a part of our ASP.NET apps. These web apps run on .NET Core.