CSDN头版头条 《近匠》 Wijmo 5 CTO:从Web到移动,个人25年编程生涯

现年52岁的Bernardo Castilho先生是GrapeCity(中文名为葡萄城)ComponentOne公司的CTO,在与他的对话过程当中,充满风趣严谨和厚重的历史感。html

 

 

看成为年轻人的咱们崇拜着各式娱乐男神女神时,他的偶像倒是这个世界上最为杰出的科学家,从少年时代开始,编程成了他的兴趣爱好,并最终成为了他许以一辈子的职业。做为Wijmo 5开发团队的Leader之一,他是HTML五、JavaScript等众多技术的行家里手,在采访他以前,笔者特意在CSDN论坛上发起了一个问题征集的活动,接下来,就让咱们一块儿看看Bernardo Castilho先生就本身、团队以及Wijmo都回答了哪些问题吧。程序员

图:GrapeCity ComponentOne CTO Bernardo Castilho先生编程

CSDN:首先,请向咱们的读者自我介绍一下,能够分享一些您的小八卦。从业以来,有哪些印象深入的经历?从Web到移动,有哪些经验分享?浏览器

Bernardo Castilho:个人编程生涯能够追溯到少年时代,当时我使用的是一台45k内存的Apple II,我沉醉于这种能让一切事物变得格外简单的编程滋味儿。上世纪90年代初,当我编写出个人第一款适用于Visual Basic 1.0的自定义控件,这种爱好变成了我许以一辈子的职业。安全

一直以来,我都很是热爱阅读,若是必须选择一本的话,我会推荐侯世达的《哥德尔、埃舍尔、巴赫:集异璧之大成》,从严格意义上来说,它并非一本编程书籍,但它却涵盖了包括万物相连在内的诸多领域。我也有不少的偶像,好比阿基米德、伽利略、牛顿、高斯、冯·诺伊曼、艾伦·图灵等,但在个人生命中,我最崇拜的人是Turbo Pascal、Delphi、C#和TypeScript的创造者——安德斯·海尔斯伯格,我参加过他不少的演讲,他独到的看法与想法总会让我倍感惊喜。网络

在过往25年的职业生涯里,我有幸目击了Web革命的完整历程,从上世纪的一个天才想法逐渐演变成为今时今日人们生活中不可或缺的一部分,从向一个平台发布内容到一次编程到处运行的跨平台应用。于我我的而言,从Web到移动最重要的转折点是微软决定中止开发Silverlight,它让我看到了HTML5和JavaScript将成为将来的技术趋势。架构

从我涉足这一行业开始,一切都变得有趣起来,回首过去,人们发明了我的电脑和万维网,许许多多惊天地的事情对现实生活产生了剧烈影响。而今天,冒着像个老男人同样唠叨的风险,我看到不少年轻的孩子在iPad上浪费他们的大好光阴,而成年人则成日在Facebook等社交网络上刷屏度日,甚至还有的人在为他们的下一部手机该选个什么颜色而苦恼。固然,在此之中,仍然有许多有趣的事情正在发生,只是还鲜为人知罢了。对我来讲,EcmaScript 五、TypeScript、AngularJS以及Wijmo 5都格外地有趣,但愿会有更多的人喜好它们。框架

CSDN:请具体说一下Wijmo 5是什么?为何将其命名为“Five”?工具

Bernardo Castilho:Wijmo 5是新一代的HTML5/JavaScript控件库,采用最新和最受欢迎的技术,包含了开发可运行于桌面与移动设备之上的现代MVVM应用须要的全部控件和组件,而且,它再也不兼容任何传统浏览器,咱们仍然会继续支持并更新Wijmo 3,以便传统浏览器的用户还能继续使用。布局

Wijmo 5的“Five”实际上来自于EcmaScript 5。在Wijmo 5中有一项很是重要的特性,就是真正实现了对于getter和setter属性的支持,这是EcmaScript 5新添加的部分,也是Wijmo早期版本一直缺少的东西。

CSDN:请讲讲Wijmo 5开发团队的成员以及分工状况。

Bernardo Castilho:Wijmo 5团队的大部分人也负责其余的产品开发工做。咱们利用在各自擅长领域的专业经验来为各个类别的开发项目建立拥有最好品质的控件。

就我而言,我以前负责了从ActiveX、Winforms到XAML等FlexGrid全部版本的开发工做,而我在Grid方面也拥有着极为丰富的经验,并把它们带到了Wijmo 5 FlexGrid的开发中。Alex Trefilov是Wijmo 5 FlexChart控件的开发者,他一直负责XAML图表控件的开发工做,能够说是图表方面的行家。Tim Emanuel是咱们的主设计师兼CSS专家,他建立了Wijmo控件的外观和布局行为,以及可轻松新建控件主题的LESS文件。

Chris Bannon是Wijmo的产品经理,负责包括Wijmo 5在内的Wijmo全部版本的研发工做。Chris在Web开发、HTML五、JavaScript以及包括jQuery、SVG、Bootstrap、AngularJS、KnockoutJS等的全部流行JavaScript技术和控件方面绝对称得上是行家,他为咱们了解当下最早进的Web开发技术以及该如何开展研发工做投入了大量的精力。Alex Ivanenko是咱们的项目经理,负责包括构建过程、自动化测试、Bug管理及用户请求等基础架构工做。而Wijmo 5的全部演示示例则是由Raleigh Johnson来开发的,Nazim Turakulov是咱们负责交互层的开发者,主要包括AngularJS和KnockoutJS指令等。Kim Landis是咱们的技术文档工程师,主要负责文档、技术论文博客等的审校工做,确保全部信息都是简洁明确的。而市场经理Eve Turzillo则负责包括广告、视频、会议等在内的推广工做。除此以外,咱们还有一个分布在中美等国家的开发团队,同时负责Wijmo 3和Wijmo 5产品的开发工做。

CSDN:Wijmo 5的开发用到了哪些技术?具体的开发思路是怎样的?

Bernardo Castilho:2013年,当咱们看到经过EcmaScript 五、HTML五、TypeScript、AngularJS等全新的Web技术可以建立出像Silverlight和.NET中的那些工具同样强大的HTML工具时,咱们决定开发Wijmo 5。咱们想要建立一个这样的库,当咱们的客户习惯于体积更小、依赖性更弱的其余平台时,可以为他们提供拥有一样强大的功能及灵活性的控件。咱们使用到了jQuery,但不包含jQuery UI、Raphael、Globalize或其余的库。

咱们但愿这些控件可以充分利用HTML5随处运行的特性,所以,全部的控件设计都以可良好运行于移动/触屏及桌面设备为前提。

图:Wijmo 5设计草图

Wijmo 5使用TypeScript语言编写,它融合了包括类、继承等在内的面向对象编程全部优势,并编译成EcmaScript 5,从而实现可运行于全部现代浏览器。此外,TypeScript还提供了静态偏差检查,可以极大地加快开发速度并提供产品质量。

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 五、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 5中文官网:http://wijmo.gcpowertools.com.cn/5

Wijmo 5中文社区:http://gcdn.gcpowertools.com.cn/showforum-140.html

相关文章
相关标签/搜索