来源: 维基百科 HOA420 程序员们喜好嘲讽那潮流像阵风一样吹过的时尚界。裙子长短颜色款式总是来回在变,领带越来越窄,接着越来越薄。而在技术的世界里,相较于一时的风尚,严谨、科学、数理化以及精确才是王道。 不过这也并不是说编程就是一个没有趋势走向的行业。不同之处就在于编程的趋势是由更高的效率,越来越多的定制化以及更佳的易用性这些因素来驱动的。新一代的技术都是上代技术沉淀升级的结果。这是一种精益求精的过程,而非朝令夕改的奇思妙想。 如下是一份展示如今在程序员群体中比较热门和冷门的技术趋势清单。清单中所列不一定会得到所有人的认同,也可能有遗漏的。这也就是为什么编程会是这样一个无穷无尽的迷人领域: 快速的变化,激烈的争论,还有突然的峰回路转。 热门:预处理器冷门:全语言堆栈就在不久以前,人们在创造一种新的编程语言时还不得不构造一个将代码写到硅片中的环境。然后有人指出他们可以提前把这项工作完成。现在,机智的人们只需编写一个预处理器(将最新的代码转换成一组具有丰富的库和 API 的旧版本代码)。 像 Python 或者 JavaScript 这种脚本语言一直囿于小项目,然而现在它们是很多大型项目的基础。并且那些不喜欢 JavaScript 的家伙创造了 CoffeeScript,一个让程序员编程时不用纠结那些复杂的标点的预处理器。它有几十种以不同的方式预测语法的变体。 这些喜欢动态输入的家伙创造了 Groovy,Groory 是一个没有过于纠结标点的 Java 简化版。还有很多类似 Scale 或 Clojure 的语言,这些语言运行在 JVM 上,但是最多只能同时在一个 JVM 上运行。你可以在虚拟机上运行很多种语言。为什么还要重复造轮子呢。 热门: Docker冷门: Hypervisors这并不完全正确。尽管 Docker 容器比虚拟机的镜像文件小很多,制作它们也相对容易,也便于部署。但是 hypervisors 仍然有它的一席之地,很多 Docker 容器是运行在操作系统内部的,而那些操作系统又是运行在 hypervisors 之上的。 当开发人员可以使用 Docker 的时候,他们还是更倾向于使用 Docker 容器,这主要归功于 Docker 在部署过程中可以轻松地进行操作。聪明的公司例如,Joyent 已经在思考如何更多地挤掉多余的“脂肪”,能让容器在“裸机”上运行。 在数字商业时代,你需要灵活地抓住新的机会,也要更有效地维护好留下的遗产和基础系统。 热门: JavaScript MV* 框架冷门: JavaScript 文件很久以前,每个人都学习过用 JavaScript 来弹出一个 alert 框体或者用它来检查 email 地址中是否包含@符号。现在, HTML AJAX 应用已经如此成熟,很少有人会从头开始做这些工作了。简单地采用一个精心制作的框架,写一些胶水代码来实现一下你的业务逻辑就行了。 现在已经有了众多的框架,像 Kendo, Sencha, jQuery Mobile, AngularJS, Ember, Backbone, Meteor JS 等等,它们都是准备用于处理你的 web 应用和页面上的内容和事件的。 除了 web 应用。还有大量的旨在为智能手机或者平板电脑等跨平台开发准备的框架、技术等,例如:NativeScript, PhoneGap, 和 Ext JS 都是创建 HTML5 应用的选择。 热门: CSS 框架冷门: 通用级联样式表从前,向网页添加新元素就意味着打开 CSS 文件并添加一个新的命令,如 就像 SASS 和它的近亲 Compass 那样的 CSS 框架已经找到了坚实的基础。它们通过提供诸如实变量、嵌套块和 mix-in 等编程结构(如实变量,嵌套块和混合)来鼓励规范、可靠的编码。 在程序层中可能听起来并不新鲜,但它对于设计层来说却是一个重大的飞跃。 热门:人工智能/机器学习冷门:大数据自从“大数据”这个词火了之后,还没有多少人知道“人工智能”这个短语的意思,这可帮了销售人员一个大忙。他们正从人工智能中获得条件通过分析日志文件和点击流获得的数据处理算法升级“大数据”的复杂性。从 50 余年的 AI 研究中,我们得到了大量复杂的算法,相比以前,我们更有机会找出信号的噪声。从机器学习框架到认知计算再到 IBM 的“Watson”,都有工具去解决你的问题。每一种工具都提供了自己的只能水平,正是因为有了它们,我们才能做更多的数据分析和取证工作。 热门: 机器人学冷门: 虚拟现实(VR)只需几分钟,我们就进入了一个虚拟的世界:所有东西都是通过视频卡直接投影到我们的视网膜上。这种场景一定会发生,但是就目前而言,机器人学正处于爆炸式的发展中。每所高校都有机器人小组,而且各种机器正在闯入你你房子的每个角落。扫地机器人已经是旧闻了,无人机已经开始自由飞翔。 这意味着程序员需要开始思考如何编写代码来控制这些新机器。 从目前来看,这有点像为Raspberry Pi这样的轻量级控件编写脚本,但随着函数库的发展更加复杂,这一切都将会发生变化。 例如,就像许多机器人专家啃OpenCV(一个C语言的机器视觉平台)中的代码一样。这意味着新的规则,新的函数库,新的协议以及许多其他新的话题需要考虑。
热门: 单网页网络应用程序 Single-page web apps冷门: 网站 Websites曾记否,网址 URL 指向填满静态文字和图片的网页? 将所有信息放在称为网站的单独页面上是多么简单和精巧。设计团队将在网站地图上花费数小时的时间,并尝试使其导航更加简单。 新的网络应用程序是存储内容的大型数据库的前端。当网络应用程序需要信息时,它将其从数据库中提取出来并将其放置到本地端显示。这里没有必要使用构建网页所需的所有网络组件来标记数据。 数据层与呈现层和格式化层是完全分开的。另一个移动计算兴起的因素是:一个单一的、响应式设计的网页可以像应用程序一样工作,以更好地避免 APP 商店的混乱。 热门: 移动网络应用程序 Mobile web apps冷门: 本地移动应用程序 Native mobile apps假设您有一个移动内容方面的想法,你可以在 iOS、Android、Windows 8,甚至是 BlackBerry 操作系统或其他其他操作系统分开编写单独的版本。但是每个版本都需要一个独立的团队使用不同的编程语言编写。然后,每个平台的应用程序商店都会发出自己的版本,然后才能将应用程序发送给用户。 又或者你可以构建一个 HTML 应用程序,并将其放在网站上,这样就可以在所有平台上运行。如果有变动,不需要回到应用商店即可请求快速审核错误修复。现在 HTML layer 发展越来越快,也在更快的芯片上运行,让其能在复杂性和互动性更强的应用程序上更好地与本地应用程序进行竞争。 热门: Android冷门: iOS
|
|