订阅移动开发RSS CSDN首页> 移动开发

《近匠》Wijmo 5 CTO:从Web到移动,我的25年编程生涯

发表于2014-10-22 09:53| 次阅读| 来源CSDN| 0 条评论| 作者唐小引

摘要:《近匠》第64期,Wijmo 5是由GrapeCity旗下ComponentOne公司开发的新一代HTML5/JavaScript控件库。本期近匠采访了Wijmo 5 CTO Bernardo Castilho先生,听他讲述从Web到移动的25年编程生涯,以及Wijmo 5的开发故事。

Wijmo 5的控件拥有着非常丰富的对象模型,在我们其他平台已有控件的基础上,利用我们作为控件开发者的经验优势来减少客户的学习曲线。并且,我们还从Silverlight移植了JavaScript堆栈所缺失的类,其中就包括和MVVM应用关键接口ICollectionView相似的Control和Event基础类。

CSDN:这款工具做了多久?遇到过哪些坑?

Bernardo Castilho:我们用了一年的时间来开发Wijmo 5,整个过程可以说很顺利,但也遇到了一些挑战,而最大的挑战当属文档,我们渴望能够找到像JSDoc这样的工具来将代码注释编译进在线帮助系统,但却无功而返,最终,我们自己编写了一款能够从源码中提取注释并生成支持本地化的XML文件的工具。另外,还有一款专门用于将XML文件编译成Web页面一起汇成帮助系统的工具,这样一来,无论何时构建Wijmo,我们的帮助站点都能实现自动更新。相对而言,其他的问题则容易得多。

CSDN:Wijmo 5和Wijmo在本质上有哪些不同?与同类工具相比,Wijmo 5的优势在哪儿?

Bernardo Castilho:Wijmo 5与之前诸多版本的Wijmo存在着很大的不同,并且完全不相兼容,它包含了一系列截然不同的控件,不同的架构,最为关键的是,它不再对传统浏览器提供支持。与其他同类工具相比,Wijmo 5的控件体积更小,速度更快,并有着更为富足也易于使用的对象模型,整个Wijmo 5库也就300k大小,同类产品则通常比它大10倍左右,Wijmo的控件不是“widgets”,而是真真正正的控件,拥有着更棒的性能。

CSDN:关于Wijmo 5未来会有哪些规划?是否会考虑开源?

Bernardo Castilho:我们没有将Wijmo 5开源的计划,相反,我们会将Wijmo 5以一个极具竞争力的价格出售,并提供用户支持。对于Wijmo 5的未来发展,我们有一套路线图以及用户请求列表,在发布Beta之后,我们会将所收集到的信息汇总出一个优先级列表,根据它们来制定具体的实施计划。

CSDN:很多开发者关心,Angular与其他流行组件集成时是否会存在问题?

Bernardo Castilho:对于Angular的支持实际上是Wijmo 5开发的重点项目之一,我们热爱AngularJS,并在大部分的示例中使用了它,并且,我们还提供了指令来让使用带有AngularJS的Wijmo 5变得更容易。另外,对于控件本身,Wijmo 5还有一个CollectionView类,让使用AngularJS的MVVM开发达到XAML平台的水准。

CSDN:如果开发者想将项目从Wijmo向Wijmo 5迁移,该怎么实现?

Bernardo Castilho:从Wijmo向Wijmo 5迁移非常容易,如果开发者使用AngularJS和MVVM,那么就可以通过对控制类进行细微的调整并指令执行以旧换新操作,即可完成项目迁移。当然,我们非常乐于为用户提供迁移指导,在官网的NewsGroup版块就包含了Wijmo等主题相关的信息,对开发者而言绝对非常实用。


图:Wijmo 5代码截图

CSDN:在Wijmo 5的介绍中,有一块“真正的JavaScript控件”,可否具体讲讲它所指的意思?

Bernardo Castilho:从字面意思来理解,“控件”是指一个具备用户接口以及包含属性、事件、方法等的对象模型的可重复使用的软构件。大多数JavaScript库所提供的都是与控件极为类似的组件(Widget),只不过,组件的性能有一个单一却相当难管理的“Options”对象,并且,它们使用调用方法或附加事件处理程序的字符串,导致语法冗长又容易出错。

而Wijmo 5则完全不同,它实现了getter和setter等属性支持,拥有真正的事件和方法。所有的对象模型都是类型安全的,开发者可从IntelliSense和TypeScript编译器受益。最重要的是,Wijmo 5语法和JavaScript类一样简洁,代码更易于编写、阅读和理解。

