一篇老文章 - 语言之争

这篇文章原来发在CSDN上,我的CSDN账号不知被啥原因封了之后,这篇文章就找不到了。今天在Evernote的笔记里偶然找到了,转发在这里。

Java和.Net选哪个?这是每一个菜鸟都必须要面对的问题。Java 可能是大多数程序员学习的第一个面向对象的编程语言。它最大的优势就是跨平台性。其实,在国内小型机当道的时代,Java 是唯一可以选择的开发语言,因为.net 根本不能在AIX 上运行。那么为什么国内以前会流行小机呢?这主要是中国人多,所以国内的网站对并发要求很高,所以很难用X86架构来支持高并发。其实,真正的原因是在国内以前软件开发大多是给企业做项目,而不是真正意义的软件公司为自己开发产品,在一个软件项目中,其实软件部分是很难赚钱的,真正的油水则是来自中间件和硬件厂商的回扣,所以软件公司也就不愿意做性能优化这种费力不讨好的事,而很乐于推销小型机,Oracle 这类油水很大的解决方案了。

而这几年,当我们国内的互联网企业开始崛起,开始开发自己的产品的时候,我们看到的则是像淘宝的去IOE ,被业界推崇,其实这并不是敏捷开发,云计算给我们带来了什么,至少我是这么认为的。

回到语言的话题,回到10几年前,那时候的微软数据库是个什么样子呢?问稍微老一点的管理员,特别是现在搞sybase的,他们一定会告诉你,微软的产品就是迪斯尼乐园。其实,十几年过去了,现在微软的数据库已经是今非昔比了。现在通过微软开发体系,是可以胜任大规模系统的开发的。

那么到底是Java 还是C#呢?其实从项目的角度,这并不重要。而对我们程序员来说则是天大的事。因为我们要靠他们吃饭啊。我个人认为,单从语言角度,C#优于JAVA是不争的事实。可以说微软在.Net 2.0 就已经完全达到了JAVA的高度,而后面的版本则是对JAVA的超越。

微软发展一直是本着“跟哥走,有肉吃的”节奏,随着版本的升级,微软为程序员提供了一切开发需要的包,程序员只要学会用它们就好了。在这种跟个走的环境下,我们看大多数基于.Net 的项目都是用微软的解决方案,而不是第三方的。同时,微软又是一个及其“好学”的公司,业界的新的工具,它都会很有心的为我们“抄”过来。

而JAVA的发展在SUN的带领下看似气势恢宏,实则畏首畏尾。这就促成了很多JAVA系厂商不得不自己拉山头了。这就造成了第三方框架漫天飞的局面。同时,由于JAVA语言本身进化缓慢,但是JVM相对开放,基于JVM的语言也就如雨后春笋一样了。

这样的发展使跟着JAVA走的程序员必须要花大量时间学习各种框架。可以说,不会使用一定数量框架的JAVA程序员自己都不好意思说自己会JAVA。同时,由于这些框架都是拉山头开发出来的,直接造成了很大的重复性,这就使程序员不但学习量大增,而且还要自己甄别框架的优劣。同时,大多数程序员可能还要在学习至少一门基于JVM的语言。还有选择和使用一个IDE, 这也就产生了Eclipse 与IntelliJ 之争,选择一个编译脚本,这也就产生了Maven与Gradle之争。搞Java 的人,我想都经历过配置开发环境的噩梦吧。

相比起来,微软在这些方面则是人性了很多。虽然Visual studio真的很大,但是装完了也就可以开发了。但是,微软的模式也不是没有问题,那就是微软的创新实在是太快了,跟这个哥走,实在有点累。且不说ASP到现在已经多少个版本了,也不说为什么.NET REMOTING刚看懂,它又搞了WCF还有后面的Web API ,就看一个sliverlight,说不要就不要了。可能是自己太笨了,要跟上微软的节奏,还真是挺累的。

那么作为屌丝程序员的我们,到底应该怎么办呢?其实我也不知道,呵呵。这几年,至少我是这么摸索的。首先,从自己内心出发,不参与语言之争,不要道听途说。新的程序员很容易挺老程序员的一句话就建立一个错误的观念。其实,作为新手,我们有的就是精力和时间,大可不必事事都请教,有些时候,撞了南墙才会记得清楚,学得明白。

第二,尽量可以找一个什么技术都可以接触到的公司。很多程序员工作几年之后就会钻进一个很小的技术领域,其实这样做对自己的职业发展是没有好处的。在软件开发这个日新月异的行业中,其实只有很少的几个技术是可以吃一辈子的,既然做程序员,就要认需要活到老学到老的命。那么,为什么要找什么技术都可以接触的公司呢?我们自己在周末自己学为什么不行呢?这是因为只有在工作中应用了的技术,我们才可以说自己懂了,自己会了。在周末随便敲的例子很难使我们达到学以致用的程度。

最后祝每个程序员都找到自己喜欢的语言:)。

P.S. 上面提到可以吃一辈子的技术,个人认为在这个排行榜中第一的就是Office了。做好PPT,你就是老板,精通Excel,你就可以在很多需要数据分析的行业成为大牛,熟练Access,你就是大多数人眼中最牛的DBA。只可惜自己对Office真的不是很感冒,所以只能做个屌丝程序员了。。。不过把Office推荐给希望找到一个可以一招鲜吃遍天的程序员。

时间: 2024-10-04 07:01:19

一篇老文章 - 语言之争的相关文章

还是一篇老文章 - 由软件升级想到的

