C# Programming III: Advanced C# Programming
CSE-40706
In this advanced C# course the focus will be on some of the more sophisticated programming concepts available in the language. Building on the topics covered in the C# Programming II, participants will learn Functional Programming, multithreaded and parallel programming techniques using TPL and memory management.
Course Highlights:
- Memory management techniques and garbage collection strategies
- Object lifetime and disposal
- Creation of generic classes and methods
- Anonymous methods, delegates and events
- Functional programming techniques
- Multithreaded and parallelized coding techniques
- Cross-thread synchronization
- Reflection and the Dynamic Library Runtime (DLR)
- Language Independent Query (LINQ)
Course Benefits:
- Learn more advance techniques available in C#
- Gain a better understanding of the internal workings of a .NET program
- Ability to use multi-threading and parallel programming techniques to increase program performance and efficiency.
Software:
- Windows 10 Pro or Enterprise recommended.
- Visual Studio Community Edition 2017 or later which is freely available on Microsoft's website: https://www.visualstudio.com/
- PDF reader such as Adobe Reader
- Multiple browsers (Edge, Chrome, Safari and Firefox are the most popular)
Hardware: access to a laptop or computer with the following specifications or better.
- Intel/AMD multi-core processor (i3 or better processor)
- 8GB RAM minimum, 16GB preferred
- 50GB free hard drive space for Visual Studio and project files
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.