导读
有的初学者对于如何开始学习C#感到无从下手,不知看哪些书,或者是看什么视频,没有目的性,这样就会影响学习效率,也会影响学习的热情。最重要的是很多同学学之前问很多和学习无关的问题,比如:C#是不是不如JAVA好?C#有前途吗?等等。博主认为现在观望还不如现在学习。本篇文章介绍了博主自己总结的C#学路线。如果大家有什么更好的想法或者好的建议可以共同探讨。
有的同学对直接看书有比较强的吸收能力,我建议从《C#入门经典》开始学习,过度到《C#高级编程》和《深入理解C#》。学习C#前提是下载好Visual Studio,配合书上的代码进行动手练习,动手非常重要。
Visual Studio 2017下载路径:https://visualstudio.microsoft.com/zh-hans/downloads/
本篇文章剩余部分主要是介绍利用微软C#官方文档和网上资源学习。
掌握C#基本语法
1.C# 快速入门:https://docs.microsoft.com/zh-cn/dotnet/csharp/quick-starts/index
此部分官方文档给初学者一些入门的认知,它可以直接在浏览器敲出代码,并且能够直观的显示出来。这部分包含了第一个"Hello World"程序,数字类型介绍,分支和循环,字符串类型处理,集合类型List的初探。
2.C# 语言介绍(C#的基础知识):https://docs.microsoft.com/zh-cn/dotnet/csharp/tour-of-csharp/index
这部分官方文档介绍程序的基本结构,类型和变量,表达式,语句,类和对象,结构,数组,枚举等方面知识。把这一部分看完,大概会对C#有一定的认识,但是可能不明白的地方也有很多,不要急,只需要多看多敲代码,在后续学习的过程中,会一步一步把前面有问题的地方弄明白。
3.C# 教程:https://docs.microsoft.com/zh-cn/dotnet/csharp/tutorials/index
教程部分介绍了控制台的I/O,异步编程模型的基础知识,Web通信、JSON 序列化和面向对象的 C# 语言功能,以及LINQ查询的知识。
4.C# 编程指南:https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/index
这一部分是对第二部分的深入介绍,其中有很多相关的示例,也是学习C#基础知识比较重要的一部分。学习这部分前提是前面的内容已经学习完成(具有一定的C#编程知识)。
学习完上面的部分,且动手敲完里面的例子,相信你对C#已经有一个不错的认识。这时候需要看进阶的知识来巩固学习成果。
5.C# 演练:https://docs.microsoft.com/zh-cn/dotnet/csharp/walkthroughs
这部分内容包含了C#更强大的功能,异步编程,设计Windows组件,Windows窗体的介绍,数据操作,和LINQ查询,编写可视化工具等。
6.C# 中的新增功能:https://docs.microsoft.com/zh-cn/dotnet/csharp/whats-new/index
介绍了C#的版本,和每次版本中的新增内容,有助于让我们更了解C#的进化史,从而更好的应用它。
附带:
C# 语言参考:https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/index
C# 语言规范(英文版):https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/language-specification/index
C#进阶之路
1.网上寻找编程练习题来带到练手的目的,并且巩固和学习新的C#知识,在这一过程中,一定要学会调试代码,可以提高学习的效率和查错速度。
2.学习数据开发技术,与数据库的交互技术ADO.NET
3.深入学习C#面向对象基础技能:封装,继承,多态的思想
4.碎片时间可以用来看红 黑 联 盟的C#文章,简短的介绍,可以提高认识:https://www.2cto.com/kf/ware/cs/index.html
项目实践
自己动手编写一些小而精的项目,达到整体认识的效果,比如经典的"坦克大战","图书管理系统",这些都是很"轻量级"的。当你把"坦克大战"项目编写完毕,就可以进行更大的项目设计,增加权限管理等等。
.NET Core学习
现在微软在极力推荐跨平台,.NET Core可以实现在多平台运行,是以后微软重要的方向。所以学习上面知识之后一定要了解.NET Core,跟上时代发展的步伐。