1
MaxTan 2021-01-13 11:10:52 +08:00
|
2
nulIptr 2021-01-13 11:11:07 +08:00
|
4
MAIQ 2021-01-13 11:24:39 +08:00
|
5
masquerader 2021-01-13 11:30:28 +08:00 2
工具链跟着官网走一遍命令行工具 dotnet,VSCode 装个 C#插件就可以了。语言方面可以从 C#入手。网上应该很多基础教程 /免费入门书籍。
等弄个 console 应用有些感觉了,可以去看看 ASP.NET 的东西了。ASP.NET 涉及到的内容比较多,一开始可以只看后端知识,前端 HTML+JS/TS 配合就好。后面有兴趣了再了解下 Blazor Server (服务端渲染)和 Blazor WebAssembly (客户端渲染,但不同于大多数 transpiler 的技术把你的 C#/Java 代码你翻译成 JS 让浏览器执行,你可以理解成浏览器里有一个.NET 运行时,所以你的.NET 应用可以被浏览器直接执行)。 后面如果再有兴趣,语言方面看看 F#。F#不像 Haskell 那么纯粹,比较好接受。学 F#的过程中就把 FP 的编程范式了解下,个人认为对拓展眼界有很大帮助。 |
6
lancelock 2021-01-13 11:31:16 +08:00
搭好开发环境 -> 学 c#语法
|
8
masquerader 2021-01-13 11:39:24 +08:00
.NET 里涉及到 GUI 相关的内容,个人建议先跳过,等微软和社区把 MAUI 整明白了再说。
|
9
goldiorl 2021-01-13 11:54:13 +08:00
插一句话,vs 没有办法像 vscode 一样有 command palette 呢,我看 intellij 就有
|
10
masquerader 2021-01-13 12:23:31 +08:00
@goldiorl 没,VS 虽然功能强大,但很多设计都是上个世纪的,很多现代的功能都没有,看意思微软也没打算加入这些广受欢迎的功能。
|
11
yushiro 2021-01-13 12:48:49 +08:00 via iPhone
|
12
LokiSharp 2021-01-13 12:53:50 +08:00
@masquerader #10 用 VS 的都会装上 ReSharper 吧,一些功能就和 Rider 差不多了
|
13
masquerader 2021-01-13 13:10:32 +08:00
@LokiSharp 是这样。就是 VS + ReSharper 实在不便宜,个人玩玩的话 VSCode 挺好。
VS 好久都不用了,一来没有 Remote Development Container 的支持,二来编辑器不支持平滑滚动,一些连字符在某些情形下出不来,terminal 整合的也不如 VSCode,就抛弃之了。 |
14
dasbn 2021-01-13 13:22:29 +08:00
看视频的话,推荐一个微软 MVP 的视频 https://space.bilibili.com/361469957
|
15
goldiorl 2021-01-13 13:31:55 +08:00
@LokiSharp @masquerader 那再请问一下,vs + resharper 和直接用 rider 比优势在哪儿呢
|
16
heyhumor 2021-01-13 13:35:54 +08:00
.NetFrameWork 都没搞明白,就只会写写 winform 小程序的路过。。。
|
17
qW7bo2FbzbC0 2021-01-13 13:36:04 +08:00
vs for mac ? 最简单的可以先从 console 小程序做起,然后 webapi
|
19
Removable 2021-01-13 14:02:49 +08:00
@goldiorl #14 Rider 个人目前使用最大的不便之处在于,在 WPF 开发中不能像 vs 那样实时预览 UI (当然也可能是我没找到 Rider 的设置
|
20
Removable 2021-01-13 14:04:15 +08:00
哦对了,好像 rider 还不支持 nuget 包管理器控制台
|
21
masquerader 2021-01-13 14:07:50 +08:00 1
@goldiorl 没用过 Rider,就说下 VS/VSCode 个人觉得好用的地方吧。
1. CodeLens,可以把类型签名、函数与方法的引用标出来,非常方便。如果用 F#,CodeLens/LineLens 可以方便的看出来类型推导。 2. VS 是原生应用,性能好,占资源少,响应迅速。 3. VS/VSCode 的 Live share 非常好用,个人认为超过不用任何工具和邻桌面对面结对编程的效率。 4. Remote Development 。可以 SSH 到本地 WSL/WSL2 上,或者一台 Linux 远程服务器上进行编程与调试一条龙。这个体验和本地编程没有任何区别,感受不到任何延迟。即便是调试 web 应用,都和本地一样,例如你在远端启动监听端口 8080 的 web server,访问这个 web server 在浏览器里输入 http://localhost:8080,就好像你的应用部署在了本地。更进一步的,你可以把你的项目设置做成一个 docker image,装什么插件,什么依赖包,各种环境设置都弄好了,直接用 Remote Development Container 的方式,设置一个复杂的开发环境几分钟就自动都搞定了。此功能 VSCode 独有,VS 没有。 |
22
masquerader 2021-01-13 14:22:44 +08:00 1
@masquerader 补充我上面说的关于 Remote Development 的功能。现在 GitHub 上有开放 Codespaces 的功能,本质上就是微软自家的 Remote Development,现在处于有限规模的测试中,可以申请排队加入测试。
我重度依赖此功能,我讲下我的场景。我有 1 台 MBP,1 台 8 代 U+8G RAM 轻薄 Windows 10,1 台 11 代 U+16G RAM 的轻薄 Windows 10,办公室 1 台 Windows 10 笔记本,此外还有 1 台装了 Linux 的机器。我的做法就是利用 Remote Development Container,把项目的各种依赖弄到 Docker image 里,这样我随便拿起一台电脑就开始我的项目,无论电脑的配置有多渣( 8G 内存),无论电脑是不是装了.NET ,或者有些包对环境有依赖(我的项目的一个依赖包不提供 macOS 版本的原生库),或者是新买一台电脑,装上 VSCode 零设置就可以开始撸码。 |
23
INCerry 2021-01-13 14:30:11 +08:00 1
不管任何一门计算机编程语言最重要的还是 408,数据结构和算法、计算机组成原理、操作系统和计算机网络。
1.入门可以直接在 B 站找免费视频,或者培训机构的视频,快速入门还是可以看看的*智播客.Net 视频,之类的,然后就是微软的文档 https://docs.microsoft.com/zh-cn/dotnet/ 机翻不是特别友好,可以直接看英文 2.入门以后就买几本书看看,包括但不限于《深入理解 C#》、《 C#从现象到本质》、《 CLR via C#》、《 C#并发编程》、《 Asp.Net Core 框架揭秘》、《.Net Core 底层入门》、《 MSIL 》、《设计模式》..... 3.用起来,自己可以整个小项目试试,用用学到的框架,写个什么博客站点呀之类的 4.看源码学和设计模式,.net 常见组件的源码,框架的源码 还有 CLR 源码 https://github.com/dotnet 后面再补充吧~ |
24
fivestrong 2021-01-13 14:32:26 +08:00 via iPhone
推荐 Mark J.Price 的 c#9 and .NET 5 这本书,最新版本,讲的很系统,基本上属于手摸手教你写 C#了
|
25
goldiorl 2021-01-13 14:36:56 +08:00
@masquerader
可不可以再有最后一问,如果全用 vscode 开发,有哪些是 vs 上完不成的? |
26
goldiorl 2021-01-13 14:38:56 +08:00
|
27
masquerader 2021-01-13 14:43:00 +08:00 1
@goldiorl 放心,没有。
|
29
dswyzx 2021-01-13 15:28:41 +08:00 via iPhone
@goldiorl 一个是开发工具,一个是文本编辑器,vscode 要不停的设置各种插件来达到 vs 的各种功能。但如今风气是用记事本最屌
|
30
circsqua OP |
31
pkoukk 2021-01-13 17:04:57 +08:00
巨硬家的文档,完善,详尽,更新及时,挑不出第二个能这么有心的
|
32
masquerader 2021-01-13 17:11:13 +08:00
@circsqua Blazor WebAssembly 技术上比较成熟了,Chrome/Firefox/Edge 也都原生支持了。有精力的话自己玩玩持续关注吧,靠这个找工作眼下是不可能的。
|
33
hantsy 2021-01-13 17:14:38 +08:00
.net 没正经写过项目,玩过一点 C#。个人还是喜欢 Rider (毕竟长期写 Java,IDEA 界面还是习惯了),VS 实在不会用。
之前的单个 project,重构一下,变成 Solution,加了测试代码。 https://github.com/hantsy/code-challenges/tree/master/csharp |
34
love 2021-01-13 17:41:43 +08:00 via Android
@pkoukk 别人家的语言和框架做得不好吗,我用的 Python,nodejs,react,vue 哪个文档比 ms 差
|
35
forgottencoast 2021-01-14 09:26:45 +08:00
|
36
forgottencoast 2021-01-14 09:29:35 +08:00
|
37
love 2021-01-14 12:10:25 +08:00
@forgottencoast 行了吧,那是因为.net 臃肿复杂,别的语言除了 java 都很简单不需要海量车轱辘文档
|
38
forgottencoast 2021-01-14 12:51:54 +08:00 via iPhone
|