Guide
Some beginners for how to start learning C # Feel the impossible, do not know which books to see, or to watch what video, no purpose, this will affect the efficiency of learning, but also affect the enthusiasm of learning. The most important thing is that many students before learning to ask a lot of irrelevant questions, such as: C # is not as good as Java? Does C # have a future? Wait a minute. Bloggers think it's better to study now than to wait and see. This article introduces the C # learning route that bloggers have summed up. If you have any better ideas or good suggestions can be discussed together.
Some students have a relatively strong ability to absorb direct reading, I suggest starting from the "C # classic" To learn, over to the "C # Advanced Programming" and "in-depth understanding of C #." The premise of Learning C # is that it is important to download good visual Studio and work with the code on the book to do hands-on exercises.
Visual Studio 2017 Download path: https://visualstudio.microsoft.com/zh-hans/downloads/
The remainder of this article is mainly about using Microsoft C # official documentation and online resource learning.
Mastering C # Basic syntax
1.c# Quick Start: Https://docs.microsoft.com/zh-cn/dotnet/csharp/quick-starts/index
This section of the official documentation gives beginners some insight into how to get started, and it can be directly displayed in the browser by tapping the code. This section contains the first "Hello World" program, Introduction to numeric types, branching and looping, string type handling, and collection type list.
2.c# Language Introduction (Basic knowledge of C #): Https://docs.microsoft.com/zh-cn/dotnet/csharp/tour-of-csharp/index
This section of the official documentation describes the basic structure of the program, types and variables, expressions, statements, classes and objects, structures, arrays, enumerations and other aspects of knowledge. This part of the reading, probably will have a certain understanding of C #, but may not understand the place there are many, do not worry, only need to read more and more knock code, in the course of follow-up, will step by step to the front of the place to understand the problem.
3.c# Tutorial: Https://docs.microsoft.com/zh-cn/dotnet/csharp/tutorials/index
The Tutorials section describes the console's I/O, the basics of the asynchronous programming model, Web Communications, JSON serialization, and the object-oriented C # language features, as well as the knowledge of LINQ queries.
4.c# Programming Guide: Https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/index
This section is an in-depth introduction to the second part, which has a number of relevant examples and is an important part of learning C # Fundamentals. Learning this part of the premise is that the previous content has been completed (with a certain knowledge of C # programming).
After learning the above section, and the hands of the example, I believe you have a good understanding of C #. At this time need to look at the advanced knowledge to consolidate learning results.
5.c# Walkthrough: Https://docs.microsoft.com/zh-cn/dotnet/csharp/walkthroughs
This section contains more powerful features of C #, asynchronous programming, designing Windows Components, Introduction to Windows Forms, data manipulation, and LINQ queries, authoring Visualizers, and more.
What's new in 6.c#: Https://docs.microsoft.com/zh-cn/dotnet/csharp/whats-new/index
Introducing the C # version, and what's new in each release, helps us understand C # 's evolutionary history and better apply it.
Incidental:
C # Language Reference: Https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/index
C # Language Specification (English version): Https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/language-specification/index
The Advanced Way of C #
1. Online Search for programming exercises to bring to practiced hand's purpose, and to consolidate and learn new C # knowledge, in this process, must learn to debug code, can improve the efficiency of learning and error-checking speed.
2. Learning data development technology, and Database interaction technology ADO
3. In-depth Learning C # Object-oriented Basic skills: encapsulation, inheritance, polymorphic thinking
4. Fragmentation time can be used to see the Red and Black Alliance C # Articles, Brief introduction, can raise awareness: https://www.2cto.com/kf/ware/cs/index.html
Project Practice
I write some small and fine projects, to achieve the overall understanding of the effect, such as the classic " tank War ", " Book Management system ", these are very "lightweight". When you have the "Tank War" project completed, you can do a larger project design, increase the rights management and so on.
. NET Core Learning
Now Microsoft is strongly recommending cross-platform,. NET core can be implemented on multi-platform, is the future of Microsoft important direction. Therefore, after learning the above knowledge, you must understand. NET Core, keep up with the pace of the development of the Times.
C # Learning Route