请教一下各位大佬,我想入门 C#,有没有教材书籍推荐一下

2022-07-13 17:48:28 +08:00
 kklk
谢谢各位大佬,如果有视频教程就更好了
5901 次点击
所在节点    程序员
56 条回复
zhuangzhuang1988
2022-07-13 21:35:01 +08:00
基础的看下后
可以跟着微软的一个大佬后面学编译器
里面涉及了很多,怎么写测试,怎么写好一个编译器,怎么做重构,怎么 debug, 光第一节课看完后,就发现,比一堆 blog 写得好很多很多
[[中英字幕] C# 构建编译器 ( Building a Compiler )-哔哩哔哩] https://b23.tv/zO6dJjR
a33291
2022-07-13 21:37:25 +08:00
``国家不认可微软的技术栈``,请问这个结论是怎么得出的?国家从官方渠道认可过哪些技术栈?
因为我们自己主要用 netcore 为 ZF 开发包括门户、大规模运维系统(市级或省级设备检测和管控)、视频融合在内的系统,所以技术选型大多是公司遗留或技术决策人的个人喜好问题。

生态这个东西的确就是靠运势,比如 py 能借机器学习起来(但是大部分需要性能的都还得是 c/c++),然后生态好,学的人多,市场接受度广又反向推动更多人去学,.net 在 web 市场方面(互联网企业为主)的确是无法与 java 等竞争.


当然,对于个人而言,面向工资编程是明智的选择.

对于传统的.net framework 都绑死在 win 上,我们从 17 年开始切换到 netcore ,几乎不再使用.net framework 。后续可能支持 win arm 版,netcore 才跨平台支持 x86\x64\arm,所以对于跨平台 ui 类软件可以考虑 QT 或 web electron 栈(maui 不好说,可参考隔壁 flutter,此外其他的跨平台 ui 如 Avalonia 等没用过不清楚),对于 win 上绑死的程序来说 winform 和 wpf 都还不错
darknoll
2022-07-13 21:57:00 +08:00
不建议学 c#,学了没卵用
1217950746
2022-07-13 22:28:37 +08:00
@a33291 Avalonia 香的一批
qwq11
2022-07-13 22:53:58 +08:00
c# 写着爽的一批,这两年没关注了,但是还是要说句 c#是他吗写着最爽的语言
官方文档就行,一般来说语法和语法糖入门了之后,剩下的就是查文档了,而且很多时候也不用查,凭直觉就找得到很多东西。而且有 intellisence 鼠标移上去就看得到一大片的解释。除此之外,想了解底层 Runtime 相关的,推荐《 CLR via C#》
u823tg
2022-07-14 00:28:33 +08:00
C# 10 in a Nutshell Essential.C#.8.0. 这两本入门应该够了。
runningowl
2022-07-14 05:57:14 +08:00
FungKao
2022-07-14 07:53:28 +08:00
推荐一下我的 .NET 周刊,定期发布 .NET 生态内容

https://github.com/DotNETWeekly-io/DotNetWeekly
kklk
2022-07-14 09:27:52 +08:00
@thinkershare 如果是按薪资的话,您建议学哪个语言呢
INCerry
2022-07-14 09:33:13 +08:00
很久之前回答过类似的问题,我把书单贴一下

附上.NET 新手资料:
https://dotnet.microsoft.com/zh-cn/
https://dotnet.microsoft.com/zh-cn/languages/csharp
https://dotnet.microsoft.com/zh-cn/learn
https://dotnet.microsoft.com/zh-cn/platform/why-choose-dotnet
https://dotnet.microsoft.com/zh-cn/apps/xamarin

《 C# 高级编程》
《果壳中的 C#》
《深入理解 C#》
你必须知道的.NET
《 C#高效编程 : 改进 C#代码的 50 个行之有效的办法》后面也出了个 150 个办法
《 More Effective C#中文版 : 改善 C#程序的 50 个具体办法》
《 Async in C# 5.0 》
《 C#并发编程经典实例》
《 C#多线程编程实战》
《 CLR via C#》
《.NET 本质论 第 1 卷:公共语言运行库》
《.NET 探秘 : MSIL 权威指南》
《.NET 性能优化》
《.NET 设计规范 : 约定、惯用法与模式》
《.NET 内存管理宝典》
《.NET Core 底层入门》
kklk
2022-07-14 09:36:51 +08:00
@a33291 面向工资编程这个,您有什么建议学习的语言吗。目前的想法是学习一下 c#,等有一点成效之后学习一下 golang
Itoktsnhc
2022-07-14 09:45:06 +08:00
c# -> golang:golang 怎么这么难受
golang -> c# : golang 怎么这么难受

如果目标是 golang 我建议直接上吧 golang 学起来比 c#简单多了
leexy
2022-07-14 10:12:41 +08:00
学 Java 吧 去卷他们
thinkershare
2022-07-14 10:59:27 +08:00
@kklk 工资和任何语言都没有太大的直接关系, 任何一门语言中都有高收入的, 只是有一个大致分布.
工资高的大部分职位要求的不是语言. 而是解决问题的综合能力.
作为职业程序员, 你至少需要会 2-4 门编程语言,
工业界广泛使用的这些语言: c/c++/rust, golang/c#/java, javascript/typescript, python/R, 你都可以学一学.
他们都有自己的生态位, 在自己的生态位上, 这些语言相比于其它语言有自己优势, 如果一定说哪一门必须学, 我推荐 JavaScript, 所以你首先要知道, 你未来主要想要从事什么样的工作, 它需要的技能树中那个语言是必须的, 就先去学它.
软件从来都不直接受到编程语言的限制. 但各个编程语言都有自己的习俗和看待并解决问题的思维.
多换几个语言, 可以看看从不同角度解决同一个问题时候的思维差异.
想要踏实将软件工程师作为职业, 最需要是牢固掌握考研的哪几门计算机核心课程, 然后选择自己喜欢的而且认为有钱途的方向深耕. 另外工作久了, 你会发现技术并不值钱, 值钱的是业务逻辑和商业模式.
a33291
2022-07-14 11:00:07 +08:00
@kklk
客观的说,目前如果想要从事互联网行业 /大数据方向,选 java/golang/py,目前 C#在这这方面(市场+生态)应该是比较弱(国内来说,国外不清楚)
如果从事传统行业(医疗 工业 等和设备底层关系较大的)等可选 C#(不代表 C#能全部搞定,一定程度上依赖 c/c++,但是 c#和他们的交互非常流畅,且开发效率较高,同时有成熟的 ui 框架)

如果是计算机专业,有一定的理论基础的话,学起来应该都快.
a33291
2022-07-14 11:01:16 +08:00
哈哈,单从语言角度来说,的确很多其他语言转 C#都很难受,同时用过这几个就深有体会
thinkershare
2022-07-14 11:01:48 +08:00
@leexy 另外 V2EX 这个平台我感觉并不适合文这个问题. 因为这个问题网上已经有了无数的答案, 知乎上这个问题我都看过好多次了,善用搜索引擎. 我怀疑你在水铜币😄😄😄. 我也是闲的无聊...
thinkershare
2022-07-14 11:05:29 +08:00
@a33291 哈哈说的是实话. 其它语言的语法糖都它弱了. C#的核心问题还是在生态上. python 的性能实在太差, 除非用来做胶水, 它的性能属于放弃治疗的. 我天天写 python/ts, 越写越爽.
thinkershare
2022-07-14 11:08:33 +08:00
@错人了, 不好意思 @leexy , 本来是要 @kklk
fanqisoft
2022-07-14 11:38:56 +08:00
去 b 站上把杨中科老师的.net 视频刷一遍

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

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

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

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

© 2021 V2EX