CSDN:Wijmo 5控件是否可以根据设备或浏览器进行自适应?其通用性如何?

Bernardo Castilho:Wijmo 5控件支持包括手机、平板电脑、PC在内的所有设备,无论开发者选择使用哪种布局框架,都可以完美集成。比如说,我们大部分的示例都是用Bootstrap来实现自适应布局,这就确保了应用程序不仅可以运行于小屏设备之上,还能自适应,当然,有些示例还用到了其他框架,比如专门用于开发混合应用的Ionic。Wijmo并不提供布局服务,但无论开发者选择Bootstrap、Ionic还是其他任何CSS库,都可将其轻松集成到Wijmo中。

CSDN:Wijmo 5在中国有哪些技术支持?如果中国的开发者们遇到问题该如何寻求帮助?

Bernardo Castilho:我们将为来自中国的开发者提供一流的服务支持。我们的母公司GrapeCity在中国的上海和西安都设有分公司,关于Wijmo 5开发的许多工作都是在中国完成。如果来自中国的开发者们关于Wijmo有任何的问题,都可以在GrapeCity论坛提出,我们的开发人员一定会及时提供帮助。

CSDN:作为资深程序员,能否谈谈您对于HTML5/JavaScript技术趋势的看法?

Bernardo Castilho:在我看来,EcmaScript 5、TypeScript、AngularJS等技术的更新已经让HTML5和JavaScript成为应用开发最高效实用的平台。EcmaScript 5引入了最为重要的getter和setter属性以及SVG、Canvas、JSON等支持,而在此版本之前, EcmaScript根本不够强大。TypeScript也新增了许多关键元素,除了面向对象之外,还有能节省时间并提高代码质量的静态错误检查。AngularJS则提供了丰富的MVVM和Web组件,两者都是现代应用开发的关键部分,尽管AngularJS所具备的功能并不是独此一家,但它却是当下最流行的技术之一。

CSDN:近期在中国,有一个颇为热门的话题,就是Adobe关闭了在中国的研发分公司,仅留销售部门,其中很重要的一个原因就是对于国人而言,正版软件太过昂贵,就GrapeCity控件来说,你们是否会针对中国市场进行价格调整以适应中国国情?

Bernardo Castilho:我们曾就定价进行过许多内部讨论,大部分人认为目前的价格是相当合适的,而有的人则希望能够增加一个价格较低但有限制条件或减少支持的选择。对于中国的开发者,究竟该提供一个什么样的价位?关于这一切,我们仍在思考中。同时,根据我们在中国的业务团队的反馈,中国的企业用户非常重视技术服务,因此在中国市场,我们会提供本地化的技术支持,以及电话、邮件响应等增值服务,以帮助开发者获取更棒的体验。

CSDN:有没有想对中国的开发者们说的话?

Bernardo Castilho:我鼓励所有对HTML5和JavaScript感兴趣的中国开发者登陆我们的官网了解Wijmo 5,在这里,不仅可以下载Wijmo 5,还有视频、示例、文档、论坛等让你深入了解Wijmo 5。更希望来自中国的开发者们能够以英语或中文等方式直接与我们联系,获取更多信息,或向我们提出建议,来帮助我们将Wijmo 5做得更好!

相关链接:Wijmo的mobilehub主页


【《近匠》Ping++:简单、高效、第三方支付SDK】《近匠》第63期,Ping++是一款第三方支付SDK产品,可以为开发者节省支付环节的申请研发维护成本。本期近匠采访Ping++创始人金亦治,听他讲述创业历程和Ping++的产品之路。

【《近匠》不背单词,用“沉浸”征服英语学习】《近匠》第62期,不背单词是一款基于真实语境的浸入式单词记忆应用,通过“真实语境”的引入来提倡和强调“不死记硬背单词”。除了界面简约漂亮外,在设计上也突出了许多沉浸式体验的特性。

【《近匠》WRTnode创始人罗未:OpenWrt,下一个时代的Android】《近匠》第61期:OpenWrt在国内的商业化程度比国外更为明显,智能路由、智能家居、机器人等产品都获益于该技术,而且许多国内巨头正在扩充OpenWrt技术团队。罗未分析了其中的原因,并分享了对该技术发展的看法。

回顾更多内容及线下开发者活动信息,请关注mobilehub公众微信号(ID: mobilehub)。


寻求《近匠》免费报道,请私信:@CSDN移动,或发送邮件至mobile#csdn.net。