{"id":22075781,"url":"https://github.com/rramoscabral/20483---training---programming-in-c-sharp","last_synced_at":"2025-10-11T20:31:01.988Z","repository":{"id":93465602,"uuid":"205839820","full_name":"rramoscabral/20483---Training---Programming-in-C-Sharp","owner":"rramoscabral","description":"20483 - Training - Programming in C#","archived":false,"fork":false,"pushed_at":"2024-09-20T11:46:52.000Z","size":38,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-30T22:12:21.430Z","etag":null,"topics":["20483","c-sharp","csharp","learning","microsoft-training","programming-language","training"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rramoscabral.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-09-02T11:14:49.000Z","updated_at":"2024-09-20T11:46:56.000Z","dependencies_parsed_at":"2024-12-02T00:00:34.609Z","dependency_job_id":null,"html_url":"https://github.com/rramoscabral/20483---Training---Programming-in-C-Sharp","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rramoscabral%2F20483---Training---Programming-in-C-Sharp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rramoscabral%2F20483---Training---Programming-in-C-Sharp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rramoscabral%2F20483---Training---Programming-in-C-Sharp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rramoscabral%2F20483---Training---Programming-in-C-Sharp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rramoscabral","download_url":"https://codeload.github.com/rramoscabral/20483---Training---Programming-in-C-Sharp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":236126441,"owners_count":19098947,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["20483","c-sharp","csharp","learning","microsoft-training","programming-language","training"],"created_at":"2024-11-30T22:11:12.547Z","updated_at":"2025-10-11T20:31:01.588Z","avatar_url":"https://github.com/rramoscabral.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# 20483 - Training - Programming in C#\nTraining for Microsoft Official Course (MOC) 20483 Programming in C\n\n\u003cbr\u003e\n\n### About the course\nThis training course teaches developers the programming skills that are required for developers to create Windows applications using the Visual C# language.  \nDuring their five days in the classroom students review the basics of Visual C# program structure, language syntax, and implementation details, and then consolidate their knowledge throughout the week as they build an application that incorporates several features of the .NET Framework 4.7.\n\n\u003cbr\u003e\n\n### Audience profile\n * This course is intended for experienced developers who already have programming experience in C, C++, JavaScript, Objective-C, Microsoft Visual Basic, or Java and understand the concepts of object-oriented programming.\n* This course is not designed for students who are new to programming; it is targeted at professional developers with at least one month of experience programming in an object-oriented environment.\nAt course completion\n\n\u003cbr\u003e\n\n### After completing this course, students will be able to:\n* Describe the core syntax and features of Visual C#.\n* Create methods, handle exceptions, and describe the monitoring requirements of large-scale applications.\n* Implement the basic structure and essential elements of a typical desktop application.\n* Create classes, define and implement interfaces, and create and use generic collections.\n* Use inheritance to create a class hierarchy and to extend a .NET Framework class.\n* Read and write data by using file input/output and streams, and serialize and deserialize data in different formats.\n* Create and use an entity data model for accessing a database and use LINQ to query data.\n* Access and query remote data by using the types in the System.Net namespace and WCF Data Services.\n* Build a graphical user interface by using XAML.\n* Improve the throughput and response time of applications by using tasks and asynchronous operations.\n* Integrate unmanaged libraries and dynamic components into a Visual C# application.\n* Examine the metadata of types by using reflection, create and use custom attributes, generate code at runtime, and manage assembly versions.\n* Encrypt and decrypt data by using symmetric and asymmetric encryption.\n\n\u003cbr\u003e\n\n#### Prerequisites\nDevelopers attending this course should already have gained some limited experience using C# to complete basic programming tasks.   \nMore specifically, students should have hands-on experience using C# that demonstrates their understanding of the following:\n * How to name, declare, initialize and assign values to variables within an application.\n * How to use: arithmetic operators to perform arithmetic calculations involving one or more variables; relational operators to test the relationship between two variables or expressions; logical operators to combine expressions that contain relational operators.\n * How to create the code syntax for simple programming statements using C# language keywords and recognize syntax errors using the Visual Studio IDE.\n * How to create a simple branching structure using an IF statement.\n * How to create a simple looping structure using a For statement to iterate through a data array.\n * How to use the Visual Studio IDE to locate simple logic errors.\n * How to create a Function that accepts arguments (parameters and returns a value of a specified type.\n * How to design and build a simple user interface using standard controls from the Visual Studio toolbox.\n * How to connect to a SQL Server database and the basics of how to retrieve and store data.\n * How to sort data in a loop.\n * How to recognize the classes and methods used in a program.\n\n\n\u003cbr\u003e\n\n#### Modules details\n----------\n\n[Here you can see a brief description of each training module](Modules_Details.md)\n\n\n#### Course outline:\n----------\n\n[Here you can see the lessons ans labs of each training module](Course_outline.md)\n\n \n\u003cbr\u003e\n \n\n### Resources\n----------\n * [C# programming guide](https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/)\n * [C# reference](https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/)\n * [.NET documentation](https://docs.microsoft.com/en-us/dotnet/)\n * [.NET Framework versions](https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/versions-and-dependencies)\n    * [.NET Framework Lifecycle FAQ](https://docs.microsoft.com/en-us/lifecycle/faq/dotnet-framework)\n * [.NET In-Browser Tutorial](https://dotnet.microsoft.com/learn/dotnet/in-browser-tutorial/)\n * [.NET Microsoft Team Blog](https://devblogs.microsoft.com/dotnet/)\n * [How to Add class diagrams to projects](https://docs.microsoft.com/en-us/visualstudio/ide/class-designer/how-to-add-class-diagrams-to-projects)\n * [Overview Visual Studio 2019](https://docs.microsoft.com/en-us/visualstudio/get-started/visual-studio-ide?view=vs-2019)\n   * [What's new in Visual Studio 2019](https://docs.microsoft.com/en-us/visualstudio/ide/whats-new-visual-studio-2019?)\n* [Overview Visual Studio 2017](https://docs.microsoft.com/en-us/visualstudio/get-started/visual-studio-ide?view=vs-2017)\n   * [What's new for design in Visual Studio 2017](https://docs.microsoft.com/en-us/visualstudio/modeling/what-s-new-for-design-in-visual-studio?view=vs-2017)\n * [Overview Visual Studio Code](https://code.visualstudio.com/docs)\n   * [User Interface](https://code.visualstudio.com/docs/getstarted/userinterface)\n   \n\u003cbr\u003e\n\n\n#### Free eBooks\n----------\n * [C# 8.0 and .NET Core 3.0 – Modern Cross-Platform Development, Mark J. Price, Oct 2019](https://www.packtpub.com/free-ebooks/reading-list/development/9781788478120)\n * [C# Programing Yellow Book, Rob Miles](https://www.robmiles.com/c-yellow-book)\n * [Fundamentals of Computer Programming with C#, Svetlin Nakov and Team, 2013](https://introprogramming.info/english-intro-csharp-book/)\n\n\u003cbr\u003e\n\n\n### Videos\n----------\n * [C# Fundamentals for Absolute Beginners](https://channel9.msdn.com/Series/CSharp-Fundamentals-for-Absolute-Beginners?l=Lvld4EQIC_2706218949)\n * [Introduction to C# 101](https://channel9.msdn.com/Series/CSharp-101/?WT.mc_id=Educationalcsharp-c9-scottha)\n    * [Introduction to C# 101 documentation](https://docs.microsoft.com/en-us/dotnet/csharp/tutorials/intro-to-csharp/)\n\u003cbr\u003e\n\n#### Labs\n----------\n * [Oficial MOC training labs](https://github.com/MicrosoftLearning/20483-Programming-in-C-Sharp)\n * \n\n---\n\n\u003cbr/\u003e\n\n\u003ca id=\"othergeneraltraining\" /\u003e\n\n# Companion Material and Resources for Class delivery by Ricardo Cabral\n\n**Artificial intelligence (AI)**\n- [AI-050: Develop Generative AI Solutions with Azure OpenAI Service](https://ai-050.rramoscabral.com/)\n- [AI-102: Designing and Implementing a Microsoft Azure AI Solution](https://ai102.rramoscabral.com/)\n\n\n**DevOps**\n- [AZ-400: Microsoft Azure DevOps Solutions](https://az-400.rramoscabral.com/)\n- [AZ-2008: DevOps Foundations The Core Principles and Practices](https://az-2008.rramoscabral.com/)\n\n\n**Microsoft Azure Administrator**\n- [AZ-104: Microsoft Azure Administrator](https://az-2008.rramoscabral.com/)\n- [AZ-300: Microsoft Azure Architect Technologies](http://AZ-300.rramoscabral.com/)\n\n\n**Microsoft Azure Developer**\n- [AZ-204: Developing Solutions for Microsoft Azure](https://az-204.rramoscabral.com/)\n\n\n**Microsoft Azure Database**\n- [DP-900: Microsoft Azure Data Fundamentals](https://dp-900.rramoscabral.com)\n\n\n**Microsoft C#**\n- [20483: Programming in C#](https://github.com/rramoscabral/20483---Training---Programming-in-C-Sharp)\n- [20484: Essentials of Developing Windows Store Apps Using C#](https://github.com/rramoscabral/20484---Training---Essentials-of-Developing-Windows-Store-Apps-Using-C-Sharp)\n\n\n**Microsoft 365**\n- [MS-500: Microsoft 365 Security Administration](https://github.com/rramoscabral/MS-500---Training---Microsoft-365-Security-Administration)\n- [M365SharePointPT: Colaboração e Partilha entre Utilizadores com Microsoft 365 SharePoint](https://m365sharepointpt.rramoscabral.com/)\n- [Microsoft SharePoint Power User: SharePoint Online Power User](http://msspopoweruser.rramoscabral.com/)\n\n\n**Microsoft Power Platform**\n- [PL-100: Microsoft Power Platform App Maker](https://pl-100.rramoscabral.com)\n- [PL-200: Microsoft Power Platform Functional Consultant](https://pl-200.rramoscabral.com)\n- [PL-400: Microsoft Power Platform Developer](https://pl-400.rramoscabral.com)\n\n\n**Microsoft PowerShell**\n- [AZ-040: Automating Administration with PowerShell](https://az040.rramoscabral.com/)\n- [Microsoft Windows PowerShell Training](https://github.com/rramoscabral/MSPowerShell---Training---Microsoft-Windows-PowerShell)\n\n\n**Microsoft SQL Server**\n- [DP-080: Querying Data with Microsoft Transact-SQL](https://dp-080.rramoscabral.com/)\n- [Fundamentos de SQL: Introdução aos Fundamentos de SQL com Transact-SQL](https://rramoscabral.github.io/Fundamentos-de-SQL/)\n\n\n**Microsoft Teams**\n- [MS-700: Managing Microsoft Teams](https://ms-700.rramoscabral.com/)\n- [MS-720: Microsoft Teams Voice Engineer](https://ms-720.rramoscabral.com/)\n\n\n**Microsoft Windows Client**\n- [MD-101: Managing Modern Desktops](https://md-101.rramoscabral.com/)\n- [MD-102: Endpoint Administrator](https://md-102.rramoscabral.com/)\n\n\n**Microsoft Windows Server**\n- [AZ-801: Configuring Windows Server Hybrid Advanced Services](https://az801.rramoscabral.com)\n\n\n\u003cbr/\u003e\n\n---\n\n\u003c!-- followme --\u003e\n\n\u003ca id=\"followme\" /\u003e\n\n\u003cbr/\u003e\n\n**You can follow me at:**\n\n\u003cbr/\u003e\n\u003cdiv id=\"badges\" align=\"center\"\u003e\n  \u003ca href=\"https://www.linkedin.com/in/rrcabral\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/LinkedIn-blue?style=for-the-badge\u0026logo=linkedin\u0026logoColor=white\" alt=\"LinkedIn Badge\"/\u003e\n  \u003c/a\u003e\n   \u003ca href=\"https://www.rramoscabral.com\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Website-blue?style=for-the-badge\u0026logo=website\u0026logoColor=white\" alt=\"Website Badge\"/\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/rramoscabral/\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/GitHub-blue?style=for-the-badge\u0026logo=github\u0026logoColor=white\" alt=\"GitHub Badge\"/\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://twitter.com/rramoscabral\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Twitter-blue?style=for-the-badge\u0026logo=x\u0026logoColor=white\" alt=\"X (formerly Twitter) Badge\"/\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://www.youtube.com/channel/UCKClueNUPLPluB6WIY3Joug\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Youtube-blue?style=for-the-badge\u0026logo=youtube\u0026logoColor=white\" alt=\"Youtube Badge\"/\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://www.nworkit.pt\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Company-blue?style=for-the-badge\u0026logo=website\u0026logoColor=white\" alt=\"Company Badge\"/\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\n\u003cbr/\u003e\n\n---\n\n\u003cbr/\u003e\n\u003cbr/\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frramoscabral%2F20483---training---programming-in-c-sharp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frramoscabral%2F20483---training---programming-in-c-sharp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frramoscabral%2F20483---training---programming-in-c-sharp/lists"}