最聪明的 web 框架字符转义设计

David

特殊字符的转义(escaping)对于网页安全和用户体验至关重要,由于在 HTML 的不同位置,需要对不同的字符进行不同的转义,各种框架/脚本语言提供了若干个不同的函数,但是,这里要介绍的是 Go 的自带 Web 框架,它能够识别 HTML,自动的选择转义含糊进行正确的转义。

Go 语言是 Google 发起的开源项目,现在已经有大量的外部人员参与到开发当中,其中不乏中国的程序员。由于是一门新兴的语言,因此设计不少之前编程语言的经验与教训。为了适应当前开发的需要,Go 自带了 Web 框架:template。

template 的一个最大的特点就是会解析模板中的 HTML 语法,从而知道所要替换的变量在网页中的位置,从而正确的进行转义,下面看一段例子程序(边边角角省掉了,template 需使用 “html/template”):

t, _ := template.New("foo").Parse(  
  `<a title="{{.}}" href="http://example.com/{{.}}/hello?q={{.}}">{{.}}</a>` +
  `<script>var s = '#Hello? I\x27m David='</script>`)  
t.ExecuteTemplate(os.Stdout, "foo", "#Hello? I'm David=")
阅读全文
是时候抛弃Eclipse转向IntelliJ了

Loki(研发工程师)

2013年Google I/O大会,推出了新的Android集成IDE“Android Studio”,最大的转变就是从Eclipse切换到了IntelliJ IDEA

Google终于抛弃了Eclipse了
IDE是个大坑,不是谁想做就能做的,关键问题是做了也赚不了大钱。Google才不会吃力不讨好,搞Chrome可以给搜索带流量,搞Android能打击对手苹果,搞IDE能干啥?所以,Google需要只是一个集成的傻瓜包而已。让只有一个月Java基础的人,也可以直接下载了这一个傻瓜包,照着教程就能学习Android,而不是把大把的时候花在折腾插件上。

阅读全文
与有道技术经理面对面
                              —关于实习生项目
 
5月23日晚,有道两位管理层大牛来到清华的同学当中,就大家近来关心的实习生招聘事宜进行了沟通交流。这里我们整理了一些大家都比较关心的问题,与大家分享。希望可以在您的求职道路上,提供一点帮助。
 
如果您还有什么疑问,可以随时联系我们。对于大家普遍关心的问题,我们会持续更新出来。

嘉宾背景介绍:

王焱  惠惠网产品研发总监
2000年进入清华大学计算机系本科学习,2007年计算机系研究生毕业,进入网易有道工作。曾参与过网易将军令的开发工作,之后负责了有道博客搜索,有道阅读的开发工作,从2009年开始负责购物的产品及研发工作,先后推出了有道购物搜索,网易返现,有道购物助手,惠惠网等购物类的产品。另外还担任网易有道技术职称委员,产品职称委员和运营职称委员,对技术,产品和运营的人员培养和管理都有丰富的经验。
 
陈彧  有道DSP业务研发经理
2004年清华大学计算机系本科毕业,之前因NOI’99一等奖获保送资格。2009年清华大学计算机系博士毕业后,进入有道工作。曾负责计算广告系统架构的改进,以及用户行为定向广告的算法研发。目前带领团队开展实时竞价广告的产品和研发工作。
 
阅读全文
手机GUI自动化测试介绍

Xing Binbin(测试工程师)

摘要

众所周知,自动化测试可以一定程度上减轻测试人员负担,提高测试效率,并且通过自动化还可以实现可靠性测试和性能测试。对于移动客户端测试而言,如果我们能够让手机自动运行应用程序来帮助我们检测功能的正确性,会不会很酷?有道测试组对一些热门的手机自动化工具进行了调研,并选择了一些工具进行实际的使用。本文将会结合实际工作,对移动客户端(Android&iOS)GUI自动化的工具调研和实现进行介绍。

阅读全文
有道春季GEEK节-第二届HACKATHON活动

Fuyy

有道春季GEEK节暨第二届内部HACKATHON活动,在一派春意盎然的氛围中,圆满结束。

当今年1月举办首届HACKATHON活动时,在27小时内挑战自我,完成团队目标的活动形式,让参与者们高呼过瘾。冬去春来,延续了第一届活动的热烈气氛,第二届活动继续吸引了有想法爱挑战的同事们参与其中。

博客3

阅读全文
大数据实时更新框架

yumeng(有道开发工程师)

一、需求是什么?

互联网中的许多应用都有数据实时更新的需求,比如网页搜索如何展示几分钟之前的新闻结果,购物搜索中价格、库存信息的实时更新。在大数据量的情况下,数据如何做到稳定及时的更新?本文以有道购物搜索(惠惠网)价格更新为例,介绍一下数据实时更新系统的服务器端设计方案。

1.1 痛点之一:大数据

不管是网页搜索的时效性内容展示,还是购物搜索海量商品的价格、库存信息。都是单机较难承受的,同时,大数据对系统的可扩展性,以及运维的稳定性都提出了挑战。网页搜索是几百亿量级,购物搜索是几亿商品量级。

1.2 痛点之二:实时性

如果只是大数据,我们可以用时间换空间,传统的慢慢的批量更新就好。但很多实际应用,用户需要第一时间掌握最新的消息(网页搜索场景,分钟级别的最新新闻),用户可能几分钟之内就下单,需要了解当前最准确的价格和库存信息(购物场景,热门商品价格和库存变化之后,分钟级别的更新到前台)。实时性不可或缺。

阅读全文