Country  china

开放才能进步!Angular和Wijmo一起走过的日子

Angular已成为广受欢迎的前端框架。去年9月份,期待已久的Angular2的正式版发布之后,Angular又迎来了新一轮热潮。伴随着Angular这一路走来,Wijmo一直都是第一个全面支持各种版本Angular的JS控件库,为Angular用户提供着最及时的表格、FlexSheet、图表、仪表盘、数据透视表等轻量控件,那么,Wijmo是怎么做到紧跟Angular步伐的呢?

2017.02.16 —— 开放才能进步!Angular和Wijmo一起走过的日子

回到上一页

2017年2月16日---Angular已成为广受欢迎的前端框架。去年9月份,期待已久的Angular2的正式版发布之后,Angular又迎来了新一轮热潮。伴随着Angular这一路走来,Wijmo一直都是第一个全面支持各种版本Angular的JS控件库,为Angular用户提供着最及时的表格、FlexSheet、图表、仪表盘、数据透视表等轻量控件,那么,Wijmo是怎么做到紧跟Angular步伐的呢?

Angular1时代

Angular1支持MVC或MVVM模式,提供模块化、双向数据绑定、语义化标签、依赖注入等等,大大的简化了前端应用程序的开发。Angular1一发布就引起了强烈的关注,尤其是它首次提出的“双向数据绑定”的概念受到了众多开发者的喜爱。

早在2012年,Wijmo就响应客户的呼声,发布了支持Angular1的版本,使得Wijmo成为第一个全面支持Angular1的控件库。

Angular2的Alpha版

随着Web技术的不断发展,为了解决Angular1中的问题,Google决定开发Angular2。Angular 2不是 Angular 1 的一次升级,而是一个全新的、不同的、更高级的框架。

这时,Wijmo团队就决定率先支持Angular 2,因为支持Angular 2已是众望所归。这使得开发人员很容易在在他们的 Angular2 应用中集成 Wijmo 控件。

Wijmo控件是纯JavaScript的,这也使得对Angular 2的支持更容易些,产品组可以为支持Angular 2进行很简单的包装,这样Wijmo 的UI控件也可以脱离Angular 2组件包装而独立工作。这是一个很大的付出,但是Wijmo做到了对Angular 2的率先支持。

Angular2的Beta版

历经了55个alpha版本之后,2015年12月份,Angular发布了beta版。意味着Angular2已经稳定。Beta版还是给开发者们提供了一个坚实的框架来构建他们的应用程序。

为了率先支持Angular,Wijmo开发团队和Angular开发团队展开了合作,Angular团队帮Wijmo解决了一些严重的问题。对Wijmo来说这是一个非常有趣的转变,从这个时候开始Wijmo就已经与Angular2保持了高度一致。2016年3月份Wijmo产品经理Chris采访了Angular的负责人Brad Green,一起畅谈Angular相关的话题,也见证了Wijmo和Angular的密切合作。

Wijmo采访Angular
Wijmo采访Angular

Angular2的RC版

2016年5月的NG CONF(Angular大会)在犹他州盐湖城举行,Angular团队结束了Angular2的beta状态,将其推进到了发布候选(Release Candidate)阶段。大会期间Angular团队成员登台,深入介绍了Angular 2,包括新的离线模板编译器,Angular CLI等。在第一天的会议上,Brad也介绍了支持Angular2的组件库Wijmo。

2016 Angular大会(NG CONF),Brad Green介绍Wijmo
2016 Angular大会(NG CONF),Brad Green介绍Wijmo

Angular2正式版

2016年9月15日,这对于Angular2来说是一个重要的日子,Angular2正式版发布了,在业界引起广泛关注。很多人认为Angular 2正式版有很多颠覆性的变化,是革命性。Angular 2系统架构中的核心概念包括模块、组件、服务、模板、数据绑定和依赖注入。

Angular2正式版

Wijmo在Angular2发布几个小时后就发布了支持Angular2正式版本的Wijmo。Wijmo为每一个UI控件都提供了Angular 2 组件。所有Angular 2组件都提供了完全声明性标记。对有需要的属性提供了双向绑定的支持,还对定制绑定和一些组件提供了附加功能,比如对FlexGrid中的单元格模板,可以允许用标签指明单元格的内容。Wijmo的Angular 2组件被封装为模块并且可以在Angular 2应用中作为NPM包被使用。遵循Angular 2团队设置的模式,在Angular2中使用Wijmo组件会感到非常熟悉。

Wijmo支持Angular2正式版

一切的合作,都以“开放”为基础

Wijmo率先支持Angular2取得成功后,不少媒体采访到Wijmo的产品经理Chris,试图探寻Wijmo和Angular 能密切合作的奥秘,归纳起来,主要是以下两点:

“首先,Angular 2团队的开发和路线是十分开放的,这也就保证了我们可以紧跟他们的脚步。

其次,当我们遇到障碍时,Angular 2团队也很乐于为我们提供支持。我们和Angular团队建立了良好的友谊。我们也很享受和他们团队一起工作。我很感激他们的开放和支持。“

事实上,在提供对Angular 2的支持时,也遭遇了一些挑战。最大的挑战就是需要提供深度集成。由于Wijmo创建了包装,还需要解决如何平衡Angular 2组件的作用和声明性标记,所以我们编写了大量的代码,来促使我们的控件能够完全的用标记的方式配置,还创建了具有Angular特性的功能,比如FlexGrid中的单元格模板。这允许客户编写自定制的标记,在表格的每一列中使用。

为了做到这样,产品组需要深度理解Angular是如何工作的,同时必须要使用其内置的APIs。我们和Angular 2团队一起工作,使用公共APIs,解决了这个问题。事实上,他们也增加了一些东西供我们使用。

无论过程多么艰辛,Wijmo 做到了对Angular 率先并且完美的支持,这一切就基于“开放”,两个产品组开放合作的心态,以及产品本身在开放和路线上的开放性。

关于葡萄城

葡萄城成立于1980年,是全球最大的控件提供商,世界领先的企业应用定制工具、企业报表和商业智能解决方案提供商,为超过75%的全球财富500强企业提供服务。葡萄城于1988年在中国设立研发中心,在全球化产品的研发过程中,不断适应中国市场的本地需求,并为软件企业和各行业的信息化提供优秀的软件工具和咨询服务。