.net 现在是不是很不受待见,岗位少的可怜

2020-03-27 12:42:15 +08:00
 YongkeLi
15499 次点击
所在节点    程序员
158 条回复
LokiSharp
2020-03-27 14:50:50 +08:00
@Jirajine 你如果了解一下,你会发现 Kotlin 的历史包袱更重。由于逃不出 JVM 的魔咒,导致很多预想的特性都没法实现,所有的特性都是给 Java 加糖。
Rwing
2020-03-27 14:53:18 +08:00
@hantsy 既然有比巨人更高的人,那为什么不选择他呢?所以还是惯性,跟语言是否优秀无关。
java8 及之后还是太慢了,还差的远啊,步子还这么小。
我拿我在这里之前的一个回答来举例,按日期分组求和,看看 C#是否简洁明了?

https://dotnetfiddle.net/zUSwU7


```
var data = new List<Sample>
{
new Sample {id = 1, date = "02-10", clicks = 1, views = 2},
new Sample {id = 1, date = "02-10", clicks = 2, views = 2},
new Sample {id = 1, date = "02-19", clicks = 3, views = 2},
new Sample {id = 2, date = "02-11", clicks = 4, views = 2},
new Sample {id = 2, date = "02-11", clicks = 5, views = 2},
};

var result = data.GroupBy(i => new { i.id, i.date })
.Select(g => new Sample
{
id = g.Key.id,
date = g.Key.date,
clicks = g.Sum(i => i.clicks),
views = g.Sum(i => i.views),
});
```
Mithril
2020-03-27 14:54:18 +08:00
@Jirajine 明白了,你说的对。请不要再 @我了。
Rwing
2020-03-27 14:55:00 +08:00
@Jirajine 来,就我上面这个例子,你找个你认为更简洁更优雅代码来,从数据初始化到分组求和
guolaopi
2020-03-27 14:56:41 +08:00
@hantsy
C# 转 java 是更容易,但是 java 面试题是真的一言难尽。。。Go 目前感觉面试还没有到让你造核弹的地步。

从 C#转到 java 是一回事,转完之后找工作又是一回事,
可能你会发现你对 java 语法或者 spring 等用的很熟练了,面试官一个 Map 源码的问题甩出来,各种分布式事务锁原理实现问题甩出来。。。。而且传言多数 javaer 看不上从 C#转过去的开发= =

就业岗位多不代表就业就容易,面试门槛越来越高了(不知道跟过滤培训班是否有关
guolaopi
2020-03-27 14:58:51 +08:00
@Jirajine
建议了解一下 async/await 以及 x?.func() 等语法糖,js(TS)和 python 都在借鉴 C#一些优秀的设计,这是事实。
chouchoui
2020-03-27 15:00:11 +08:00
@Jirajine #37 写过一点界面就不要下高论了,说越多越丢人,先 B 了
opengps
2020-03-27 15:01:44 +08:00
只是不热衷于互联网风口,毕竟做到一定规模需要正版
hantsy
2020-03-27 15:02:27 +08:00
@LokiSharp 语法上 Kotlin 优雅简洁一些,运行时 Kotlin 可以跑 Native 的,Kotlin 自己就是 Native 项目。

另外,Oracle 有一个 GraalVM,借助基本上 Java 8,Java 11,Kotlin 跑纯 Native 一点问题都没有。现在很多框架支持 Graal 了。Quarkus,Micronaunt, Helidon 从开始就支持,Spring 现在也在 Experimental 阶段。
guolaopi
2020-03-27 15:02:35 +08:00
@Rwing

import fucker from "whatever_fucking_thing"

result = fucker.group_and_sum([{id = 1, date = "02-10", clicks = 1, views = 2}....])

公众号宣传标题可以起名:“天啦噜,一行 python 代码搞定 C#16 行代码才能完成的事....”

(滑稽
LokiSharp
2020-03-27 15:04:01 +08:00
@guolaopi 我觉得 C# 光十年前的 LINQ 这一个特性从先进性上就够吊打他说的所有语言了
jtwor
2020-03-27 15:04:34 +08:00
c#语法糖很舒服的~
hantsy
2020-03-27 15:04:41 +08:00
@Rwing 这个用 Java 8 Stream 也不难的。
Rwing
2020-03-27 15:06:15 +08:00
@hantsy 嗯,是不难,只是不够优雅简洁
guolaopi
2020-03-27 15:06:53 +08:00
@LokiSharp
这么说有点欺负人,
从写法上来说个人感觉 LINQ 操作集合的话不能说吊打目前所有语言也差不多(感觉会被喷)。。。
hantsy
2020-03-27 15:07:17 +08:00
以前 Hibernate,Spring 都有 。net 版本,现在还有人用吗?
aguesuka
2020-03-27 15:09:28 +08:00
sg:lgd 硬实力是冠军。 v2ex:单论语言,c#差这几个?
LokiSharp
2020-03-27 15:10:16 +08:00
@hantsy 讲真的。。。Kotlin Native 有人用么,没有 JVM 的生态,我觉得 Kotlin 没法用。JB 自家出的 Ktor 和 Exposed 我也只看到 JB 自己在用。

Kotlin 还有个问题,JB 负责人 Kotlin 的核心团队很多是说俄语的斯拉夫人。。。有些东西的文档只有俄语
iriyave
2020-03-27 15:15:35 +08:00
c#在 win 上确实 NB,之前一直用的 QT,后来了解了下 xaml 和 prism,感觉思想先进的多,prism 那套 di 配 module 解耦在 qt 里想实现还是挺麻烦的。唯一不爽的就是 xaml 的 xml 语法了,真的难看,这点 QT 的 qml 可读性要好的多,写出来很像 c++代码,可惜 qml 算个半成品,等 QT6 出来再看看。
EKkoGG
2020-03-27 15:52:17 +08:00
抛开偏见,.net core 真的很棒

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

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

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

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

© 2021 V2EX