如果是服务器端, 毫无疑问C#是很难跟Java拼的。
就算将来,微软逆袭的机会也很渺茫了。就技术的先进性来说, Java平台是不如.Net平台, 但是, 程序员对于两个平台,直接接触的基本以语言为主,也就是Java和C#,至于JVM和CLR,这两个运行时的好坏, 对于程序员而言 ,没有那么明显。所以, 程序员的注意力都是在Java和C#两门语言身上的。
就语言特新而言, 说Java被C#吊着打、甩几条大街,都是不为过了, 只要不是从上世纪穿越过来,没人会说Java漂亮的。这也是C#最大的优势所在, 也是它逆袭Java的重要资本。我一直来都是微软粉,希望有一天C#能反超Java,虽然我写代码的语言还是Java为主, 但那是行业趋势所迫。
可现在不一样了。JVM上的kotlin语言似乎非常的有潜力, 还被google收为干儿子, 待遇比亲儿子golang都好。
kotlin能和Java无缝共存,两门语言在一起,和谐到不可思议,就差不能写在同一个文件里了。
跑在JVM上的项目,我现在基本都用Kotlin写了,并且也在公司里进行了推广, 有一部分同事已经开始使用。
就我的使用体会来说, Kotlin语法层面完全不输于C#,先进的特新一样不少,写起代码来各种吊炸天的舒服。我甚至觉得,Kotlin团队开发这门语言时,是不是照着C#一样画葫芦的。
所以说, Kotlin一出来, .Net平台相对于Jvm平台,语言的语法优势就失效了。 而剩下的那些东西, 本来就不是.Net强项, 又怎么和Jvm对屌。当然, 这里并不是说windows不如linux,CLR不如JVM ,但是两项因素的优势,还不足以成为逆袭成功的武器。
包括现在更新到2.0的.Net Core, 也没有强大到令开发者们眼前一亮,有让开发者们有强烈使用欲望的理由。虽然这种技术很好, 但是Java也不差啊。新技术带来的好处还填不平技术切换产生的成本。
现在.Net平台唯一的优势估计之剩下宇宙第一的开发神器 visual studio了, 虽然JB家的IDE很不错,但跟VS比还是有差距。
学习交流群:669823128