我们应该如何追随技术的发展?

当今时代下,流行的IT技术可谓是“相当多”,可以说多到让人眼花缭乱的地步。技术更新迭代的如此之快,无论是对于程序员本身,还是公司来说,技术选型是应该什么为标杆呢?对于技术的发展,我们应该如何追随?

 首先和大家讨论一个问题,就是为什么技术更新迭代的这么快?

因为需求在变?技术没有好还之分,一个技术的红火,是因为他在恰当的时候出现了。如果当初没有C语言,可能还会出现X语言,如果当初没有Java,为了解决现实问题,可能还会出现其他等等。

需求是技术发展的驱动力。人们为了让计算机更好的推广,不再是实验室里少部分工程师能使用的机器,不再让机器语言作为人机交互的唯一接口,所以汇编语言诞生了;为了让与计算机交互的语言,更加的接近人类自然语言的逻辑,高级语言的需求,C语言诞生了。为了解决适应不同型号CPU运行的问题(虽然JAVA语言的设计初衷不是这个,但是他确实是因为这个特性得到推广的),号称可以一次编写,到处运行的JAVA携带着虚拟机就诞生了。

技术的发展也是为了使用市场的需求。当然,在网络不发达的时候是C/S模式的天下,那么比较流行的就是C,C++,Delphi等,当网络技术进一步发展后,人们开始逐渐发觉了B/S模式的好处与方便,于是一些列为了支持这类需求的语言开始火了,比如说 JAVA,C#,JavaScript等。并且带动了一系列框架的火爆,大家最求高自动化于是有了SSH,为了网页程序要绚丽,还少花费一些设计的人工有了诸如Ext.js之类的框架,之后发现B/S结构的程序页面设计的越来越复杂,还想最求B/S结构的程序,C/S结构的使用,有出现了one page的概念。随着电子商务的兴起,为了解决压力问题,又提出了微架构,业务分区等概念。为了挖掘大数据的价值,又出现了大数据的一些概念,包括区块链的概念也诞生了。

技术与时代的关系应该微小交替,大致上起头并进。微小交替可以理解成相互之间能够忍受的研发距离。需求微小提前可以促进技术的进步,技术的微小提前可以引导市场需求的前进。微小到什么程序,就是需求和技术之间的距离,实在可以忍受的研发周期内。这个就叫做大致的齐头并进。举个市场和技术不和谐的例子,就是早起的Java,就是Oak。当初他的诞生可不是为了我们今天的这个需求,他是为了解决家电智能互联,电视机顶盒的智能化。看到这里大家可能笑了。认为这个是一个多正常不过的需求,但是在当初的社会环境下,大家根本不了解你要干啥,他会把你描述的需求当成科幻。所以项目完工之后,由于硬件厂商缺乏生产热情,失败了!但是在当今的环境下,Android的出现和成功,有一次佐证了技术适时出现才有出路。

既然如此,我们应该如何选择技术,如何追随技术呢?

对于公司来说,要定位市场需求,以最小的成本,最大化的实现市场需求即可。

大家在日常工作中,总能听到:你这个技术落后了,你这个技术已经out了的话语。如果从现实问题出发,落后的概念如果解释为:无法满足现状的需求了。是比较准确的。比如你的架构不能适应你客户的高并发要求,你的技术不能适应用户全文搜索的需求。这个是落后的准确概念,也是我们技术跟进的唯一道路。如果仅仅是一味的求新就没有任何意义了。他有可能真是先进的,但是从成本角度考虑是有问题的(学习成本,市场产品功能点过多投放的成本)。

那么对于我们广大的程序员良好定位自己的行业,并不断的在解决行业问题的道路上前进。

对于新的程序员,首先要定位你致力于的方向,然后按照技术栈学习前进。对于老程序员,必须得切中一个行业的脉动,才会更有价值。为了解决这个行业问题,不断的提出你的解决方案。

作为IT人事来说,只要入行就要做好的准备就是终身学习。没错,因为T技术迭代的实在是太快了!今天出现一个新框架,明天出现一个新概念。一个好的技术或框架,刚刚掌握后,你一定会发现有很多不足。有一种想动手改的冲动。大家有没有思考这个是为什么呢?答案只有一个,就是需求在变。一提起需求来,有很多工程师自然会横眉冷对了。哈哈,这个可以理解,而且大家都可以理解。但是我这里说的需求不是项目或产品的需求,是现实世界发展对IT技术的需求。

举个小例子,最开始Hibernate出现的时候,作为一种救世主出现的,它声称能解放程序员对于数据库机械的操作,可以解放生产力。(注释:这里没有对那种框架有歧视性的看法,主要阐述本文观点,技术只有合适的,没有最好的。)但是在运用的过程中,大家发现了一些缺点,比如封装的过多,ORM配置复杂,复杂表关系处理不灵活。总结一句话就是太重了。这样的框架不是只有hibernate一个啊,例如前台的框架Ext.js也是因为体积较大,人们对他有太重了的看法。为什么会这样,就是因为他们的目标太大了,想做出一个通用的架构,并且想要能解决领域内所有的业务需求,所以他们才会那么重!

那么对于所谓的轻量级架构!我们除了赞赏他的体灵活之外,拿到手里的第一项工作就是什么?就是封装!为什么?还需要添加上一些自动化的东西,让自己家的程序员使用起来,不至于出现什么都需要自己做的体会。

正如有人所说,文无第一,武无第二。技术没有好坏之分。只有是否适合。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值