什么是mashup/widget/gadget?
来源:互联网 发布:淘宝手机怎么改评价 编辑:程序博客网 时间:2024/05/09 09:37
http://azhilin.spaces.live.com/blog/cns!363404581D2BCC35!645.entry
Widget/Gadget
Widget(微件)又称Software widget,是一个一个的小插件,或者小应用,是一种可重用的代码,通常暗含的意思是一种轻量级的相对简单好用的应用或用户界面。Widget名字的由来是“window gadget”的缩写[2]。Google确实称之为Gadget(小工具)。
依照Wikipedia Software widget的说法,widget分类很多[1],作为Internet用户而不是开发者,我们常用的有用于网页的Web Widget和用于操作系统的Desktop widget两种:
Web Widget是一种HTML代码,可以嵌入到网页上,举例Yahoo! widget,iGoogle Gadget,豆瓣API。Wikipedia web widget说又称为badge, module, webjit, capsule, snippet, mini and flake. DHTML, JavaScript, Adobe Flash。听起来绰号还不少呀。
Desktop widget是运行在PC 操作系统上的微件,例如Apple dashboard widget,Windows Sidebar and gadgets,Google desktop sidebar(Google桌面搜索侧栏)上的一个一个小应用,通常涉及到一个概念widget engine,即widget的运行环境。
从提供方(编程者)和消费者的角度看,Web widget分别如下:
提供方消费者HTML代码(如豆瓣API)拷贝HTML代码到自己的网页(例如博文),生成最终页面中的一个小插件。在iGoogle和My Yahoo!中以图形小窗口显示,用户可拖拉。
贴一个iGoogle的界面,其中的一个一个应用即widget/gadget,如“搜索浑天仪”、“读书新闻-新书信息”、“Google飙升热搜”、“日历”。
另外,博客上侧边栏显示的也是Widget. 比如RSS订阅, 分类, Tag标签,日历,最新留言列表,最新文章列表等等。[6]
Mashup
Mashup维基译为“混搭”,指整合网络上多个资料来源或功能,以创造新服务的网络应用程式。“混搭”一词源自于流行音乐将两种不同风格的音乐混合,以产生新的趣味的作法。暗含的意思是简单、快速的合成,通常用开放的API和数据源来产生更丰富的应用效果,可能与数据提供商的原始意图无关。
为了能永远的接入其他业务的数据,通常mashup是客户端应用或者在线应用。在过去几年里,越来越多的网络应用提供商开放API供其他软件开发者很容易地集成他们的数据和功能,而不是自己再开发一遍。通常Mashup被视作是社区软件social software 和Web 2.0的一个鲜明的因素。
我们举例来看,美国的房屋租售网[3]将craigslist网站的数据标在Google Maps上,看起来让craigslist的表项数据有生气多了。
在Mashup这种开发方式中,角色为数据提供方(mashup data sources)和接收方(the recipient of a mashup),从提供方和接收方的角度看,Mashup分别如下:
提供方消费者数据格式标准化(web-accessible),例如遵守WSDL, REST,RSS标准获取多个数据提供方的数据,用自己的方法重新处理、呈现。
Mashup这种开发方式不仅仅可以用于网站开发(web mashups)[5],也可以用于企业IT系统的开发(enterprise mashups)[5],这时是一种潜力巨大的商机[4],也涉及IT系统开发架构的课题SOA(Service-oriented architecture ),例如把ERP系统和CRM数据库系统和LDAP用户帐户系统的数据组合起来。此时Mashup有一些独特处[4]:
• 协同性(Collaborative) - Mashups数据被标上标签、可搜索、可共享。用户标签,常被称作“平常话”(folksonomy),使得用户为自己和别人注明含义。
• 聚焦“小型团队”(Focused on the 'pack') – Mashups常见的是为一小部分互相关联的人所创、所用、所共享。知识型员工在小范围内协同,尽管他们可能是大公司的一部分,当他们传播信息时,他们通常以小型团队工作。
• 时间敏感(Time-sensitive) - 用户现在就需要数据。Mashups通常有近乎实时传递数据的需求。他们没有时间等待IT来“预合成”数据供他们获取。网站是事实的,商务用户现在成长成在公司内也期望实时。
• 不新加设备(Non-invasive) - 因为Mashups在企业内部运行,没有必要新建一个基础设施,既指mashup数据源(数据库,SOA服务等),又指mashup目的地(IT门户、博客、wikis、email、表格等)。
• 数据清理简洁(Limited cleansing) - 数据的清理和格式化要与Excel表的操作量那么大。假如更大,需要在mashup提供之处就同时向用户说明。
• 用户界面(Have a face) - Mashups 通常有一个用户界面(有一张脸)并且这个用户界面是widget。就如同mashups 是“微小”(micro)的,mashup的前端应用也是微小的,如果用户是mashup的接收者,很自然要提供给用户一个与数据交互的方法。
终于的我们看到Mashup和widget的关联——Mashup是一种组合多个数据源的应用开发方式,其呈现给用户的交互界面是widget,简单、短小、形式丰富。
我们想象一下iGoogle上的“读书新闻-新书信息”可以这样做:对于widget提供方来说可以用mashup的开发方式去各个书店网站或书评网搜集数据,最终用widget应用发布给用户,供其嵌在网页上显示。
至于企业已有软件——CRM/ERP/BI/SFA等支持SOA的软件——如何做数据管理(governance)、划分数据颗粒(granularity)、确定数据范围(scope)来适应mashup应用,IT架构如何设计,是另外一个话题。
缩写:
WSDL(Web Service Definition Language)
REST(REpresentational State Transfer)
RSS(Really Simple Syndication)
CRM(Customer relationship management)
ERP(Enterprise resource planning )
BI(Business intelligence )
SFA(Sales Force Automation)
- 什么是mashup/widget/gadget?
- 什么是Mashup?
- 什么是mashup?
- 什么是Mashup应用?
- 什么是mashup?附案例:TaiwanRank
- 什么是widget?widget是什么意思?
- 什么是Widget
- 什么是widget
- 什么是Widget
- Widget技术_Google Gadget(3)
- Mashup
- Mashup
- Mashup
- Mashup介绍
- 浅谈Mashup
- mashup 技术
- mashup介绍
- mashup简介
- 如何遍历目录中的文件?
- 管道函數(pipelined)的使用
- 在 C# 中通过 P/Invoke 调用Win32 DLL
- 开博了
- Oracle 10g恢复意外删除的数据。
- 什么是mashup/widget/gadget?
- 行级锁定-邹健
- RTP/RTCP协议简介
- Android 的属性系统(翻译)
- pku 3304 Segments
- C++中单例模式对象的释放控制
- Android 的 system property service
- 一些感受
- Linux查看CPU信息、机器型号等硬件信息