Introducing C# in Simple Terms!

Introducing C# in Simple Terms!

In the past, we have used mega-series to tackle big subjects such as design patterns, anti-patterns, and sorting algorithms. In this series, we're going back to basics to discover, learn, and teach the programming language we all know and love: C#!

In the past, we have used mega-series to tackle big subjects such as design patternsanti-patterns, and sorting algorithms. In this series, we're going back to basics to discover, learn, and teach the programming language we all know and love: C#!

Goals and Expectations

"I have made this longer than usual because I have not had time to make it shorter." - attr. to Blaise Pascal, translated from French, 1657

I believe you cannot be a good programmer without being a good communicator, and the best communicators use their words wisely. The best communicators can adjust their styles for different audiences, and break complex large problems down into small, easily-understood parts. Unlike Mr. Pascal, I am taking the time to make these posts shorter and more easily understood.

The primary goal of this series, therefore, is not to explore every little feature C## offers; that's what the official documentation is for. Rather, my goal is to explain C#'s key concepts in accessible language, understandable by everyone. That also applies to the code samples in the series; they are small, focused, and as complete as I can make them to present the programming ideas I want to show.

As a writer (and I do consider myself a writer, not just a blogger), I also want to consistently improve my communication skills, and so writing this series is good practice for me.

With all of that in mind, here are my goals for this mega-series:

  • I want to describe complicated programming ideas in simple language, using clear and concise code samples.
  • I want as many people as possible to be able to read and comprehend each and every post, paragraph, and code block, including those for whom English may not be their first language.
  • I want each post topic to build off the previous ones. I won't introduce a concept until all the previous information you need to know in order to learn the new concept have been explored.
  • I want to improve my written skills, so I will need quality, constructive feedback from my readers.

That last bullet means I want to hear from YOU. Yes, you! Tell your friends, tell your coworkers, tell everyone you know that I want all the feedback I can possibly get for this series. I am not kidding in the slightest.

c# in simple terms c++

Bootstrap 5 Complete Course with Examples

Bootstrap 5 Tutorial - Bootstrap 5 Crash Course for Beginners

Nest.JS Tutorial for Beginners

Hello Vue 3: A First Look at Vue 3 and the Composition API

Building a simple Applications with Vue 3

Deno Crash Course: Explore Deno and Create a full REST API with Deno

How to Build a Real-time Chat App with Deno and WebSockets

Convert HTML to Markdown Online

HTML entity encoder decoder Online

C# in Simple Terms - Operators

Let's continue our C# in Simple Terms series with one of the basic parts of any line of code: the operators.

C# in Simple Terms - Structs and Enums

Now that we understand a little more about classes and previously learned the difference between value types and reference types, it's time to explore some more specialized C# types. In today's edition of C# in Simple Terms, let's explore two useful value types: structs and enums.

C# in Simple Terms - Namespaces

All code needs some kind of organization, and the most basic way to provide that organization in C# programs is through the use of namespaces.

C# in Simple Terms - Inheritance and Polymorphism

Now that we've discussed most of the basics we need for a C# program, let's talk about two concepts that are central to how C# (and indeed, all object-oriented programming languages) work: inheritance and polymorphism.

C# in Simple Terms - Code Blocks, Basic Statements, and Loops

In this article, the latest of our C# in Simple Terms series, we're going to discuss how to control the flow of execution in a C# program. This means we will answer the question, "how does the code know what to do next?"