
Explore C# as a simple, modern, object-oriented language created by Microsoft for Windows and web applications, built on C/C++ features and the .NET platform.
Learn to build your first C# .NET Core hello world console application by writing the main method, printing hello world, and compiling the program.
Learn to compile and run a program in Visual Studio, using start without debugging or the command line with CSC to generate and run an executable.
Explore variables as storage locations with associated data types, learn how values change via operators such as ++ and --, and print results to the console using Console.WriteLine.
explore arithmetic, assignment, comparison, logical, and bitwise operators, with practical examples of concatenation using the plus operator and the pre and post increment and decrement behaviors in c#.net core.
Manipulate strings in c# .net core by handling unicode characters, newline, console input, and perform concatenation, case conversion, and length checks.
Learn how to declare and initialize single and multi-dimensional arrays in C#.NET Core, use indexing starting at zero, assign values, print elements, and explore jagged arrays.
Master conditional statements in C# by comparing values with if, else, and switch, using the ternary operator, and identifying the maximum among three variables with logical operators.
Explore common looping constructs in c#.net core, including while, do-while, foreach, and for loops, with emphasis on entry and exit conditions and the increment operator ++.
Cover methods in C# with and without parameters, including void and return types, and invoking them via objects and dot notation. Demonstrate overloading and parameter-rich calls.
Define a class with data and function members, create objects, and expose public methods to assign values and print a full name.
Learn how inheritance lets a derived class reuse a parent class to reduce code and save time and money. Access public members and display messages through inherited methods with super.
Explore how public, private, protected, internal, and protected internal modifiers govern member visibility and how protected members are accessed via derived classes or objects.
Learn static members in c#.net core, including static variables that track object count, constructors that increment the count, static methods callable without objects, and static classes.
Explore how properties provide access to private class members through get accessors, using a public property to read private data and print values like 'Indiana Jones'.
Learn how properties expose a private member of a class to code outside of the class via accessors, using a public property to read the value.
Explore enumerations in c#.net core, defining color enumerations, accessing values by name, and assigning explicit numeric values like red five and green three.
Explore compile-time constants declared with const, initialized at compile time and unchangeable. Learn about runtime constants declared with readonly, set at runtime, not static, and accessed via object instances.
Learn exception handling in c#.net core using try, catch, and finally to display meaningful end-user errors, handle index out of range, and manage resources.
C# is a modern, object-oriented programming language intended to create simple yet robust programs. Designed specifically to take advantage of CLI features, C# is the core language of the Microsoft .NET framework. In this course, students gain the skills to exploit the capabilities of C# and of the .NET Framework to develop programs useful for a broad range of desktop and Web applications. C# (pronounced as see sharp) is a multi-paradigm programming language encompassing strong typing, imperative, declarative, functional, generic, object-oriented (class-based), and component-oriented programming disciplines.
The language is intended to be a simple, modern, general-purpose, object-oriented programming language.
The language, and implementations thereof, should provide support for software engineering principles such as strong type checking, array bounds checking, detection of attempts to use uninitialized variables, and automatic garbage collection. Software robustness, durability, and programmer productivity are important.
The language is intended for use in developing software components suitable for deployment in distributed environments.
Portability is very important for source code and programmers, especially those already familiar with C and C++.
Support for internationalization is very important.
C# is intended to be suitable for writing applications for both hosted and embedded systems, ranging from the very large that use sophisticated operating systems, down to the very small having dedicated functions.
Although C# applications are intended to be economical with regard to memory and processing power requirements, the language was not intended to compete directly on performance and size with C or assembly language.