


C# Programming III: Advanced C# Programming
CSE-40706
Master Memory Management, Asynchronous Programming, Distributed Computing and High-Performance Programming
Unlock the full potential of C# with C# Programming III: Advanced C# Programming. This course takes you beyond the basics, empowering you to build sophisticated, high-performance applications like real-time data processing systems, scalable web APIs, and cloud-integrated microservices. You will dive into advanced C# features such as multithreading, asynchronous programming, API development, and Azure integration, preparing you to tackle complex projects in fields such as finance, healthcare, and e-commerce. Whether you are developing scalable cloud applications or optimizing enterprise software, this course will give you the tools you need to succeed.
Course Highlights:
- Delegates, Events, and Lambda Expressions: Implement event-driven programming and functional-style code.
- LINQ (Language Integrated Query): Query collections and databases with powerful, concise syntax.
- Generics: Create flexible and reusable code with type-safe data structures.
- Object Lifetime & Memory Management: Manage resources efficiently for performance-critical applications.
- Reflection & Late Binding: Dynamically inspect and invoke methods at runtime.
- Dynamic Assemblies & Expression Trees: Generate code at runtime and build expression trees.
- Multithreading & Async Programming: Manage concurrency with threads, tasks, async/await, and synchronization.
- Microservice Architecture: Design scalable applications using SQL, Entity Framework, and configuration management.
- Azure Basics & CI/CD: Automate deployment with Git, pipelines, and Azure’s cloud services.
By completing C# Programming III: Advanced C# Programming, you will:
- Build scalable, real-time applications: Master multithreading and asynchronous programming, enabling you to develop responsive applications and optimize performance in data-heavy environments like financial trading platforms or e-commerce systems.
- Develop robust, secure APIs: Learn how to design, document, and consume RESTful APIs, essential for integrating systems and enabling microservices architecture, a key component in modern web and mobile applications.
- Leverage cloud-based development with Azure: Gain practical skills in continuous integration and delivery (CI/CD) using Azure, Git, and pipelines, helping you deploy and maintain enterprise-level cloud applications seamlessly.
- Enhance software reliability and maintainability: Understand how to efficiently manage object lifetimes and memory, while leveraging reflection and late binding for dynamic, extensible applications.
Course Details and Next Steps
- Course Typically Offered: Online during Fall and Spring quarter
- Prerequisites: "C# Programming II: Objected-Oriented Programming" or equivalent experience.
- Next steps: Upon completion of this course, consider taking electives in the C# Programming Certificate
- More information: Contact infotech@ucsd.edu to learn more about the C# Programming and course offerings.
Who Should Take This Course
This course is perfect for:
- Experienced Developers looking to expand their skills in advanced C# programming and take on complex, high-level projects.
- Software Engineers working on scalable web APIs, microservices, or cloud-based applications who want to apply multithreading and cloud integration.
- Tech Enthusiasts aiming to master the latest in advanced C# programming to stay at the forefront of software development.