最近一波WannCry病毒,把很多还在用XP操作系统的机构都搞得不是焦头烂额,就是人心惶惶.XP虽然成功,但是都这么多年了,微软早就说好不支持了,这个锅不愿意背估计还得背.今天在印象笔记中看到自己一篇2014的文章,写的也是关于软件升级的,文章早就随我CSDN账号没了,在这里从新发出来,也算应个景. 下面是文章全文: 这几天因为要用的到,对单位只有.NET 4.0产生了极大的怨念.在羡慕.NET 4.5的诸多新功能,和Visual Studio 2013的强大的Github集成之余,怨念为什么公

创新失乐园-一篇老文章,自己在网上发现,大家看看吧。不是技术

阿里妹导读:以深度学习为代表的人工智能在图像.语音和NLP领域带来了突破性的进展,在信息检索和个性化领域近几年也有不少公开文献,比如wide& deep实现了深度模型和浅层模型的结合,dssm用于计算语义相关性,deepfm增加了特征组合的能力,deep CF用深度学习实现协同过滤,rnn recommender 采用行为序列预估实现个性化推荐等. 工业级的信息检索或个性化系统是一个复杂的系统工程,深度学习的工业级应用需要具备三个条件:强大的系统计算能力,优秀的模型设计能力和合适的应用场景.今天

再来一篇装逼老文章:屏幕传输算法

仍然是以前写的一篇老文章,从其它站点拷贝回来的.此文写于07年,思想幼稚,特别是后期说教味道特别严重,仅供参考.另外,从Vista后,实际上操作系统已经在应用层提供了一个类似Mirro的接口,程序员已经没必要再自己进行变化判断了.============================================ 引用页:http://hi.baidu.com/cxmlqkoyadbekqd/item/4f3a361bdf32d28d89a9561b 老陈-为什么黑洞远程控制的屏幕传输算法是

由优劣语言之争引起的思考

由优劣语言之争引起的思考 #欲使其灭亡,必使其疯狂 昨天上午由阿里云中间件公众号和架构师小秘圈公众号发布的一篇文章<天天敲代码会使人变聪明么>在.net开发者中掀起了一阵巨浪,文章中提到的语言的先进与落后之争让基于.net开发者们义愤填膺,不少嫉恶如仇的开发者纷纷前往公众号去谴责作者的这种行为. 作为高级工程师和架构师圈子里有着出色影响力的优秀公众号,在公开场合发表这种充满意识形态的争议性文字,实属罕见,我觉得应该是小编未能注意到作者在正文的某个角落夹杂着的个人观点引起的疏漏.在读者在公众号后

前段时间一直不知道怎么学习,在网上找到一篇好文章分享给在路上的产品经理

如果你也是一枚刚入门的交互设计师,是不是常有这样一种感觉:不知从何下手,闷头读了一大堆书.学了一大堆软件.画了一大堆图之后还是感觉心里不踏实,总害怕自己还缺点什么,恨不得要有本<交互设计学习大纲>就好了.出现这个问题有两个原因,一是交互设计师没有可视性强的产物,交互设计师的产物一般是线框图.流程图.信息架构图.说明文档等等,但这些东西既不如视觉设计稿华丽精美,也不如程序代码高贵冷艳,在外行人看来初级交互设计师和高级交互设计师画的好像都差不多,轻易看不出你修炼到了几层功力;第二个原因是交互设计是

js查找一篇英文文章中出现频率最高的单词

下面这个函数是js查找一篇英文文章中出现频率最高的单词(由26个英文字母大小写构成),输出该单词及出现次数,不区分大小写,主要是正则的运用: function counts(article){ article = article.trim().toUpperCase(); var array = article.match(/[A-z]+/g); article = " "+array.join(" ")+" "; var max = 0,wor

jsp连接mysql----------第一篇技术类文章

今天做作业连了一天的mysql. 最后我痛定思痛,决定从0开始学习jsp,省的又面临不会的局面. 忙活了一晚上,终于把数据库连接上了,不过,好伤心啊,我连个数据库都这么墨迹... <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@page import="data.database"%> <%@page

转载一篇好文章

作者:熊 辉美国罗格斯-新泽西州立大学 记得我刚开始写英文论文的时候,感觉很棘手,效率也低,常常一个摘要就要写上两三天.现在我当了 8 年教授,写了一百多篇论文,逐渐可以快写这种“八股文”了.由于我现在身份转换了,也因为身为老师,要经常修改学生的英文论文,为了不让自己在修改论文时太痛苦,就常常思考该如何训练学生写好英文论文. 其实,发表出来的文章基本可分为两种:一种是属于看上去很美,但不能细看,细看就会发现一些问题:另一种是看上去很美,也真的很美,而且很耐读.如何写成第二种呢?学生写英文论文经常

[老文章搬家] 关于屏蔽优酷视频广告的一个方法

11年的老文章,稳重那个插件让我爽了很久,不过后来就买会员了.代码我已经遗失了,不过无所谓,思路还是明确的,我后来在 Chrome 上测试过,一样能用. ==== 正文 ==== 需求:优酷最近搞了一个广告防屏蔽,导致修改host的方法不能用了.我们需要一个新方法来绕过这个防屏蔽机制. 基本思想:新版的优酷flv player下载不到广告会罢工30秒,既然不能屏蔽广告,那我们就替换广告文件,用一个假广告文件让flv player播放. 实现:首先抓一下包,或者用Fiddle2拦截请求,会发现优酷