2015年的JavaScript:Angular之类的框架将被库取代


发布者 ourjs  发布时间 1417925329660
关键字 JS学习  JavaScript 
注* 本文表达了关于Angular和Ember这样的整体性解决方案将被更小更专注的library(库)这样的观点(有节选),之前的一些文章也表达过相似的论述:我们不需要JavaScript框架 , Angular.JS出了什么问题?

JavaScript的世界似乎进入了流失率危机。新框架新技术以不可持续的速度推出并流行。但我认为,社会将适应并采取新的响应式做法。我相信开发者将从整体性框架(frameworks),如Angular.js和Ember等转移到一系列小的,组合的,专业性库(library)上面,以减轻流失的风险,并允许解决方案,在不同的关注领域分别竞争。

让我来解释一下。

搅动


如果你之前并没有关注过<ng-community> angular社区,在2014年十月ng-europe (欧洲)会议上,Angular开发团队透露了一些有关Angular 2.0 显著更新的路线图。其中较具争议的是,NG2.0将无法与现有的Angular代码向后兼容。事实上,一些关键的概念将被搁置。Angular的开发将必须掌握一个全新的框架。

可以理解,这打乱了很多人。不管正确与否,开发者在在过去两年中如此努力获取的知识,方法,经验和代码,现在已经被随意弃用。更糟的是,更换甚至没有任何过渡。新开项目将在十二个月之后2015年末发布,反对者觉得,Angular2.0可能“生下来就死”了。

老实说,无论Angular团队在2.0版本做什么改动,我都会放弃它。强调离线功能,并放弃支持旧的浏览器让新的东西听起来很棒。

但这是一个烂摊子。语法看起来像狗屎,这与1.3之间的巨大差距意味着我们真正的就业机会,其中活了好多年的项目都打退堂鼓了。我不能告诉我的老板,我们需要建立一些不可思议的,重新规划的一些代码而已,没有新特性,直到18个月改写完代码以后。

by jbarkett, Reddit 上发表的评论

有很多不快的评论专门指向Angular和谷歌 - 有些是中肯的,有些或许并非如此。得最高票意见之一的帖子并不是关于Angular。它指向整个JavaScript环境:

正如许多人在这里看到的,时尚的Web开发,现在成为了一个笑话;我很高兴我找到了自己的方式。一旦你被迫对付这种没有意义的东西,你要么尖叫着跑出去或者去疯狂迷恋。它甚至没有碎片组合。我已经失去了对MV框架们的兴趣,我将框架定义为“使用Foo,Bar和Baz”的组合,其中Foo是你从来没有听说过的,有3%的使用份额的事件库;Bar是你从来没有听说过的,有2%份额的模板库;和Baz你从来没有听说过有1%的人使用的数据绑定库,使得组合有用?......我不知道,也许,作者在五分钟之后,就会切换到一个新的库。

我不明白。我不明白为什么有人认为这是一个好主意。我见过用这个东西所产生的代码,它真是令人难以置信的可怕,因为没有人有时间去了解,它在三十秒时间内所改变的任何东西。

by othermike, reddit  

Othermike的问题,在我看来,真的是客户流失的问题。有太多该死的JavaScript框架,它们改变的太他妈的快了。

两年前,JavaScript在灯火辉煌中庆祝自己的复兴,得益于一个迈向更现代化,更规范的浏览器(例如不是Internet Explorer)和Node.js的发展,作为一种用于前端构建的工具技术。新技术以不同方式出现了。只有12个月的时间似乎就成为事实,现代网络将以Backbone.js(也许用Marionette)为主,与Grunt作为任务驱动,Require.js和Handlebars作为基础模板。然而,半年过去了,这些技术都已经很明显被取代,就像blogosphere那样成为过去式 - 现在,到处是关于关于Angular,Gulp和Browserify。现在这个堆栈似乎也值得商榷了。

注* JavaScript构建(编绎)系统大比拼:Grunt vs. Gulp vs. NPM 


这种变化的步伐能否持续?

我很坦率地承认对我不断接触到新技术不知所措。

by noname123 HackerNews


创新是伟大的,但这种流失率似乎过高。作为开发者花费大量时间,去掌握新的框架和技术时,也不能保证他们的长寿。程序员要编写 - 他们想建立的东西。但当我们花大部分的时间在学习新框架上,如何才能做出点东西呢?当我们在摸索与不熟悉的高新技术,我们怎样才能像个工匠呢?

并非没有希望


现实是严俊的。但人是聪明的,开发者足智多谋,写出新的应用程序的基本要求是不让任何人放弃它。那么,我们该怎么办?

我觉得有我们可以总结出三个主要的经验教训:

  • 对新技术持谨慎怀疑的态度。将那些很酷的新的Github上项目投入生产要小心一些。等到到普及了再开始采纳。
  • 不要太相信大企业做的东西。谷歌做这种事情已经不是第一次了。他们的利益并不总是和你的一样。
  • 宁愿使用专用库来代替整体框架。当你选择了一个框架,你就做了了一个大的,长的承诺期限。您需要了解该框架内部各种运作方式和奇怪的行为。而你所掌握的东西。如果该框架被证明是错误时,你会失去很多。但是,如果你从库中选择,你能负担得起,库是可以随意更换的,你有足够的时间。

Libraries(库) > frameworks(框架)?


在Angular的争议发生后,Reddit上的另一篇文章问:JavaScript开发人员应该迁移到什么技术

下面是javascript程序应该做的:

React.js 和 Flux (一只有视图 view-only 的库和事件驱动模块)
Ember.js (MVC框架)
Knockout.js (视图库)
Backbone.js (MVC框架)
Meteor (同构框架)
Mithril (MVC框架)
Ember (MVC框架)
‘不要框架,只需要一堆库就可以了’
Vue.js (视图库)
Breeze.js (数据库Model-only)
Ractive (视图库)





回复 (22)
  • #
  • #1 戚页甘 1418395256975

    翻译的跟狗屎一样。

  • #2 龙区订 1419166979459

    vue不错。

  • #3 张马夸 1419313301657

    很有道理,顶一个

  • #4 shrek 1421454590576

    看上去很有道理,但是事情还是要继续做下去,只要选择了一个,坚持下去并改进就行了。

  • #5 卞百右 1421587866553

    mark

  • #6 邯郸第一美女 1421634870435

    一直以来都有这个顾虑,本来下定决心要开始去了解ag,结果就看到了这篇文章…………

  • #7 林甩土 1421647434824

    总是有一大堆需要学习的东西

  • #8 严观汇 1424949779733

    精力有限。大部分的框架意义不大。花很多时间学习。最后根本用不了。。还不如好好做Js本身应该做的。回归简单。Angular我看了。他的大部分你直接用Js就可以实现。我为什么要花那么多的时间来干不一定能提高效率的东西〉而且常用的功能就那些。基本自己可以写一个库用来自己用完全足够了。。

  • #9 吴瓦圣 1426164893187

    把时间用来学框架,我不如多看几遍犀牛书和蝴蝶书

  • #10 呵呵 1428991432498

    @严观汇 #7

    SB言论 大部分的语言意义不大。花很多时间学习。最后根本不好用。。还不如好好做汇编本身应该做的。回归简单。C语言我看了。他的大部分你直接用汇编就可以实现。我为什么要花那么多的时间来干不一定能提高效率的东西〉而且常用的功能就那些。基本自己可以写一个库用来自己用完全足够了。。

  • #11 柳无元 1429242623864

    @严观汇 #7

    同意!

  • #12 乐生勿 1441696487717

    @严观汇 #7

    angular本来就是给团队协同使用的,个人的话有更轻量级的框架可以选择

  • #13 啪啪侠 1443615059078

    学习是要成本,但是不学习就根本不知道,什么样的项目该用什么的技术架构;如果只是码脚本jq就够了,但如果是要成为一个架构师,必须通晓n种框架,n种技术架构,明白其优劣 ,再择优,择其最合适的给予构建;

  • #14 涂迈丘 1443716881803

    @吴瓦圣 #8

    赞同

  • #15 罗巾讽 1445843248271

    jasfasf asdfasf

    引用

  • #16 常斗乌 1445843284037

    好像作用和自己写,差不多

  • #17 丁交约 1449121477266

    这文章是用软件翻译的吗?呵——呵——

  • #18 何匹优 1451975679356

    @嚴觀匯 #7

    你寫過庫嗎?

  • #19 贺伞亿 1459436873465

    432435

  • #20 赛夏绝 1459922405526

    功能需求永远在增加,当框架不足以支撑现有的需求就会被淘汰,这是必然,或者说框架总会被淘汰,只是时间问题;但框架的设计理念永远有参考的价值,对于新手来说绝对有必要接触各种框架,了解各种设计思路的利弊,从而在搭建自己的项目时选择最优方案。把项目比作大厦,语言本身就是大厦的基础,框架就是大厦的骨架,是完整且稳固的。‘不要框架,只需要一堆库就可以了’,作者的意思是有足够多的砖头,只要不停地往上堆积,就能达到想要的高度?我只能呵呵了

  • #21 洪伟瓜 1502262656717

    hehe

  • #22 戚匀全 1520387108172

    这网站都是唱衰NG的?

微信扫码 立即评论