Skip to content

Learning C# .NET development. Building on prior experience studying OOP in Java for 5 years. Creating small mini projects for each new learning item and placing them here.

Notifications You must be signed in to change notification settings

jordanleegraham17/Learning

Repository files navigation

C# .NET Development Syllabus

This syllabus was created as a rough idea of items to follow along with to learn the basics of C#. I will mostly be following the below link and creating 4/5 mini projects per section to learn the topics better myself.

tutorial

Module 1: Getting Started

  • Introduction to C# and .NET
  • Setting up your development environment (Visual Studio, Visual Studio Code)
  • Writing and running your first C# program

Module 2: Basics of C# Syntax

  • Variables and data types (int, double, string, bool, etc.)
  • Input and output (Console.WriteLine, Console.ReadLine)
  • Comments and documentation (//, /* */, ///)

Module 3: Control Flow

  • Conditional statements (if, else, else if)
  • Switch statements
  • Loops (for, while, do-while)
  • foreach loop
  • Break and continue statements

Module 4: Functions and Methods

  • Declaring and calling methods
  • Parameters and return values
  • Method overloading
  • Scope and lifetime of variables
  • Pass by value vs. pass by reference

Module 5: Arrays and Collections

  • Arrays (single-dimensional, multi-dimensional)
  • Lists and collections (List, Dictionary<TKey, TValue>)
  • Using LINQ for querying collections

Module 6: Object-Oriented Programming (OOP) Basics

  • Classes and objects
  • Constructors
  • Properties and fields
  • Inheritance and base classes
  • Polymorphism and interfaces

Module 7: Exception Handling

  • Handling exceptions with try-catch
  • Creating custom exceptions
  • Exception propagation

Module 8: File I/O and Data Serialization

  • Reading and writing text files
  • Reading and writing binary files
  • JSON and XML data serialization

Module 9: Advanced Topics

  • Delegates and events
  • Generics
  • Asynchronous programming with async/await
  • Attributes and reflection

Module 10: Working with Databases

  • Introduction to ADO.NET
  • Connecting to databases
  • Executing SQL queries
  • Entity Framework basics (if you want to explore ORM)

Module 11: Building a Simple Application

  • Combining what you've learned to build a small C# application

Module 12: Advanced Projects

  • Working on more complex projects and exploring libraries and frameworks (WPF, ASP.NET Core, Xamarin, etc.) based on your interests.

Module 13: Testing and Debugging

  • Writing unit tests with NUnit or xUnit
  • Debugging techniques and tools

Module 14: Deployment and Publishing

  • Packaging and deploying your application
  • Publishing to different platforms (desktop, web, mobile)

About

Learning C# .NET development. Building on prior experience studying OOP in Java for 5 years. Creating small mini projects for each new learning item and placing them here.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages