Angular 在最近(2017年1月6日)出了Angular 4.0.0-Beta.2,就是第二个beta版本的Angular 4了。而我一直心心念念想写的Angular 2的书才刚刚动笔。怎样一个悲字了得啊!索性还没写完,这下书也不用写了。本来灵机一动,想着改个题目,叫做Angular 4继续写吧,但又得知5、6、7版本也马上上线了。我现在在做Angular 2的书,那个感觉就像是:
真是抬不起头啊。
Angular这个神秘的团队是这样安排release的:

众所周知,这些版本号可不是一拍脑门就能定下来的,4.0.0,这三位数字各有各的意义。一般第一位都是breaking change,就是那种范伟变成了范玮琪的那种改变。这玩儿意连性别都不同了,能compatible吗?


我们这些整天辛辛苦苦的程序员最怕就是这种breaking change了,当年Python 2到Python 3的时候引起了广大人民群众海量吐槽,Angular 1到2也没有逃脱了宿命。你跟我说,现在Angular每半年就要搞一个要命的新版本,还让我们程序员下班么?
在宣布Angular 4的大会上,可爱的小哥特意跟大家说:哎呀你们发微博的时候可别吓着孩子们。


我看到这里,已经freak out了,难道我用了大半年写的全部Angular 2的代码就这样要被删掉了吗?正在我难过地要流泪的时候,小哥貌似看出了广大人民群众的心声,宣布了一个好消息,起码Angular 4是跟2兼容的。因为实在是版本太多啦,以后就叫做Angular,也不分1 2 3 4 5了。呼~既然是兼容的,我这颗悬着的心总算放下了。

但是等一下,请问为什么从2直接跳跃到了4,难道Angular团队只用2的n次方来命名版本号?但说不通啊,5、6、7都在啊!难道是有什么隐形关卡?
原因是,Angular 2这个framework有点大,core分了好几个libraries,都分别属于不同的npm package。所有的libraries本来都乖乖的按照一个方式命名,非得有个人要起幺蛾子,就是那个叫angular/router的货,人家都是2.3.0,这个幺蛾子非得叫3.3.0。
Angular团队本来计划好的Angular 3 就会有一系列的3.x.x加上一个4.x.x。估计是为了照顾router的情绪吧,决定全体改成4得了。原来并没有什么隐形关卡,失落。
你们期待新的版本吗?我写了个hello world,发现跟2确实差距不大,还挺欢天喜地的。
如果你期待新的版本,看一下这个安排吧:


我怎么感觉跟追电视剧似的。
延伸阅读

继续阅读
阅读原文