开发者沙龙05期北京站回顾:「持续集成」

对于持续集成,众说纷纭。有些人认为即使没有做持续集成,但是项目一样按时的完成,甚至提前完成,而且照样完成的非常理想,老板满意,客户满意。@more@认为持续集成在目前大多数的公司里都会有这样或者那样的使用。有的会选择一些Open Source的工具,如CruiseControl,Hudson,LuntBuild等等等等,有的会购买有更好服务,更强功能的商业产品,如TeamCity,QuickBuild等等,而有的会选择自己实现,如Cron+Ant/Maven/Make等等。

@yubolin 说,对于持续集成带来的好处:

  • 易于定位错误。也就是当你的持续集成失败了,说明你新加的代码或者修改的代码引起了错误,这样你很容易的就可以知道到底是谁犯了错误,可以找谁来讨论。
  • 及早在项目里取得系统级的成果。因为代码已经被集成起来了,所以即使整个系统还不是那么可用,但至少你和你的团队都已经可以看到它已经在那了。
  • 改善对进度的控制。这点非常明显,如果每天都在集成,当然每天都可以看到哪些功能可以使用,哪些功能还没有实现。如果你是程序员,你不用在汇报任务的时候说我完成了多少百分比而烦恼,而如果你是项目经理的话,那么你也不再烦恼程序员说完成了编码的50%到底是个什么概念。
  • 更加充分地测试系统中的各个单元。这也是我们常讲的Daily Build与Smoke Test相结合带来的绝大好处。
  • 能在更短的时间里建造整个系统。这点恐怕要你实施以后才能得出结论。就我们而言,持续集成并没有为每个项目都缩短时间,但却比没有实施时,项目更加可控,也更加有保证。
  • 有助于项目的开发数据的收集。比如说,项目代码量的变化,经常出错的Tests,经常出错的source code,等等。
  • 与其它工具结合的持续代码质量改进。如与CheckStyle, PMD, FindBugs, Fxcop等等等等的结合。
  • 与测试工具或者框架结合的持续测试。如与xUnit,SilkTest, LoadRunner等等的结合。
  • 便于Code Review。在每个build里,我们都可以知道与前一个build之间有什么改动,然后针对这些改动,我们就可以实施Code Review了。

4月8日13:30,HTML5梦工场 & 微软联合主办的开发者沙龙第05期北京场在微软大厦开启。本期开发者沙龙,来自微软中国技术顾问、Modocker技术总监、美团前端工程师、百度 FEX 前端工程师就将持续集成带来了自己的看法和一些工作上的经验。

开发者沙龙05期(北京)现场

@丁煜恒,(微软中国开发工具及平台事业部技术顾问。致力于推广微软人工智能Bot Framework, 微软认知服务Cognitive Services以及Cortana Extensibility 等技术的落地和实现)。

Bot Framework 是微软公司所提供的简化编写对话机器人的框架,直接支持Skype、Facebook Messenger、Slack、Kik、Office 365邮件等对话渠道,可以通过Direct Line与微信公众号相连。Bot Framework SDK支持C#与Node.js,整合了Microsoft Cognitive Services中的语义理解服务—LUIS, 帮助开发者建立更加智能的机器人。

微软认知服务 (以前项目牛津) 是微软发布的一组人工智能看、听、 讲、理解、搜索的 API和SDK。微软认知服务基于微软机器学习 API, 开发人员能够很容易地在自己的服务个应用中添加这些智能模块 — — 如情感和视频检测;面部、 语音和视觉识别;语音和语言理解。

丁老师说:我们的愿景是建立更加人性化的用户体验和更加高效的生产力应用。

丁煜恒(微软中国 技术顾问)

@Jasin Yip(叶俊星),美团酒旅前端基础设施组-前端工程师。知乎前端开发、 JavaScript 话题优秀回答者、清华大学软件工程系前端课程客座讲师。曾设计计蒜客全新的非覆盖式自动化构建系统,为计蒜客引入模块化、组件化和工程化的理念。

前端性能优化可能是大部分小型或初创公司都不会怎么考虑的问题,但是随着业务越来越复杂,代码构建和发布的过程可能会变得越来越长,用户加载页面的速度也可能会变得越来越慢。我们这个时候可能首先要面临的第⼀个问题就是静态资源加载太慢,以及在发布的过程中可能会短时间内导致静态资源与页面不匹配、造成用户感知的问题。

此次沙龙分享“我”是如何实现非覆盖式发布去解决这些问题的。

Jasin Yip(美团酒旅前端基础设施组-前端⼯程师)

@郝稼力,(Modocker 技术总监,国内最早的WebGL技术研究与普及者,HiWebGL网站创办者、第一套WebGL教程及书籍翻译出版者)。

WebGL本来是在制作AAA级游戏的雄心下诞生的,但是事情的走向并没有如其所愿。WebGL发生了什么?在例如WebAssembly、Web GPU等等诸多的压力下,WebGL将何去何从?WebGL 2.0会是WebGL的最后一个版本吗?WebVR能否拯救WebGL?本次沙龙就畅聊 WebGL的这些问题。

郝稼力(Modocker 技术总监)

@张博(百度 FEX 前端工程师,毕业于浙江大学,15年加入百度,现百度脑图负责人,百度 H5 开发者。平时关注 Web 图形图像方向)。

Web 应用开发的时候会遇到不同层面的解耦的问题,特别是开源项目。此外,如何将开源价值和应用开发结合,是一个值得探索的问题。本次沙龙将以百度脑图为例,和大家分享脑图的基本构架、业务功能的解耦以及两三点有趣的功能实现。希望能给不同层次需要的用户带来一些启发。

张博(百度 FEX 前端工程师)

互联网行业快速发展与变化,带动着技术的革新与研究。作为中国最大、最接地气的HTML5开发者社区。梦工场不忘初心,严选内容,以最优质的内容服务开发者。将持续在北京、上海、深圳密集开展技术开发者沙龙。

下一期开发者沙龙时间:2017年5月13日

地点:北京 · 微软大厦

更多内容请关注HTML5梦工场官网(http://www.html5dw.com/)
本次沙龙由“IT大咖说”全程独家摄像,同时也得到了图灵教育现场赠送书籍的大力支持。后续录像将在“IT大咖说”及 HTML5 梦工场微信公众号开放,请感兴趣的小伙伴登录公众号观看。