1
liuguangxuan 2023-07-28 12:32:32 +08:00
借楼问一下,从 C++转 C#(主要是 wpf ),请问有什么推荐的书籍吗?由浅入深,循序渐进的那种。
|
2
zapper 2023-07-28 12:37:41 +08:00 1
|
3
yuyu2140 2023-07-28 12:39:22 +08:00 1
试试 kotlin 就没那么蠢了,哈哈
|
4
jameszhangqk1 2023-07-28 13:08:03 +08:00 2
比如呢? 上来就喷?
|
5
cozof 2023-07-28 13:33:38 +08:00 via iPhone
写过 c#再写 java 确实累,java 特别啰嗦。
|
6
senjyougahara 2023-07-28 13:36:03 +08:00
@liuguangxuan 刘铁锰有本《深入浅出 WPF 》
|
7
liuguangxuan 2023-07-28 13:37:50 +08:00
@senjyougahara #6 这个看到一半就看不下去了,感觉对初学 wpf 的人来说,有点儿难度。
|
8
senjyougahara 2023-07-28 13:39:21 +08:00 1
@liuguangxuan 初学先看看视频,了解 wpf 基本概念后再看书好点
|
9
TtTtTtT 2023-07-28 13:40:35 +08:00
就是的,太蠢力!
|
10
wudicgi 2023-07-28 13:42:39 +08:00 1
@liuguangxuan #1 《深入浅出 WPF 》入门看还行,之后深入点可以看看《 WPF 编程宝典》
|
11
idealhs 2023-07-28 13:43:02 +08:00 3
本来就是蠢,如果不是工作特别需求完全可以改学 kotlin
|
12
Aloento 2023-07-28 13:49:10 +08:00
就是,谁用 Java 谁倒霉
|
13
idragonet 2023-07-28 14:05:49 +08:00
是的. C#程序员路过。
|
16
wanguorui123 2023-07-28 15:58:11 +08:00
Java 就是喜欢各种范式和接口,然而很多人 CURD 的分层都没整明白就要上一堆接口。C#语法相对 JAVA 很简化,使得 C#上下限都很高,C#的语法设计理念比较先进,然而微软这个大蠢包喜欢赶晚集,什么轮子生态都慢几拍,导致 C#生态比较烂,向后兼容性也拉胯。
|
17
unco020511 2023-07-28 16:08:06 +08:00
请使用 kotlin,呼吸新鲜空气
|
18
howfree 2023-07-28 16:15:43 +08:00
多了解吧
|
19
dddd1919 2023-07-28 16:20:05 +08:00
转 ruby 吧
|
20
Chad0000 2023-07-28 16:21:48 +08:00 via iPhone
C#爱好者,连 APP 都用它写
|
21
yedanten 2023-07-28 16:48:30 +08:00 via iPhone
自信一点,你的感觉是对的,java 就是这么蠢
|
22
sheeta 2023-07-28 16:50:25 +08:00
那是历史遗留原因了,LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))
|
24
doanything 2023-07-28 17:21:59 +08:00
kotlin 不啰嗦,反正你也刚开始
|
25
jack4536251 2023-07-28 17:34:37 +08:00 via Android
Java 确实一堆脱裤子放屁的设计
|
26
jakeze 2023-07-28 17:35:55 +08:00
jdk 设计之初的问题
|
27
me1onsoda 2023-07-28 17:41:05 +08:00
get set 老黄历了,record 已经从语言层面解决这个问题了
|
28
kgcHQbTYyvcz2w3j 2023-07-28 17:55:18 +08:00 1
是的,你的感觉没错。 所以最好第一门语言就学 Java ,这样就不会骂它了
|
29
charlie21 2023-07-28 18:10:54 +08:00 via Android
这只能说明软件流行度和语法细节没有相关性,往往是具体行业巨头(比如 Apache 基金会)推出的软件在功能等硬实力、软件客服等软实力、软件盈利能力、软件法律专利打手等方面上打败了竞争对手,最终笑到最后,最后大家死光光了它活下来了,这决定了软件流行度。在这里,编程语言的表达力并不具备决定性因素,实际上 在面对特定问题时候编程语言只要没有硬伤就可以了
比如在游戏行业,一个游戏引擎的 API 往往用 C++ 或 C# 而非 java ,因为 C# 没有硬伤,java 有硬伤,这直接决定了 unity 等游戏引擎选择了 C# 而非 java https://juejin.cn/post/6964019904148144142 |
30
zachlhb 2023-07-28 18:11:46 +08:00 via Android
同感我也是 c#前面看过 java ,然后各种不习惯,感觉那那都不对,最终果断放弃了,不过 c#感觉要回春了,最近招聘发现一下子多出很多.net core 的职位
|
31
enihcam 2023-07-28 18:35:24 +08:00 2
java 的诞生比 C#要早,而且并没有太多的借鉴。C#的设计本来针对了当时很多 java 的问题,但即便如此,后浪都没把前浪拍死在沙滩上。
|
32
a33291 2023-07-28 19:26:52 +08:00
说信创的笑死,zf 出红头文件指定 java 了?
|
33
pipilu 2023-07-28 19:40:06 +08:00
@liuguangxuan 现在竟然还有 wpf 的
|
34
x77 2023-07-28 21:54:01 +08:00
确实,先用 Java 再用 C# 就感觉前进了不少。但是 C# 应用范围没人家 Java 广啊,微软家里转一圈还得跑出来 ^^
|
35
Rocketer 2023-07-28 22:11:53 +08:00 via iPhone 3
因为 C#是站在 Java 的肩膀上发明出来的呀,当然会取其精华弃其糟粕。而且 C#观念比较激进,毫无历史包袱(它不仅没有继承 Java 的历史包袱,连他自己的包袱也不管,大版本更新时基本不管历史兼容性)
另外 @wanguorui123 #16 ,C#只是在中国生态不好,在北美还是很好的,第三方类库极其丰富,基本你想做的事都有人给你做好了,你就做个快乐的调包党即可。 |
36
EminemW 2023-07-28 23:01:11 +08:00
看最新版的 JAVA 优化很多了
|
37
ooee2016 2023-07-28 23:26:00 +08:00
|
38
jack4536251 2023-07-28 23:43:53 +08:00 via Android
@EminemW 除非打工需要,不然坚决不用 java
|
39
iintothewind 2023-07-29 03:39:30 +08:00
Java 语法特性很多都是历史遗留问题,以后的更新属于带着脚镣跳舞,哪能那么容易改良?
要不你试试 Scala2 ,Scala3 ,跟 C#比比看看谁更激进? 要不再上点强度,玩玩 Lisp 的各种分支语言,玩玩 Erlang ,玩玩 Haskell ,看看有哪些所谓 C#上的先进思想是上世纪 70 ,80 年代那些大神们玩剩下的? |
40
voidmnwzp 2023-07-29 04:16:43 +08:00 via iPhone
java 很多语法都是脱裤子放屁的裹脚布 又臭又长
|
41
Donahue 2023-07-29 06:34:03 +08:00
学 java 的时候非常抵触,读取一个文件要用好几个类,什么 stream, bufferedxx 什么的,又臭又长
|
42
msg7086 2023-07-29 06:54:15 +08:00 1
C#比 Java 晚很多,自然设计上多了很多借鉴,少了很多包袱。
要看蠢不蠢,看看 C++23 跟 C++98 差别有多大就知道了。你甚至不觉得他们是同一个语言。 然后你也别说 C#。C#1.1 的时候连泛型都没有,2.0 才引入,然后大量的代码要重构到泛型,你都忘了? |
43
msg7086 2023-07-29 06:56:25 +08:00
@Donahue 现在简单了。String content = Files.readString(fileName);
那个 bufferedreader 是 Java 1.6 的东西,已经是十几年前的事情了。 |
44
cssk 2023-07-29 07:25:57 +08:00 via iPhone
不蠢怎么能成工业语言
|
45
klo424 2023-07-29 08:10:32 +08:00
CSharper 路过,真的是爱不上别的语言,除了 JavaScript 。
|
46
MakHoCheung 2023-07-29 08:58:52 +08:00
学 Swift 路过,C# 也就那样,lamda 要写在括号里面也挺蠢的。现实中吐槽来来去去也就是一些语法糖和标准 API 是否简洁,挺没意思的
|
47
cylx3124 2023-07-29 09:06:01 +08:00 via Android
试试 kotlin 吧,Java 确实一言难尽
|
48
yogogo 2023-07-29 09:37:43 +08:00
算 KPI 好用多了,哈哈哈哈
|
49
niubiman 2023-07-29 11:24:45 +08:00
@MakHoCheung lambda 不就是个委托的变量吗,跟写在哪里有什么关系
|
51
poorcai 2023-07-29 12:12:44 +08:00
自己写 C# 真的很爽,只能说工作很少
|
52
lovedebug 2023-07-29 12:25:05 +08:00
产品用的 JDK 17 ,功能还是不错的
|
53
Leviathann 2023-07-29 12:49:21 +08:00
你说的对,但是 不能直接 date.toString("yyyy-MM-dd")非要用 SimpleDateFormat 和语法没任何关系
|
54
levon 2023-07-29 13:01:14 +08:00
语法上确实差点,但生态好太多。
|
55
hhjswf 2023-07-29 13:18:56 +08:00 via Android
@Rocketer 无法理解你这“中国生态不好,在北美很好”是什么意思,用个库还分国内外? Java 的生态不都是靠着老外的库吗
|
57
ShinichiYao 2023-07-29 14:19:22 +08:00
C#你可以想成 VB 用 C 的语法写出来,和 VB 可以一对一完美转换
|
58
storyxc 2023-07-29 15:49:09 +08:00 2
我认为 SimpleDateFormat 不如 golang 的日期格式化恶心
|
59
chocotan 2023-07-29 18:07:18 +08:00
“还有就是 list 必须要先 stream(), 必须要写 setter 和 getter(现在貌似都用插件了?) 真是难以理解。”
楼主你这没喷到点子上啊 --- 不过楼主说 java 语法蠢我是赞同的。 |
60
tommyzhang 2023-07-29 18:15:20 +08:00 1
五十步笑百步 徒孙偶见祖宗总要怪一句祖宗不时尚
|
61
ggvoking 2023-07-29 19:04:24 +08:00 1
不能再认同 OP 了,大学时就很讨厌 java ,写代码又臭又长。现在从事游戏用 c#和 go 就很舒服。
|
62
XuYijie 2023-07-29 21:07:09 +08:00 via Android
那也正常,c #就是在 java 先有问题的层面上开发出来的
|
63
houshuu 2023-07-29 23:19:03 +08:00
Java 啰嗦是啰嗦,不过还好有 kotlin 可以换着用
|
64
wertywert 2023-07-29 23:40:38 +08:00
Java 出来比较晚,语法糖少一些,写起来没那么顺
(题外话,现在转 java 不是 49 年入国军吗??) |
65
Bingchunmoli 2023-07-30 02:07:15 +08:00 via Android
data 属于历史遗留问题,确实属于奇葩,get 和 set 难道不是因为不是 public 吗
|
66
xmt328 2023-07-31 09:27:26 +08:00
就是,垃圾 Java ,快别入坑了
|