[编程开发] 如何系统地学习C# ?

[复制链接]
paichn 发表于 2023-10-3 19:15:27|来自:四川成都 | 显示全部楼层 |阅读模式
如何系统地学习C# ?
全部回复3 显示全部楼层
fcsyzh03 发表于 2023-10-3 19:16:20|来自:四川成都 | 显示全部楼层
除了面向对象思想外,不要套用现有语言经验,放空自己,选择两到三本书,按部就班的学,边学边练。C#内容很多,学起来周期要长一点,不过坚持下来肯定会有收获。
如果没有合适的书单,可以参考这个回答里的:
一直在学C#,将近一年了,也没有什么进展,有没有什么好的方法!!?有面向对象基础的话推荐<c# 10 in a Nutshell>,目前国内C#书籍翻译落后,可以在网上下载英文版。我的主页有学习笔记,已经翻译了主要内容,可供参考。
这个是开篇介绍:
1. C# 10 和 .NET 介绍希望国内C#社区越来越好!
bingfeng009 发表于 2023-10-3 19:17:10|来自:四川成都 | 显示全部楼层
有目标、有路线才能系统学好C#,下面分6个步骤介绍下。
1、学习C#基础知识

学习任何一门编程语言,语言的基础知识都是必须要学习的,这里面涉及的内容包括:语法、关键字、事件、继承、面向对象、Linq、委托、多线程等等。
对于有编程基础的人来说,学习新的一门编程语言,以上的基础知识,基本都是稍微看一下,要使用的时候不懂再查询,基本就可以了。
但是对于初学者来说,每一个知识点都是需要花费时间去学习、练习的。对于初学者我建议,大家先总体学习一下,碰到实在无法理解的,可以先跳过。
比如很多人无法理解面向对象、多线程不会使用,都可以先跳过,不要去耗费太多的精力,很多初学者常常在某个知识点花费过长的时间,导致消耗了学习编程的动力、与耐心。


2、选择学习方向

学习.Net可以开发的内容还是比较多的,有Web开发、桌面软件开发、移动开发、游戏开发、物联网、机器学习等等,这里面涉及的知识又有:MVC、WCF、Blazor、Web API等等。
这里面涉及的知识点还是非常多,所以大家可以根据自己的兴趣,或者未来希望就业的方向选择一个方向;如果是在校学习,建议可以根据自己的兴趣选择,因为有兴趣才更加有动力学习;如果是即将毕业或者考虑转行的,建议还是以工作为主,毕竟找工作是第一紧急的事情。



3、设定学习路线

方向确认以后,就要设定学习路线了,每一个方向涉及的路线都是不一样的,比如Web开发方向,需要学习http://Asp.Net MVC或者http://Asp.net Web API;而Windows桌面软件开发,需要学习WCF或者WindowForm。




大家可以根据自己的学习路线,设定阶段性目标,逐步的完成学习任务,任何人都无法一下子把所有知识都学习完,没必要给自己太大的压力。
也欢迎大家加入,.Net编程学习小圈子,和更多.Net程序员,一起打卡交流学习。
4、学习系统设计、框架设计能力

学完以上的内容,基础知识算是基本学习完成了,但是在实际项目开发中,我们不仅仅是能实现功能,还要考虑如何更好的完成功能的开发,以及考虑团队协作、未来功能的扩展、系统的稳定性等等。
所以我们就要学习一些必备的系统设计能力,比如代码设计、数据库设计、界面设计,一些常用的框架比如三层、DDD等知识。
这方面的知识,除了通过学习专业的知识外,建议大家可以选择一个比较流行的开源项目,着重学习以下,学习作者的架构搭建、设计的思想、以及框架的优缺点。
开源项目可以查看我之前分享:《推荐100个.Net开源项目》,选择一个学习就好。


5、不断的实践

学完任何知识,都离不开实践。编程重在编写代码,一方面是完成不同业务的开发,积累经验,还有是面对不同的场景,不同的团队,这些都是会影响你的代码设计、系统设计的,只有你经历过不同的业务、不同的场景,你才能更加深入理解编程的思想、框架的思想,从中总结出自己的一套自己的编程思维。
以后面临不同的产品、业务,自然能根据需求选择技术、编写不同的代码。


6、其他

当然了,在这过程中,程序员的内功也是非常重要的,注重代码质量,学习编程规范、设计模式等,也都是必不可少的。
具备开发能力、也注重代码质量,这才是成为一个合格的高级程序员,必备的能力。
更多开源项目请查看:一个专注推荐.Net开源项目的榜单
- End -
推荐阅读
盘点3个.Net开发的WMS仓库管理系统
基于.NET 7 + iView 的前后端分离的通用后台管理系统开源框架
基于.Net开发的、支持多平台、多语言餐厅点餐系统
推荐一个.Net Core开发的蜘蛛爬虫开源项目
一个基于C#开发的Socket扩展库
仙履奇缘 发表于 2023-10-3 19:17:56|来自:四川成都 | 显示全部楼层
如果是没有什么编程基础的初学者,找一本C#从入门到精通的书,一章章的学习,照着课本练习,学完一本书后,基本上熟悉了C#语法。然后找一些小项目钻研,一般都是从一些管理系统开始,慢慢就熟悉了。这就好比理科大学生学习,一开始都是一步步学习分散知识,做小练习,到了毕业时候做毕业设计,通过做毕业设计项目将分散知识综合起来,达到最终学习目的。
如果是有编程基础的,那这个太容易了,网上找一些C#学习教程,不需要视频的。就是有个十几章节那种文章,从头到尾看一下学学就会了。
不过,不管哪种情况,最终还是需要依靠工作来支撑,才会越来越熟练精通。

快速回帖

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则