第二天的演讲主要是围绕产品和软件架构等方面展开,有一些非常有价值的经验分享。
下面是第二天的几个演讲主题:
《人间网微社区产品创新之道》
曹晓钢
人间网共同创始人/CTO
微社区概念,人间网是一个内在是论坛,外在表现形式类似微博的社区。
演讲主题的创新主要体现在产品的体验设计上。演讲嘉宾给我们分享了人间网几次UI
的变更以及背后的理念。
人间网采用左右双帧结构,左边是你关心的人的近况,右边以多tab
形式打开的主题。整个网站大量采用了ajax
技术,实时推送数据。
《
淘宝开放平台基础组件介绍
》
岑文初
淘宝开放平台主架构师
淘宝开放平台(TOP
)
http://open.taobao.com/biz/index.php/%E5%B9%B3%E5%8F%B0%E4%BA%A7%E5%93%81
TOP
的主要职能:限流,授权,路由。
在设计平台基础组件架构的时候,要在安全、速度、和易用性上做综合评估。
当开放接口之后,api
的请求会比内部使用的时候大几个数量级,应用开发人员可能在开放的时候就调用接口做测试,所以架构设计的时候一定要考虑到这一点。
作为一个基础服务,TOP
的速度一定要快,为了提升速度可以采用一些优化的手段,比如当处理大数据量输入的请求时,要求客户端把验证信息写在http
头。服务端先验证http
信息,如果异常则直接返回错误。这样就不用处理body
里面的内容;当处理耗时间请求时,服务端可以先返回一个token
,客户端可以过后凭此token
再来请求结果;当返回大数据量的时候,也可以通过token
转发的形式,把传输数据的任务分派到资源服务器。总而言之,TOP
在处理请求的时候尽可能只处理核心的逻辑(限流,授权,路由),而把业务逻辑分给业务后端。
ppt
在此: http://www.blogjava.net/cenwenchu/archive/2010/12/13/340544.html
点评:
TOP
作为一个走在业界前沿的开放平台,在系统架构上积累了不少可贵的经验,对于开发大规模高性能要求的系统有很大的借鉴意义。
《大众点评网的LBS
应用之道》
王宏
大众点评网技术部系统架构师
LBS: Location-Based Service
,基于地理位置的服务。
移动终端开发时候遇到的一些问题:
1、
终端类型繁多,iphone
、ipad
、android
(各厂商)、nokia s60
等等,兼容困难。
2、
国家对于电子地图的牌照的发放。
3、
国家由于安全因素认为对地图造偏移量。
点评:
比起desktop
pc
,大众点评是一个更加适合移动终端的应用。移动终端的普及为大众点评网带来了巨大的价值、
《搜狗的产品创新之道》
杨洪涛
搜狗桌面事业部总经理
创新的经验:
1、
做用户根本需求的满足
2、
创新约等于失败
3、
持续模式
4、
产品创新与用户基础并重
5、
目标定义清晰
6、
尊重创新(反对抄袭)
《淘宝数据可视化》
赵昆
淘宝技术研发部-
数据产品
数据可视化,英文是Data
Visualization
,可以这样理解,通过图形化的方式将海量数据的复杂关系以及价值展现出来。
原始数据 → 表格 → 图表 →
数据可视化,每一步都加入了数据提供者对数据背后逻辑的理解和提炼。原始数据是不含任何主观因素的,表格是对原始数据做了归并和排序,但是缺少直观的表现形式,图表则通过对象之间形状的对比,感性的表现出了数据变化的情况。和图表相比,数据可视化的表现形式更加多样,不仅仅是柱状图,饼状图,可以是任意的形状和颜色的搭配,比如树杈,水滴等等。
数据可视化比起图表来说,更加体现了设计者的主观想法,要求设计者对于数据业务的逻辑更加清晰。使用者看到图形就能知道某个业务目前的情况。
ppt
在此: http://www.tbdata.org/archives/1239
演讲实录在此: http://news.csdn.net/a/20101210/283432.html
点评:
数据可视化实际上有是“态度”的,提供了对使用者的建议。而这方面正是我们目前数据展示所欠缺的。
《异步编程模型的演变》
赵劼
盛大创新院研究员
异步编程模型的应用范围:分布式计算、UI
编程、任何需要消耗大量时间的环境。
传统编程模型在处理一个耗时动作的时候,会等待处理完毕才返回,浪费了时间。而异步编程模型则是实时返回,由“耗时动作”执行完之后自己再找回调用者。
但是异步编程由于调用逻辑比较复杂,所以导致不能“顺序”的编写代码,带来了很多不便之处。所以在语言或者框架范围提供一个解决方案会给开发人员提供很大的方便。
ppt
在此: http://www.slideshare.net/jeffz/async-evolutionfull?from=ss_embed
点评:
网页端的javascript
是典型的异步编程模型,演讲嘉宾提供的思路对于优化javascript
编程模型非常有帮助。其实后台查询数据库等、操纵文件操作也是相当耗时的操作,目前已经有针对后台io
的异步编程框架了,能够有效的把串行等待时间充分利用起来。
《领域语言(DSL
)的设计与实践》
蔡学镛
创新工场首席布道师、软件架构师
所谓领域专用语言(domain
specific language /
DSL
),其基本思想是“求专不求全”,不像通用目的语言那样目标范围涵盖一切软件问题,而是专门针对某一特定问题的计算机语言。
因为“不通用”,所以领域语言可以设计的只针对目标领域的行为和场景,非常类似自然语言。比起通用语言(java
、c
)来,领域语言由于封装了实现,所以更加适合人类阅读和组织,在编写事也不会产生低级错误。
DSL
的生成方法有:
1、
自己写parser
2、
使用通用语言的扩展,比如scala
、ruby
、javascript
都有扩展机制
3、
使用代码生成工具
点评:
DSL
相当于对业务的提炼,当业务需求非常多变的时候,使用DSL
能够有效的防止疏忽所导致的错误。同时也使得业务逻辑够浮于表面,甚至业务专家也能自己编写。
《REST
与面向资源的Web
开发》
李锟
阿里巴巴集团B2B
子公司技术专家
REST
是一种分布式架构风格。web
是rest
的一个应用。它的主要特征基于以下3
个方面:
1、
uri
标示了一个资源
2、
http
提供了修改资源的方式
3、
html
、xml
、json
等 是资源描述的载体
通过以上3
个前置,我们就可以在分布式的环境下获取或者修改某个资源而不依赖于对方具体实现。
http
的方法:
get
(获取):安全的、幂等的
delete
(删除)、put
(修改):
不安全、幂等的
post
(增加):不安全,不幂等
所谓“幂等”,就是这个操作执行多次的结果不变。比如重复删除某个资源的结果和执行一次删除某个资源的结果是一样的。
目前我们对http
的误用,使用post
方法代替delete
和put
执行删除和修改操作。post
和put
的区别打个比方就是,post
是把a
加10
而put
是把a
加到10
。所以我们一般执行的修改操作实际上都应该用put
而不是post
。
点评:
我们在web
开发的过程中,其实对于http
的使用一直是存在误区的。在开发过程中多了解一些规范,多吸取专家的经验能够使我们的思路更加宽广,做的系统更加健壮。
分享到:
相关推荐
网络安全等级保护2.0时代——网络安全防护体系(等保与关保)
【标题】2010上海2010SD软件开发2.0大会是关于软件开发领域的一次重要会议,聚焦于软件开发的最新趋势和技术。这次大会可能探讨了如何利用现代技术来提升软件开发的效率、质量和可维护性,特别关注了"软件开发2.0"的...
[SYAH]网络安全等级保护2.0时代——网络安全防护体系V2.0 详细讲解等保2.0和等保1.0之前的区别和变化
数字经济系列报告之一:数字经济2.0报告——告别公司,拥抱平台.pdf
can总线的规范 V2.0 版本 随着串口通讯进入更多应用领域,因此,在一些应用里,需要对通讯功能的报文识别位提出分配标准化的要求。
标题与描述中的“破解msg2.0法——简单易学啊”及“简单 易学 随便看看就会了 不过要用在正途啊”表明了文章将介绍一种易于理解和学习的方法,针对的是msg2.0数据库的解析或操作技巧。这涉及到IT领域的数据管理和...
#### 二、USB 2.0规范的发展背景 USB 2.0规范的发展主要基于三个方面的考虑: 1. **连接PC到电话**:随着个人电脑功能的增强以及电话通信技术的发展,用户对于通过PC进行电话通信的需求日益增加。这促使USB规范...
征服ASP.NET 2.0 Ajax——Web开发技术详解(光盘资源) 由于比较大,分成5个包,请一一下载到同一目录下,然后解压缩第一个包即可
【永恒论坛2.0源码——做论坛参考】 在IT领域,开发一款论坛系统是一项常见的任务,它需要深入了解用户交互、社区管理以及技术实现。永恒论坛2.0源码为开发者提供了一个很好的学习和参考平台,帮助他们快速理解和...
ASP.NET 2.0开发详解——使用C#.part10.rar 共16卷
《征服ASP.NET 2.0 Ajax——Web开发技术详解》这本书是针对ASP.NET 2.0框架下Ajax技术的一部详细教程。ASP.NET 2.0是微软.NET Framework中的一个强大的Web应用程序开发平台,它提供了丰富的服务器控件、数据绑定机制...
根据提供的信息,《征服ASP.NET 2.0 Ajax——Web开发技术详解》这本书旨在全面介绍如何利用ASP.NET 2.0结合Ajax进行高效、现代化的Web开发。书中通过丰富的示例来帮助读者掌握这一领域的关键技术。 ##### 运行环境 ...
ASP.NET 2.0开发详解——使用C#.part02ASP.NET 2.0开发详解——使用C#.part02
ASP.NET 2.0开发详解——使用C#.part04ASP.NET 2.0开发详解——使用C#.part04