请问学习 C#需要学习哪些东西。

148 天前
 NorthA

本人是一名计算机专业大一学生,做了两年半业余前端,想学习 C#,学习路线应该是怎么的。 查了一些资料,有些人说直接学习.net core ,有些帖子又不推荐学习,没有比较准确的推荐。 求大佬给一些比较细化的推荐。 比如说 C#我了解的有三个方向, 可以做游戏、后端、桌面端 如果这三个都想了解学习,学习的方向应该是如何的,技术栈是如何一步步学习下去。

例如做前端就得先 html 、css 、js ,然后学习一些 ajax 、nodejs 、webpack 、npm 相关的知识了再去学习框架 vue 、react 这种,然后例如在 vue 框架中又得学习,router 、vuex 、pinia 这种

求大佬指点迷津。

5094 次点击
所在节点    程序员
70 条回复
mooyo
148 天前
先学 golang/c++/java


然后校招进微软现学 c#。。。
cnbatch
148 天前
在校学生?那就从简单的做起,做个桌面端软件,然后做个简单的网站(用 C# 做)。
这两项对于打好 C# 的基础很有帮助。
mooyo
148 天前
其实游戏和 c#没啥关系,至少和.net core 没啥关系,重点应该不在这个上。
后端国内用 c#的非常少,为了后端千万别学。。。
客户端我不好说,但桌面客户端感觉已经是死的不能再死的一个岗位。
mooyo
148 天前
除了你想进微软,我真的挠破头都想不明白你想学 c#的目的在哪....
jancing
148 天前
有前端经验的话,可以从 Windows Forms 和 WPF 开始,有机会的话找找实习,我是觉得工作中学到的东西比较牢靠,自己在大学校园闷头学受到的正反馈比较少。
这两个框架你在学的过程中就慢慢知道后端是怎么写的了,毕竟桌面端本来就包含了广义上的前端和后端。
C#语言不管是入门还是进阶,微软文档都有合适的内容可以查阅学习。版本的话其实无所谓,自己学就看最新版本,工作了就用公司的版本。
没有游戏领域的工作经验,就不提供建议了。
参与.NET 社区的话,英语其实挺重要的,C# / .NET 技术栈国外用得多,资料也多。当然国内博客园也是个好去处。
ybz
148 天前
游戏、后端、桌面端虽然都是用 C#,但是他们之间的关系大概就跟,锤人和砌墙都用锤子一样。。。。
Aloento
148 天前
我非常赞同你学习 .NET 系列语言。在国内,除了工控行业( FW ),很少有使用 .NET 的,更别说 Core 了。
但是,通过 C# 优秀的语言设计思想,足以让你在未来的工作中脱颖而出,这也是楼上一些人没有看到的方面。

我使用大部分常用语言,它们都是我工作语言。如果我能够自由选择项目的编程语言,我一定会选择 C#。

学习 C# 你最好通过 MS Learn 开始
https://learn.microsoft.com/zh-cn/collections/yz26f8y64n7k07?WT.mc_id=dotnet-35129-website

Unity3D 使用的是 Mono ,怎么就没啥关系了呢?(⚪,启动!)
hez2010
148 天前
语言层面:初期跟着官方文档就行了,其他东西后面遇到了现场查文档。
游戏:Unity 、godot 引擎都在用 C#,教程一大堆。
后端:跟着 asp.net core 的官方文档就行了(注意是 asp.net core ,不是 asp.net ),还挺全的。学后端的话 asp.net core 文档中跟 razor 、blazor 有关的内容都跟你没有关系可以直接跳过。
桌面端:跨平台的话推荐看看 Avalonia ,而 Avalonia 是从 WPF 继承下来的,所以你先学 WPF 的话可以比较无痛地转到 Avalonia 上,因为 WPF 文档要比 Avalonia 全的多,顺带学了 WPF 的话后面上手 MAUI 之类的东西也是轻而易举。不跨平台的话那就 WinUI 3 之类的。

另外就是英语得好,毕竟 C# 的主要社区不在国内,文档上也是英文的更准确。

至于前面有个劝退让你学 golang/c++/java 的,只能说你学会了 C# 的话 Java 上手就会,golang 更是看一眼就能开始写代码,只不过这个时候你会因为胃口变叼了写 Java/golang 的时候会觉得很不舒服,要么太繁杂要么太原始。
至于 C++ 的话,无论你学什么其他语言都推荐单独学一下 C++ 的。
NorthA
148 天前
@cnbatch 这个在学习的过程中肯定会有的 #2
NorthA
148 天前
@mooyo 其实学 C#不一定是为了工作,目前写代码来对我个人来说还算得上是一种娱乐,我很享受学习编程的过程,前面做私单的时候刚好给我遇到过一家做 C#后端的公司,谢谢哥你的说明
loken2020
148 天前
推荐两本书《 C#入门经典》《 C#高级编程》
NorthA
148 天前
@jancing 谢谢指导,那还有个问题请问一下您,就是 winforms 和 wpf 这两个桌面端在实际开发过程中,哪个用的更多一些,或者是什么样子的情况需要用到 wpf 或者是 winforms #5
NorthA
148 天前
@Aloento 学习 c#我一般是哔哩哔哩的视频结合微软的文档,直接看文档有些地方看不太明白😢
NorthA
148 天前
@hez2010 😀这真的是说到我想要的点上了,谢谢您
NorthA
148 天前
@loken2020 好的,谢谢,正好今天双十二拿下🤗
jimmy3780
148 天前
@mooyo #3 跟游戏其实是有关系的,Unity 近几年的版本将 C# 作为了唯一的语言。
dartabe
148 天前
最近在学 .Net core 语法就不说了 和 Typescript 太像了

博客园的很多教程是最好的 比大部分英文视频博客都好很多
leegradyllljjjj
148 天前
@dartabe 因为这两个语言的架构师好像是同一个人
bthulu
148 天前
会了 typescript, 自然就会 C#, 会 C#自然就会 java, 这三个你都会了, golang 自然也是信手拈来
IMengXin
148 天前

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/999537

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX