6

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

 2 years ago
source link: https://www.v2ex.com/t/865959
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

V2EX  ›  程序员

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

  kklk · 5 小时 5 分钟前 · 654 次点击
谢谢各位大佬,如果有视频教程就更好了
24 条回复    2022-07-13 22:28:37 +08:00
aw2350

aw2350      4 小时 25 分钟前

做 u3d?不是 u3d 不建议做.net
quan01994

quan01994      4 小时 20 分钟前   ❤️ 1

官方文档是最好的 ,视频的话 channel9 上有很多。官方的博客也可以多看看 。

还有我想说一下,有些人真的很狭隘 。
kklk

kklk      4 小时 16 分钟前

@aw2350 嗯 u3d 是一方面,另一方面是想在 win 上开发一些程序,自动脚本之类的。
kklk

kklk      4 小时 14 分钟前

@quan01994 狭隘是什么意思,不太理解您的说法,我是新手不太懂。官方文档我准备先完整的阅读一遍,不知道有没有代码案例平台,您能推荐一个吗,我想后续可能要用实例来检验自身所学的内容。
kklk

kklk      4 小时 11 分钟前

@Akiya 嗯嗯 谢谢
thinkershare

thinkershare      3 小时 58 分钟前

@aw2350 人家学什么, 关你毛事! @kklk 它就是说 @aw2350 , C# in Depth(深入理解 C#), Essential C#(C#本质论), 另外微软提供的文档非常完善. 作为一门语言的 C#, 发展到 11 版本, 已经非常完善, .NET 6.X 的性能也绝对不差. 如果你不认为微软有原罪, 完全可用认证学. 另外 C#和 TypeScript 是同一个人建立的. 有很多相似性. 另外如果你需要找工作, 的确需要仔细思考, 国内.NET 的工资偏低, Java 系的很多人掌握了互联网的话语权, 微软自己又作死, 开源太晚!
thinkershare

thinkershare      3 小时 55 分钟前

@kklk 另外你需要找个事情来做, 例如使用 Span 写个性能不错的 JSON 解析器. 这种纯粹不需要依赖第三方的 API 的库, 可用考验你对语言的理解, 还有抽象问题的能力. 编程的核心是使用某个语言去抽象某种需求, 然后平衡各种矛盾. 如果你遇到学习问题, 我可以给你提供免费咨询.
aguesuka

aguesuka      3 小时 47 分钟前

@aw2350 问题 u3d 也不是 .net 啊
a33291

a33291      3 小时 24 分钟前

这两年 C#语言发展非常快,很多书籍(特指中文)没有跟上进度,比较推荐微软官网自身的文档.当然,早期的书籍的知识任然有效,因为语法等兼容性非常好.
当然,根据具体的开发目标又有一些更为细分的技术需要学习(比如 WPF 的 xaml),但相对通用的书籍推荐 2 本
<<C#高级编程>>和<<CLR via C#>>

此外
u3d 用到了 C#作为脚本语言(C#只是.net 中的一员,是一个规范+平台,可以这么理解,但是 C#是.net 上最具代表性的语言,所以很多人简单的理解为 C#就是.net,其实还有 VB 以及 F#等语言),的确为推动 C#做出了积极的贡献,同时微软投入大量的精力发展 C#及其相关生态也反哺了 u3d 等应用方.
ragnaroks

ragnaroks      3 小时 16 分钟前

一楼给的 MSDN 就够了,或者看下 youtube TimLiu 的视频,dotnet 主要是易学难精,就有很多人写出性能和 java 一样甚至和 PHP 一样的代码(光一个 System.Runtime.Intrinsics 面试就能筛掉 99% 的人),查找相关资料应以 msdn 为主 stackoverflow 为辐。
ragnaroks

ragnaroks      3 小时 13 分钟前

二楼看法可能狭隘了但很中肯,除非你和我一样在合资公司,否则多半用的是 java 、js ( node )、go ;另外由于 dotnet 全能,如果你去的是普通公司,极有可能你会变成全干工程师,工资却不会有很高的倍数。
aw2350

aw2350      2 小时 51 分钟前 via iPhone

@kklk 建议以就业为导向;c#方向薪资待遇偏低,机遇较少;目前在工控上位机客户端以及游戏(u3d )还有点市场,
aw2350

aw2350      2 小时 50 分钟前 via iPhone

@thinkershare 我给人家建议你这条哈巴狗叫什么
aw2350

aw2350      2 小时 48 分钟前 via iPhone

@ragnaroks net 可不全能,国内市场还是传统领域,加上这几年要自主可控,这些传统信息系统肯定会被替代掉;虽然 net 开源了,但是国家不认可微软的技术栈
aw2350

aw2350      2 小时 42 分钟前 via iPhone

@kklk 一句话,就业为导向,薪资为导向;另外,培训机构都不开的技术方向,以及国内大学几乎没有课程的方向,也没多少人讨论的方向,你觉得会是一个好的方向?如果你做游戏,或者要去外企,或者出国,可以选
ragnaroks

ragnaroks      2 小时 40 分钟前

@aw2350 我在武汉,给政府做的项目都是要求是 dotnet framework 4.5
aw2350

aw2350      2 小时 34 分钟前 via iPhone

@ragnaroks 那应该是一些边缘信息类系统吧,最近接触的政企项目,大部分都提出要以后支持 arm 架构或者国产 linux 或国产 cpu 指令集或者国产数据库,这些 net4.5 肯定是支持不了的
ragnaroks

ragnaroks      2 小时 4 分钟前

@aw2350 一般都是单位的官网之类,比如公安的内网门户,功能就是一些文章和视频的发布
inframe

inframe      1 小时 20 分钟前

用过开源的 net core 6 ,可以编译到 Linux
不过还需要时间验证,不知道各个平台兼容性怎么样
zhuangzhuang1988

zhuangzhuang1988      1 小时 18 分钟前 via Android

基础的看下后
可以跟着微软的一个大佬后面学编译器
里面涉及了很多,怎么写测试,怎么写好一个编译器,怎么做重构,怎么 debug, 光第一节课看完后,就发现,比一堆 blog 写得好很多很多
[[中英字幕] C# 构建编译器 ( Building a Compiler )-哔哩哔哩] https://b23.tv/zO6dJjR
a33291

a33291      1 小时 16 分钟前

``国家不认可微软的技术栈``,请问这个结论是怎么得出的?国家从官方渠道认可过哪些技术栈?
因为我们自己主要用 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

darknoll      56 分钟前

不建议学 c#,学了没卵用
1217950746

1217950746      25 分钟前

@a33291 Avalonia 香的一批

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK