从.NET和Java之争谈IT这个行业
一、有些事情难以回头
开篇我得表名自己的立场:.NET JAVA同时使用者,但更加偏爱.NET.原因很简单
1.NET语言更具开放性,从开源协议和规范可以看出;
2.语言更具优势严谨;
3.开发工具VS更具生产力;
然而
1.Java,C#的职位比率在4:1,虽然这不是什么问题,因为求职竞争的比例更大(JAVA中更多的刚培训出来的),
但话说回来,对于C#求职而言,会面临更加狭窄的企业选择空间.
2.Java同等职位,国内的待遇比.NET稍高;这里为.NET说声不平,.NET开源程度更好,架构体系更成熟逻辑更严谨,开发效率更高,服务器同样可以使用Linux
这些不对等的原因
1.历史原因
JAVA早.NET5年出生,一开始就对各大平台(主要就Linux)提供技术支持,微软前两任CEO都固步自封以为WINDOWS可以始终独步天下
,压根就瞧不起Linux,因此.NET原本可以飞的实力(本来就可以跨平台、更好的语言特性)被微软给封杀了,尤其那个叫做鲍尔默夜郎自大.......
因为JAVA在其出生的年代凭借其优势可谓天子骄子,因此吸引很多IT人员加入其阵营之中,这些人占领了各行各业的企业之中,慢慢这些JAVA从业者
成为技术领导,在后来的十几年中,微软依旧固步自封,故此JAVA占领了绝大多数企业技术决策层.
2.Android的成功
虽然JAVA越来越老,微软转向开源界、.NET开源、但使用JAVA作为应用语言的Android取的了智能设备领域的巨大成功,
这无非给年老的JAVA打了一针强心剂,虽然C#可以同时支持Android/IOS开发,但因为上面的历史原因(JAVA占领了绝大多数企业技术决策层),依旧缓慢前行.
3.微软在手机系统中的失利
不仅巨坑了诺基亚,而且手机系统这么多年一直在改.......... 而且不提供后向兼容.后果当然也算得上.NET阵营的失利.
有了鲍尔默这样的CEO,你我还能怎样呢?
4.马太效应
当你的对手占据了绝对优势之后,再努力你将付出天大的代价.
二、来至.NET阵营的哀伤
很多.NET阵营的朋友都在感慨,如果上天在给一次机会........,但回头对他们来说真的很难.在这里对那些无礼鄙视.NET的JAVA者(仅仅这些人)说一句:
不是因为你们人更优秀,而仅仅因为你爸是李刚.完成一个业务需求看做得又快又好就知道.
如果你出生贫寒,你就要付出比别人更多艰辛才行.大自然的法则就一条:物竞天择,适者生存.
三、.NET自己的出路在哪里呢?
1)Unity目前是一个很好技术方向,毕竟游戏从未在中国市场没落过.
2)等待着甲骨文把JAVA给终结了,但甲骨文Android之争的结果,显示甲骨文对JAVA挣钱这件事情失去信心,
尤其是谷歌在Android上面的胜利.有理由相信甲骨文不会对JAVA做出更大的贡献.谷歌依然有被起诉的风险,从技术上显示谷歌会为了避开这对烂事,
会将JDK走向OPENJDK,或者其他技术(如果甲骨文最终取得胜利的话).
3)等待微软WP的逆袭,眼下纳德拉的决策显示,手机系统市场赚不了钱,他只想做好系统,等待适当的契机,因此这个愿景再等一年看,但那时世界又是怎样的何人知道?
4)等待着.NET Core占领B/S市场,这一天指日可待,开源+性能优势.
四、到底技术人员如何规划自己的一生
前段时间看到高斯林爆料:高龄IT求职人员在硅谷遭到歧视.我想这个现象这中国必然更加普遍,
原因很简单:你是一个老技术达人,你的工资只能随着你的年龄趋向一个极限值,而你的精力随着年龄
越来越不如年轻人,要么你成为一个企业的技术领导,然后一直那么待下去.要么你自己创业,用你的技术
去打造一番自己的事业,不然你只能选择改行.
昨天看了王垠的一篇文章,链接这里:http://www.yinwang.org/blog-cn/2016/10/25/argument
他绝对是一个技术强人但在大型企业中(如微软)只是一个初入一个公司小角色,
如果一个人进入一家公司,不是去做CTO的,那么他只能作为一个新人,被所谓的上面的'领导'打压,王垠这样例子很多,
正如他说:他所谓的领导是为了争论而争论,不是为了把事情做到位,更不是为了让问题得到更好地解决.
最终王垠结尾如此写道:
我看见满载希望的列车,冲向悬崖的尽头,然而我却只能保全自己,因为我无法拯救愚昧。愚昧是无敌的。有个古人说得好,
理性和智慧从来就没有战胜过愚昧,只有等愚昧的人都死去,它们才有被人看见的希望……
作为纯技术IT人员很多都遇到类似的问题,他们很优秀只是没有读懂人性,智商高的人,他们情商不一定高,或者往往吃亏就在这里
,因为他们是一群做事的人,而不是一群耍心机的人.如果这群忠厚理性的人,不直接隶属于老板的话,
其实会很容易被上面的领导打压,因为人性就是这样:有谁自己不是老板,会看好一个比自己厉害的
竞争对手?他们心中事情本身的对错,不愿事故圆滑.哪里有人,哪里就有这些勾心斗角.
物竞天择优胜劣汰 在人类这群特殊的生物中,武力、技艺早已不是决定胜负的标准了.
四、学会投资理财
这里说的投资不仅仅是金钱上的投资,金钱的投资重要,自我的投资更重要:身体、知识/智慧、人脉.
五、不积跬步无以至千里
这句话留给自己的,每一个人生旅程中都能够学到很多东西,或者说看明白一些东西,学会总结、反思
生命中所遇到的人事物,每天进步一点点就是很大的进步,我们之所以彷徨在于我们不知道我们是谁、要
往哪里去,或许我们真正需要得很简单.
六、谈谈创业
有人说创业是一次探险;有人说创业是一场赌博,因为胜利者只有1/10;在我看来创业是一场知识与智慧的爆发,
利用自己所有的资源和智慧自定周密的计划为之奋斗.一生中最重要的是要明白自己想要的是什么,而不是随波逐流
,因为所追逐不一定是你真正需要的.
从.NET和Java之争谈IT这个行业的更多相关文章
- 从.NET和Java之争谈IT这个行业[转]
一.有些事情难以回头 开篇我得表名自己的立场:.NET JAVA同时使用者,但更加偏爱.NET.原因很简单 1.NET语言更具开放性,从开源协议和规范可以看出; 2.语言更具优势严谨; 3.开发工具V ...
- 从. NET 和 Java 之争谈 IT 这个行业
一.有些事情难以回头 开篇我得表名自己的立场:.NET JAVA 同时使用者, 但更加偏爱. NET. 原因很简单 NET 语言更具开放性, 从开源协议和规范可以看出; 语言更具优势严谨; 开发工具 ...
- 《.NET和Java之争》 读后感
原文地址:https://www.cnblogs.com/adalovelacer/p/dotnet-vs-java.html 这是博客园被推荐上首页的文章,本着好学的心态,点进去拜读... 我也不清 ...
- .NET和Java之争
这几天连续有多篇文章(详细文章列表在<.NET和Java之争一点随想>和<由优劣语言之争引起的思考>有写)诋毁.NET,这类文章我十几年前就看得多了,只不过十几年前是C和C++ ...
- JAVA基础细谈
JAVA基础细谈 一. 源文件和编译后的类文件 源文件的本质就是程序文件,是程序员编写,是人看的.而编译后的类文件是给电脑看的文件.一个类就是一个文件,无论这个类写在哪里,编译以后都是一个文件 ...
- 虽然不抱希望但也愿.Net和Java之争暂得平息
我在刚开始学编程的时候就经常来博客园,当时博客园基本是.Net的天下,从那时开始.Net和Java哪个好就一直在打,这些年没怎么看博客园了,回来发现到了今天居然还在争论,让我不由得想来分析一下这个问题 ...
- 阿里面试回来,想和Java程序员谈一谈(转载)
引言 其实本来真的没打算写这篇文章,主要是LZ得记忆力不是很好,不像一些记忆力强的人,面试完以后,几乎能把自己和面试官的对话都给记下来.LZ自己当初面试完以后,除了记住一些聊过的知识点以外,具体的内容 ...
- 【推荐】JAVA基础◆浅谈3DES加密解密
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- 阿里面试回来,想和Java程序员谈一谈
引言 其实本来真的没打算写这篇文章,主要是LZ得记忆力不是很好,不像一些记忆力强的人,面试完以后,几乎能把自己和面试官的对话都给记下来.LZ自己当初面试完以后,除了记住一些聊过的知识点以外,具体的内容 ...
随机推荐
- C# MVC 5 - 生命周期(应用程序生命周期&请求生命周期)
本文是根据网上的文章总结的. 1.介绍 本文讨论ASP.Net MVC框架MVC的请求生命周期. MVC有两个生命周期,一为应用程序生命周期,二为请求生命周期. 2.应用程序生命周期 应用程序生命周期 ...
- JavaScript 对象属性介绍
本篇主要介绍JS中对象的属性,包括:属性的分类.访问方式.检测属性.遍历属性以及属性特性等内容. 目录 1. 介绍:描述属性的命名方式.查找路径以及分类 2. 属性的访问方式:介绍'.'访问方式.'[ ...
- Android ViewPager打造3D画廊
本文已授权微信公众号:鸿洋(hongyangAndroid)在微信公众号平台原创首发. 网上有很多关于使用Gallery来打造3D画廊的博客,但是在关于Gallery的官方说法中表明: This cl ...
- Struts2入门(五)——OGNL和标签库
一.前言 OGNL和标签库的作用,粗暴一点说,就是减少在JSP页面中出现java代码,利于维护. 1.1.OGNL 1.1.1.什么是OGNL? OGNL(Object-Graph Navigatio ...
- 5.2 Array类型的方法汇总
所有对象都具有toString(),toLocaleString(),valueOf()方法. 1.数组转化为字符串 toString(),toLocaleString() ,数组调用这些方法,则返回 ...
- BPM合同管理解决方案分享
一.方案概述合同是组织与组织间所订协议的法律 表现形式,体现着双方对于合作在法律和道德上的承诺.然而,大多数企业的合同管理都或多或少存在合同审批过程不规范.签订草率.审批权责不清.合同执行跟踪难.合同 ...
- iOS之绘制虚线
/* ** lineFrame: 虚线的 frame ** length: 虚线中短线的宽度 ** spacing: 虚线中短线之间的间距 ** co ...
- Android中BroadcastReceiver的两种注册方式(静态和动态)详解
今天我们一起来探讨下安卓中BroadcastReceiver组件以及详细分析下它的两种注册方式. BroadcastReceiver也就是"广播接收者"的意思,顾名思义,它就是用来 ...
- CentOS 7 安装出现 /dev/root does not exits 导致无法安装的问题
本人在官网下的是这个 CentOS-7-x86_64-DVD-1611.iso ,然后用UltraISO 9.6制作的U盘启动盘,不过在安装的时候出现了这个错误, 然后也是搜了好久,试了一下,下面这个 ...
- Android NDK debug 方法
最近又频繁遇到 NDK 的错误,记录一下debug调试的一些经验,以备后续查看 一般来说,在Android Studio中的Monitor中将过滤器的 LOG TAG 设置为 "DEBUG& ...