各位大佬 诚心发问 2022 年押宝 c#还是 Java ?有五六年后 run 美打算
1 iwdmb 2022-07-25 00:55:53 +08:00 ![]() 毫无疑问 Java |
![]() | 2 CEBBCAT 2022-07-25 01:37:12 +08:00 现在什么基础呢? |
![]() | 3 ktqFDx9m2Bvfq3y4 2022-07-25 07:15:26 +08:00 via iPhone ![]() @iwdmb 别毫无疑问,c#一直在走上坡路,万一 op 润美吃力还可以退到澳新,这边 c#反而是主流。 |
4 FungKao 2022-07-25 08:22:56 +08:00 ![]() |
![]() | 5 makelove 2022-07-25 08:27:16 +08:00 ![]() 建议在本站搜一下 C#的惨状,至少在国内是起不来的 至于楼上说在国外是主流,我信你个鬼 |
![]() | 6 rpish 2022-07-25 08:44:44 +08:00 via Android ![]() C # is Microsoft Java. Java 料多先 Java ,之後需要再 C#就好了。 |
![]() | 7 dk7952638 2022-07-25 08:53:21 +08:00 ![]() 过去十来年,押宝 C#的都已经成功转行,脱离苦海,所以,还用选吗? |
![]() | 8 wanguorui123 2022-07-25 09:05:49 +08:00 ![]() 国内 JAVA 国外 C# |
![]() | 9 shijingshijing 2022-07-25 09:16:35 +08:00 ![]() 最近看到的几个 C#做的比较久的有影响力的,一个杨中科润了澳洲,另一个回农村了。如果他们当初选择 Java ,现在随便一个互联网大厂中厂的混得风声水起,保底 P8 以上,还可以天天摸鱼。 不是说他们技术不行了,而是没有需求了。 |
![]() | 10 code4you 2022-07-25 09:34:46 +08:00 ![]() 问过老外 他们说 Java 和 C# 都可以 没在国外待过 也不知道到底选择哪个 |
![]() | 11 cco 2022-07-25 09:37:09 +08:00 ![]() 看生态就知道了。Java 、Python 都可以,C# 好用是好用,可惜,生态不行,跨平台太晚。 学精通一门,其他语言无非是部分语法和框架 API 的不同罢了。 |
13 dqzcwxb 2022-07-25 09:43:59 +08:00 ![]() 打开 boss 搜索你所在城市职位,答案自然在你心中 |
14 SurfaceView 2022-07-25 09:44:49 +08:00 ![]() 楼上居然有建议.net 的.... |
15 drich 2022-07-25 09:47:51 +08:00 ![]() 在华为写了 4 年 java ,来现在这家外企写 C#,平滑过渡毫无压力,C#的特性慢慢了解就是了 |
![]() | 16 pengtdyd 2022-07-25 09:49:46 +08:00 ![]() 反正跟着微软饿死的概率很大 |
![]() | 17 lower 2022-07-25 09:50:26 +08:00 ![]() All in AI |
![]() | 18 chendy 2022-07-25 09:50:28 +08:00 ![]() Java 呗,会 Java 写 C#问题不大,C#特性丰富用完了回 Java 可能会吐 顺便吐个槽,是不是移民中介进驻 V 站了,最近看到好几个帖子都是 “xxx 选什么?打算 n 年后润” |
19 xsqfjys 2022-07-25 09:57:42 +08:00 ![]() 国外 java 也不少呀 |
20 kenvix 2022-07-25 09:57:52 +08:00 ![]() 先不说别的,你看.NET 世界有 ZGC 这样的低延迟 GC 吗?没有。 至于语言特性的问题,java 世界有 kotlin ,除了泛型的问题基本都 OK |
21 quan01994 2022-07-25 09:58:32 +08:00 ![]() JAVA 和 C# 基本平滑切换,如果你要做桌面 建议 C# ,如果你是 web ,C# 唯一的问题就是 工资 比 JAVA 第一档吧,不过不会特别卷,我现在就是,基本是下班就跑,平时上班摸鱼。 |
![]() | 23 heiher 2022-07-25 10:02:56 +08:00 ![]() 别的不说,dotnet runtime 的代码和屎一样~ |
![]() | 24 wombat 2022-07-25 10:09:23 +08:00 ![]() 看你在哪个行业。我现在的行业,很多代码都还是 c#,未来也不会更换。可能会迁移到 .net core |
25 urnoob 2022-07-25 10:10:45 +08:00 ![]() 首先学会了 java 基本无缝 C# 其次你看看跟着微软混的诺基亚手机...(往好一点想就是你和手机一样润进微软,然后....) |
![]() | 26 poorcai 2022-07-25 10:11:20 +08:00 ![]() 我是做 .net core 的,好用是好用,C# 语法不错,就是国内行情不太行,国外不知道。 |
![]() | 27 sinnosong1 2022-07-25 10:12:44 +08:00 @heiher 给点文章,或者例子?张口就来可不行 |
28 NoNewWorld 2022-07-25 10:18:47 +08:00 ![]() 押宝 c#,然后润澳新 |
![]() | 29 gowk 2022-07-25 10:18:52 +08:00 ![]() 我选择 C#,写惯了 C#,写回 Java 会想死的 |
![]() | 30 rb6221 2022-07-25 10:36:30 +08:00 ![]() 没必要押宝,这两个语言如果不考虑精通的话学起来都不难的,都学也不是什么问题,你有 5 年时间 |
31 wangxin13g 2022-07-25 10:52:59 +08:00 能问出这个问题的根本就不存在押宝这个说法。写 java 去吧 |
![]() | 32 yuzhibopro 2022-07-25 10:58:35 +08:00 写了 5 年 C++。上手 c#只需要 1 天。干活没问题。java 应该更是这样吧 |
33 Bazingal 2022-07-25 11:01:20 +08:00 ![]() 看过 java 味的 C#代码很想打爆那些说无缝转换的人 |
![]() | 34 ericguo 2022-07-25 11:04:28 +08:00 ![]() 有 run 美打算应该上 Rails ,别忙着否定我,你仔细查一下资料判断一下。 |
![]() | 35 ijrou 2022-07-25 11:05:27 +08:00 ![]() C#国内生态极差,各种资料很难找到,官方文档机翻难以看懂且知识点过于分散,反观 java ,一大堆生态和学习视频,对入门非常友好,深入新知识点也非常方便,所以,我建议 java ! 对于找工作的,java 是非常值得推荐的,对于兴趣爱好的,C#是个不错的选择,就看你怎么选了 |
![]() | 37 ktqFDx9m2Bvfq3y4 2022-07-25 11:54:29 +08:00 via iPhone @makelove #5 你在国外吗怎么这么有底气评价国外 c#行情? |
![]() | 38 ktqFDx9m2Bvfq3y4 2022-07-25 11:57:41 +08:00 via iPhone @code4you 打开目的地找工作网站,统计一下前 10 页技术栈要求。 |
39 Rwing 2022-07-25 12:07:09 +08:00 ![]() 巧了,国外有作者刚写了“押注.NET 是件好事”,国内也有翻译,请看这里 https://mp.weixin.qq.com/s/PIaRlznK6F1L57ufdubvIw 英文原文: https://medium.com/@bryancostanich/its-good-to-bet-on-net-c22853f501c7 |
![]() | 40 aw2350 2022-07-25 12:12:06 +08:00 @shijingshijing yzk 一个培训机构的讲师都能有影响力,可见 c# 是多么的落魄 |
![]() | 41 aw2350 2022-07-25 12:16:43 +08:00 这种问题,我觉得直接去领英 或者 stackoverflow 上看招聘薪资和要求,已经岗位数量就可以了 |
42 aguesuka 2022-07-25 12:17:43 +08:00 ![]() C#er 在谈生态的时候总是只谈 .NET core 全平台, 而在谈人数的时候甚至会把 unity 也包含进来. .NET 现在是跨平台了, 但是找工作的时候还是 .NET framework. 公司又不是傻子, 老项目不会动, 新项目用 Java. |
![]() | 43 ktqFDx9m2Bvfq3y4 2022-07-25 12:26:56 +08:00 ![]() @aguesuka OP 说了要准备 Run ,所以直接去目的国家搜索招聘要求更直观。欧美我无法评价,但澳新 C#是主流。我在新西兰,之前我统计过本地招聘网站,C#已经占一半以上市场。我们这边有太多会 Java 的想移民很难找到工作最终不得不学 C#才搞定的。 |
44 aguesuka 2022-07-25 12:33:33 +08:00 @Chad0000 楼主说五六年后, 首先得在国内干这么久. 退一万步说, 润也是一样, 看 39 楼贴的链接, framework 照样比 core + .NET5 还多. |
![]() | 45 beneo 2022-07-25 12:48:05 +08:00 Java 之后直接 go + python ,如果全栈有兴趣,向去大公司走 react ,自己创业走 vue |
![]() | 46 ktqFDx9m2Bvfq3y4 2022-07-25 12:48:21 +08:00 ![]() @aguesuka #44 既然考虑润那是不是找外企或跨国远程更合适呢,比如这个:/t/867370 framework 多只能表示那些要么是基于 Windows 的(桌面程序)要么国内没动力升级。我在这边属于传统的电信行业,我们都在积极升级到.net6 ,就差最后一个系统了,一个月内就会全部切换完。 |
![]() | 47 NVDA 2022-07-25 12:58:30 +08:00 ![]() 首先押宝这事非常不靠谱 其次美帝而言 junior / mid junior level 招人基本不看你之前用的是什么语言,要不微软那帮人怎么跳... 最后 C#...从来不是主流 说实话我只见过在微软的人用 C#,其他我认识的所有人没有一个用的是 C# 当然,我不做传统行业,印象中这些比较传统的企业用 C#比较多 问题是这些行业招人少啊 |
![]() | 48 shijingshijing 2022-07-25 13:06:41 +08:00 @aguesuka 42# 最搞笑的是前几天看一个写.Net 新版 Feature 的文章,也是狂吹跨平台,具体是说的 Win UI 还是 MAUI 的,最后跨来跨去只剩下微软自家的 Windows 跨 XBox 了,哈哈。 我是一路微软系用过来的,MFC -> WinForm -> WPF ,开始还是很愉悦的,后面强推 Metro ,然后 UWP ,Win UI ,MAUI 什么的一看势头不对,立马打住。微软一路挖坑弃坑,坑了不少开发,您自己玩吧,我不奉陪了。 现在的 Visual Studio 也是臃肿不堪,我就启动一个 VS 看一下项目,打开界面背后一堆 Telemetry 背后跑得贼欢快,给你发起 N 多网络连接,真是怕了。还有其他什么 SilverLight 懒得说了。 |
![]() | 49 shijingshijing 2022-07-25 13:13:07 +08:00 ![]() @Mirage09 传统行业现在也是维护老项目采用他家的,新开的项目基本走 Qt 了,一个是好招人,架构用 Qt 配合 PySide 弄个架子,各种 Boilerplate 弄好,新人跑过来理解了 Slot 和 Signal 之后,依葫芦画瓢快的很,会 Python 的比会 C#的多多了。另一方面,底层需要性能的部分,老师傅 C++写好之后把 API 和文档弄清楚,基本上也没什么大的问题,而且是正经的 Native 。基本上,传统的汽车行业都是这样操作的了。 |
50 aguesuka 2022-07-25 13:27:13 +08:00 ![]() @Chad0000 1. 跨国远程工作和外企没有想象中那么容易找, 尽管我现在也远程, 限制在 C# 更难找: 请谷歌 "site:v2ex.com/t 远程工作 Java OR C# ". 你们公司切系统只能说明你们属于 30% 中的一部分, 我真心的恭喜并羡慕你, 而 39 楼的链接确实是国外的统计. 如果你认为新项目都用 core 了, 那么只能说明旧项目比新项目多. 如果你认为你们公司是传统公司, 那么只能说明有更多的公司更传统. 楼主能在 V2EX 问这个问题, 大概率没有编程经验. 你给的 JD 用的是 NET Framework 4.7, 而且要求 3-5 年工作经验, 而且还支持 Java 转岗. 所以之前的工作是 Java 还是 C# 没有意义. 我司的 JD 吹得比这个 JD 还厉害, 入职以后才知道"企业级框架", "xxx 合作商", "核心系统 xxx 的维护和新功能开发" 是雷中雷中雷, 要不是看在远程的面子上早跑路了. 如果不带记忆重开 10 次押宝 C#, 大概率有 5 次会得到维护老项目, 熟悉 .NET framework, 手动打包 dll, 给 sqlserver 写存储过程, 写存储过程的时间比写 C# 的时间还多, mstsc 的时间比以上都多, 离润的目标越来越远. |
![]() | 51 jitongxi 2022-07-25 13:34:20 +08:00 好, 我选择 kotlin |
![]() | 52 NVDA 2022-07-25 13:39:06 +08:00 @shijingshijing good to know ,感谢 |
![]() | 53 crazytudou 2022-07-25 13:41:56 +08:00 在这里竟然没看到这种回答:“选那个语言都一样,关键是自己的能力,学好一门技术,到哪里都吃香”。 作为一个搞 C#的人,建议想国内混进好点的厂,学 java 吧。 |
![]() | 54 cnrting 2022-07-25 13:46:13 +08:00 via iPad 小孩子才做选择 |
55 aguesuka 2022-07-25 13:51:05 +08:00 @crazytudou 只有都鸡汤能打败鸡汤: "选择比努力更重要" |
![]() | 56 shijingshijing 2022-07-25 13:53:47 +08:00 @aguesuka SQLServer ,存储过程,外键感觉都是上个世纪的产物了。 |
![]() | 57 heiher 2022-07-25 13:56:50 +08:00 via Android @sinnosong1 比如对比下 openjdk hotspot 和 dotnet coreclr 的 jit 实现: https://github.com/openjdk/jdk/tree/master/src/hotspot https://github.com/dotnet/runtime/tree/main/src/coreclr/jit 就说公共架构分离的设计,hotspot 公共代码、架构代码结构清晰明了,反观 coreclr 明显设计不足,就像一锅粥,公共代码文件里充满了各种 cpu 架构开关宏,可读体验很差。 |
58 aguesuka 2022-07-25 14:14:41 +08:00 @shijingshijing "企业级应用"的标配, 在当年也是潮流了, 就像今天 spring cloud 之于 Java 一样疯狂. Java 也有老技术, 但是谁还会记得 osgi, hivemind 呢, 马上 dubbo 也是过去式了. 还忘记提 webservice 了, C# 当年那么努力推这玩意, 连标准协议里面的 head 支持都不完善. 导致了 C#提供出来的接口都是 webservice, 但是调用其它语言(甚至其他框架, 其他版本)写的 webservice 都报错. |
![]() | 59 datiewang 2022-07-25 14:16:56 +08:00 建议学 .NET 的建议来和我互换工作蟹蟹 |
60 Mithril 2022-07-25 14:23:23 +08:00 这边建议学前端。 看看隔壁吵 yarn 和 pnpm 的帖子,五六年包管理都能换几遍。 这么大工作量肯定是不愁找不到工作的。 |
![]() | 61 hikarugo 2022-07-25 14:34:27 +08:00 ![]() 这个毫无疑问 Java ,首先一个大假设是:不是你想润就能润的,万一苟在国内你会恨死现在劝你学 c#的网友 |
![]() | 62 RockShake 2022-07-25 14:56:48 +08:00 ![]() .NET 吧,国外的工作机会很多 |
![]() | 63 limingxinleo 2022-07-25 14:59:51 +08:00 ![]() .net 和 Java ,那肯定要选 Java |
![]() | 64 penll 2022-07-25 15:19:47 +08:00 ![]() 站下 C# .net5.0 6.0 真香 |
![]() | 65 libook 2022-07-25 15:35:16 +08:00 ![]() 据个人了解,C#在游戏领域比较活跃,Java 在 Web 服务领域比较活跃,海外技术流行情况不像国内这么极端,想发展什么技术栈主要看你像去哪个领域工作,可以刷一刷招聘信息。 另外不建议一棵树上吊死,学越多眼界越开阔。 |
![]() | 66 winglight2016 2022-07-25 16:55:50 +08:00 ![]() 选 c#等于在巨硬一棵树上吊死,或者 unity 也算?选 java 等于是和主流接轨,这两者有什么可比性呢? |
![]() | 67 Felldeadbird 2022-07-25 17:00:58 +08:00 ![]() 不应该看业务选语言吗?我之前 C#是因为写游戏才接触。 |
![]() | 68 Dragonphy 2022-07-25 17:02:35 +08:00 C#从入门到 Java |
![]() | 69 PopRain 2022-07-25 17:05:51 +08:00 ![]() 双修没有啥难的吧, 如果非要选语言,我还是选英语, 这个面试时比你技术更重要吧 |
71 dcsuibian 2022-07-25 18:32:16 +08:00 ![]() |
![]() | 72 vintamango ![]() 站队 C#身边搞 Java 的都开始掉头发了,C#的表示毫无压力 |
73 dcsuibian 2022-07-25 18:54:30 +08:00 ![]() 作为一个 Javaer 和软粉。 深知 C#比 Java 更优秀:本就有后发优势,又有着微软强大的技术力支持和统一的设计风格,宇宙第一 IDE Visual Studio ,还有文档支持。 但是吧,那可是微软,技术力强但决策是相当垃圾的,而 Java 则更加开放自由。 尽管.NET Core 开始已经开源、跨平台了,但很明显社区缺乏对其的维护能力,.NET 的命脉仍然把握在微软手里。(顺便说一句,Swift 也是开源的)。而且时至今日正统的 Visual Studio 仍然只能在 Windows 上使用,因此我很怀疑微软的决心。 相对来说,Java 开源得非常早,一开始就免费、跨平台。 最主要的是有着 JCP 这样的组织,Oracle 不干了立马有人接手。 跨平台.Net IDERider ,就是用 Java 写的。 |
![]() | 75 ragnaroks 2022-07-25 21:30:26 +08:00 ![]() 与其说是 java 和 csharp ,不如说是 springboot 和 aspnet ,javafx 和 MVP ( WPF 、MAUI )之类的对比,语言层面除了性能没有太大区别,现在企业级应用性能从来不是 TOP 5 的问题;如果你确定要去国外,那可以优先考虑 csharp ,最完善的文档( MSDN )和最给力的社区( StackOverflow );如果只是纸上谈兵阶段,还是考虑 java 吧,至少目前国内 java 应该是 csharp 2 倍的机会。 |
![]() | 76 ragnaroks 2022-07-25 21:32:43 +08:00 题外话,使用 csharp 和 dotnet 必定接触 sqlserver ,我黑微软主要就是 sqlserver 和 windows 这两点,真是难用 |
77 zartouch 2022-07-25 21:54:07 +08:00 ![]() 想 run 美国,麻烦就刷好算法和系统设计。 现在还在纠结用啥语言,特别还是 c# 和 java 这种很容易互换应用场景也差不多的语言。只能说还是多看点计算机基础的书吧。 估计你这门都没入呢,别想太多了。 |
![]() | 78 az22c 2022-07-25 23:45:28 +08:00 |
![]() | 81 timothyye 2022-07-26 00:22:03 +08:00 via Android 押这两个不如押 Rust |
83 hez2010 2022-07-26 01:00:25 +08:00 @dcsuibian Rider 只是 UI 这层皮是 Java 写的,因为要兼容 IntelliJ 生态上的插件,但是 Rider 除了 UI 之外的 backend 是纯 C# 做的。 |
84 hez2010 2022-07-26 01:02:47 +08:00 ![]() 用 .NET 能帮你省掉很多事情和时间,多出的精力可以用来多去研究其他感兴趣的东西提升自己。润美的话,国外确实 C# 很多,而且薪资也高于 Java (数据来自 StackOverflow 近几年的开发者统计)。 |
![]() | 85 rpish 2022-07-26 01:16:45 +08:00 via Android @shijingshijing 杨中科是我见过最聪明的润学大师,不愧是搞培训起家的,真的有一手。 先在 B 站借程序员标签引流,再借做免费英语学习网站出圈,积累足够粉丝以后申请维权 MVP 。 最后,借着 MVP 头衔润新西兰。 看网站就知道技术多半是不行的,不过这一套流程,撇开运气成分不说,还是很厉害的。 |
86 charlie21 2022-07-26 01:39:43 +08:00 ![]() 这不是你的押宝,这是公司技术决策人的押宝 这不是公司的当代技术决策人的押宝,这是公司的上一代技术决策人的押宝 只要技术方面没烂到让公司业务流失、让公司倒闭,那么技术就是合理的 不需要选择最好的技术。 "选最好的" 可以休矣 对公司而言,是选择最划算的技术。划算是由当地就业市场决定的 外国 .NET 人才便宜,所以用 .NET 如果 JAVA 人才便宜,所以用 JAVA ,也是很合理的 业务流失和技术没关系,那是销售人员的事情。可以押宝一个有超棒销售人员的本地公司就可以了 |
![]() | 87 msg7086 2022-07-26 02:27:01 +08:00 ![]() 大公司基本就 Java (不说微软的话)。 但是大公司也不是只招会 Java 的人。你 C#写得好照样能被招进去写 Java 。 我现在就是做 Java 岗,Java 是招进去以后当场现学的。 |
![]() | 88 Aloento 2022-07-26 03:30:35 +08:00 你两边都学好就不会有这样的问题了 |
89 ming159 2022-07-26 08:41:56 +08:00 ![]() 个人看法,单纯讨论语言没意义. 要看你发展的领域. 如果还是 Web 方向,毫无疑问是 Java. 如果但是如果是工业自动化领域,毫无疑问是 C# . 各家设备厂商提供的 SDK 基本优先 C#版或者 Dll |
90 INCerry 2022-07-26 13:01:44 +08:00 ![]() > 题外话,使用 csharp 和 dotnet 必定接触 sqlserver ,我黑微软主要就是 sqlserver 和 windows 这两点,真是难用 @ragnaroks 就算是放在 200x 年,.net 也可以运行在*inux 和使用 mysql ,就算你用 java 好多人也都是用 windows 和 sqlserver |
91 hu8245 2022-07-26 14:24:24 +08:00 岔个题,来 C 艹吧 |
93 forgottencoast 2022-07-26 17:34:14 +08:00 @charlie21 根本就不是你说的这样子。 大多数公司都是从微小企业发展起来的,技术的选择主要是第一任技术负责人决定的,他肯定选他熟悉的技术领域。 后面的人可能会推翻前任,更换技术路线,但是这个成本是巨大的。 |
94 drich 2022-07-27 10:01:20 +08:00 ![]() |
97 roundgis 2023-04-14 22:10:42 +08:00 via Android @Chad0000 c#在中少人用很大程度是市畸形 其他地方就算市份有 java 多也足活一票人了 |