论坛首页 移动开发技术论坛

Palm webOS的SDK和emulator太漂亮了...

浏览 18726 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-05-02  
web os真的那么好吗?开发的前景怎么样?是不是很容易开发出好的应用?
0 请登录后投票
   发表时间:2009-05-02   最后修改:2009-05-02
关心Palm和Web OS者推荐耐心阅读本文---Web OS携Pre横空出世后很多人一直在期待的文字。
以下为全文,如果实在没有耐心或看不懂,着重看黑色字体特别是有下划线的部分即可---都在跳转后的全文内。

深夜。有人敲门。笃笃笃。。。打开门。
陌生人: 请问UGlee先生住在这里么? UGlee:我就是,请问您有何贵干?
陌:有件小事情想问您一下,方便么? U: 请进,我们坐下来谈。
落座,泡茶。
陌:我这儿有一张纸条儿请您看看。
纸条:
2003.06.04 Palm bought handspring 2005.09.09 Access bought PalmSource 2005.09.26 Palm release WinMo treo 2007.01.09 iPhone rollout 2007.05.30 Foleo rollout 2007.06.06 Elevation Partner buy 25% stake of palm 2007.08.07 Palm Announce Wind River Linux for Foleo 2007.09.04 Foleo cancelled 2008.05.28 Ed Colligan said 'Palm ready NOVA OS' 2009.01.09 Palm Announce Palm Pre and WebOS

U:嗯,这是过去纪念Palm的大事件,您想问什么呢?
陌:我想知道为什么Elevation Partner会投资Palm,在2007年的6月份。
U:哈哈,这个问题你该去问问McNamee,当年做出这个大胆决定的投资人。我这里有一段录像你可以看看 这里
U:你看,这个裤腰带至少有2公斤重的家伙说了一句很重要的话,他用"next big thing"这样的词语来形容Ed Colligan给他看的东西,当然,这话是Rubinstein说的。McNamee很信任这位被称为PodFather的重量级人物。McNamee 虽然也热爱技术,但是他并不是一个tech guru,在做投资决策方面他更相信Rubinstein的看法,甚至作为一个投资的条件,他直接让Rubinstein成了Palm的董事会主席。
陌:可是Rubinstein在smartphone领域并没有经验,McNamee为什么要选择这样一个人作为团队的头呢?虽然他曾经率领开发了 iMac,但那是一个desktop设备,他也开发了iPod,但那并不是一个一般意义上的计算设备;而Smartphone就大大的不同,你需要了解什 么是carrier barrier,什么是toolchain,怎样缔造一个开发者社区,还有硬件的使用体验,等等等等,看起来Rubinstein并不像最合适的人选。
U:你说对了一半。Rubinstein虽然没有开发smartphone的经验,但是他作为podfather,成功的打造了iTunes的商业模式,如果没有iTunes,iPod可能并不值得一提啊~陌:哦?你是说真正的重点是Palm目前还三缄其口的AppStore?
U:不能完全这么说,但是这肯定是很重要的一个部分。这里还有另外一条值得注意的信息
你看,在Palm的执行团队中,负责System Software的这个人,Way Ting,也不是原来smartphone领域的人。他之前的背景中,和Palm的新产品直接相关的,是他曾经创立Pictra,一个在线相册网站,在硅 谷有着良好的口碑。这个人的选择足以让人浮想联翩,Palm没有选择一个Linux专家,或者一个Java专家,或者一个其他什么开发技术的专家来负责核 心系统,而是选择了一个对webapp很有经验的人来作为他们的系统软件的开发负责人。
陌:嗯,是挺有意思的,这意味着Palm在整个平台构架上的核心贡献就在这里吧。
U:我想是的。Palm其实并不是一家技术公司,而是一家技术集成公司,把各种成熟的技术集成成为最终用户可用的产品或者应用或者服务,用他们的话说,这叫做end-to-end。
陌:Way Ting是在Rubinstein入主Palm时候才加盟Palm的吗?
U:根据我查到的资料,是的。Rubinstein进入Palm之后,招聘了至少150名技术人员加盟Palm,是Palm史上最大规模的技术人员扩充。
陌:为什么要这么多?
U:有很多事情要做吧,一个新的平台,即使构架使用开放的,内核使用购买的,也有大量的工作需要完成,除了设备上很多驱动和组件要写,还有开发工具,文档,还有Palm野心勃勃的网络服务一端。这个人数并不算多,McNamee还追加了1亿美元的投资给Palm呢。
陌:Foleo为什么会被砍掉呢?
U:不是很清楚,也许是因为Palm确实需要集中资源,也许是因为McNamee对Foleo的概念完全不感兴趣,也许是因为Foleo还不够成熟。你 看,在你的时间表上,也就是Foleo计划上市的前一个月,Palm还宣布Foleo的Linux内核换成了Wind River的。虽然对最终用户来说这也许不是问题,但是可以看出这个产品的上市其实是准备非常不充分的,有些赶鸭子上架的味道。
陌:哦?如果这样,那Palm为什么会在Mossberg的allthingsD上急匆匆的发布这款产品呢?
U:可能是缺钱缺急眼了吧,那个时候Palm已经在找大摩评估资产并四处联系投资人或者买家,Foleo的推出也许是Palm在做最坏的打算,如果找不到 投资人,硬着头皮也要推出一款半成熟的产品,看看能否带来一些好的现金流吧。可惜发布之后Foleo得到的反馈并不好,当然,如果McNamee没有投资 Palm的话,这款产品应该会如期上市,得到市场的检验而不是IT评论家的检验,可是没有如果。
陌:你对Foleo的取消感到惋惜?
U:有一点吧,不过取消了未必是坏事,Ed也说过也许有一天Foleo还会回来,如果新的webOS成功的话。其实从某些方面的应用上说,新的OS更适合 Foleo。当然,如果你那么怀念Jeff,你可以去看看他的新公司numenta,他们发布了那个传说中的HTM人工智能计算模型的开发工 具,windows, mac和linux版本都有。

陌:嗯,还是回来说正题,McNamee在决定投资3.25亿美金的时候,他和Rubinstein到底看到了什么呢?Palm Pre?
U:恐怕不能这么乐观的猜想,如果那个时候就看到了今天的Palm Pre,Rubinstein就不需要再招150个人了吧。
陌:那么,是webOS?
U:恐怕也不是今天的webOS,不然Foleo为什么会武装一个老式的Linux登场呢?
陌:那会是什么东西能被看做是next big thing呢?
U:具体是什么我也不清楚,Palm这次的保密工作算是做到家了,不过我可以提供一些线索。McNamee说他见到Ed的时候,Ed盛赞了 Blackberry Pearl,说那是他见到的最好的consumer electronics。在Foleo取消的那个秋天,Palm发布了Centro,是相当成功的产品。事实上那个时候Palm开始意识到,在 business领域,Palm已经没有翻身的机会了,它必须重新关注快速增长的消费领域的smartphone产品,才能找到新的突破。
陌:没错。
U:那么在consumer领域,最时髦的应用是什么呢?是web 2.0。YouTube卖了一个天价,在线的视频音频大热,Facebook, Flickr, Widget, delicious, stumbleupon等等,每天都在创造百万富翁。
陌:嗯,iPhone的大热也说明了这点。Mobile Internet被看做很好的发展方向。
U:但是Palm的工程师们也许认为iPhone做得还不够好。除去硬件设计方面的考虑,比如把Palm Pre装上一个Windows Mobile系统或者Android系统,然后加上一个webkit浏览器,这样就能打动McNamee或者Rubinstein吗?我想不能。
陌:对,那也只是得到了一个webapp。纯粹的移动浏览器技术,和平台并不沾边。
U:所以Palm的工程师们走得更远。他们考虑了当时在desktop平台上都算的上前卫的两个东西,mashup和offline browsing。
陌:怎么说?
U:Mashup的例子不算多,但是也有一些,比如你在Google Calendar上可以插入remember the milk的to-do list,google map目前也被用到了很多网站中,通过google提供的API。
陌:嗯。
U:Offline应用当时和目前都有两个技术可用,一个是google gear,比如google reader可以把新闻下载到本地离线浏览;另一个是adobe的air技术,最早这个技术叫做appolo,是可以在windows上离线使用一些应 用,adobe air在一些web 2.0的网站上有应用,包括salesforce, ebay等等。有些象你桌面上的yahoo widget,不过他们离线可用。
陌:哦,有些印象,我用过Google工具栏的一些小工具,note之类,还是蛮好用的。
U:我想这就是Palm的big idea,卖了3.25亿美金。
陌:啊?urh....这,Big是挺Big的,但是在Desktop上实现起来都很费力的东西,怎么在手持设备上完成呢?

U:这也许就是Open Source时代的魅力吧。首先,有一个linux内核,这个不麻烦。然后要有一个浏览器,webkit,现成的。然后要有一个本地存储的能力,这回 Palm没有现成的工业组件可用,但是它可以使用一个工业标准,HTML5。你可以看看W3C官方的文
注意里面的两个细节,一个是第五章,HTML5提供了本地存储能力,另一个是第六章的图形部分,HTML5的图形能力和现有的HTML比有很大的提高,当然,和直接访问硬件API相比还是有很大的差距的。
陌:听上去能做一些事情,虽然并不如老式的方法快捷。但这样的做法虽然对web应用很方便,可是本地应用怎么办呢?
U:这恐怕是Palm最幽默的一个地方了,答案是在本地假设web服务器。
陌:啊???
U:别惊讶,技术上,这是可行的。
陌:你是说本地程序都是通过浏览器完成?
U:也是也不是。说是,是因为整个系统的用户交互其实都是浏览器,说不是,是因为系统并不会给你这样一个感觉打开什么都要先打开浏览器。关于这个问题的详细解释你可以看看这篇Blog

陌:然后,嗯,本机的资源访问怎么办呢?HTML5里面没有定义的呢,比如键盘的背景灯?
U:本机资源的访问是通过扩展的Javascript API实现的,Web浏览器把这个API传递给一个应用服务器,一个AppServer。
陌:~!@#¥%......&*
U:BoyGeniusReport公布过WebOS SDK的截图,事实就是如此,不必惊讶。pikesoft在Blog上猜测有一个Java appserver跑在Pre上。 对这个看法我持保留意见。在webOS SDK中使用的是Jetty服务器和OSGi的应用服务器模型,都是轻量级的,但是在Pre上是否是通过JVM运行Jetty和OSGi应用服务器框架, 不一定,效率上不一定可行。SDK使用这两个东西是容易理解的,因为Eclipse本身就是Java的,而且是一个OSGi容器,Jetty可以作为组件 运行,这个toolchain的实现很简单。具体在Pre上,OSGi应该是有的,我的论据是Pre支持Sprint的Titan框架,而Titan是 Sprint版本的OSGi应用程序框架。但是Jetty,很可能被一个更高效的web server代替。
陌:呃,能简单解释一下什么是OSGi么?
U:嗯,对smartphone开发者来说,OSGi可能相对陌生。简单的理解可以把它看做是JVM之上的一个OS,因为JVM的设计只考虑了运行时,没 有考虑Java程序的部署、版本、依赖性、重用等诸多问题,那么OSGi作为一个容器就可以处理这些问题,这对于运营商的软件分发维护来说尤其重要,这也 是为什么Sprint会推出自己的OSGi框架的原因。类似的特性在J2EE中有,不过那个太重了,OSGi相对来说轻得多。如果你还想了解更多关于 OSGi的信息,我推荐你看看ORGi.org,另外还有一篇Blog比较了OSGi模型和Android的进程隔离模型的区别,在这里
陌:我大致明白这个webOS的结构了,一个linux内核,一个JVM,一个OSGi,一个AppServer,一个webServer,然后通过HTML5和扩展的Javascript进行开发。
U:完全正确。
陌:但是我还是不明白,既然有JVM,为什么不直接开放给开发者呢?
U:哈,那和传统的系统有什么区别呢?比如ANDROID或者Blackberry?
陌:为了保持系统的纯粹性?本地的程序和Webapp都用一样的技术开发?
U:嗯,这是一个方面,另外还有一个方面是,少提供了一个UI框架,比如S60/QT那种,省很多事儿。一套好用的UI系统是很麻烦的。
陌:还有别的好处么?
U:还有一个很有野心的好处,也是web UI和传统UI相比的独特之处,就是它对平面分辨率的适应性很好。HTML/CSS的LAYOUT有先天优势的,实现同样的效果,JAVA和.NET都要费不少劲,而且效率很差。
陌:你是说可以容易的支持多种分辨率?
U:理论上如此,肯定比传统UI省很多力气。而且别忘了,万一某天Foleo II又出现了呢?这个特点能派上大用场。

陌:现在我明白了为什么这个OS被叫做webOS了。
U:嗯哼,以及为什么Rubinstein称之为next big thing了。不谈用户体验,仅仅从系统结构上看,这个系统的结构对其webOS的名字来说是当之无愧的,抹平了本地应用和webapp的界限,具有离线 能力,而不是象现有的所有其他系统一样,从开发技术到UI系统都是大杂烩,对运营商来说,技术支持、软硬件维护都是很头疼的事。在这个意义上说,Palm 回到了它很多年前的口号上,simply amazing。
陌:嗯,那为什么SDK被成为Mojo SDK呢?
U:哈哈,我只有猜想,没有正确答案。
陌:说说看。
U:Mojo就是Bug啊~ 就像那个System Software负责人名字叫Way Ting,让你Waiting啊~
陌:~!@#¥%......&
U:呵呵,开玩笑。Mojo,我想Palm的意思是指它是一个crawler,在网络上爬来爬去--暗指它的Javascript应用也是在网上爬来爬去 的,比如你的地址本程序也许可以爬到Facebook上去取一些内容下来(Centro可是把Facebook应用作为卖点哦~)。也许叫spider更 确切一些,不过这个词儿没灵性啊~
陌:嗯,听上去,一场大戏正要上演呢~
U:哈,所以第一款机器叫做Pre哦,Prelude,序曲呀。

陌:现在我唯一担心的问题是它的性能了。
U:我也担心这个。不过从目前的资料来看,虽然系统不如老的PalmOS快,但是还在能接受的范围。Pre用的CPU,号称是和Intel ATOM的计算能力差不多的(clock per clock)。

陌:今天的最后一个问题,这个webOS的鬼主意,是谁最先想到的呢?Jeff Hawkins?
U:肯定不是,不然他肯定出现在Pre的发布会上,然后激动的说:this is the best idea I've ever had in the whole life.
陌:那么是Ed Colligan?
U:也肯定不是,Ed不是技术人员。
陌:那这个幕后英雄是谁呢?
U:我不知道。但是同样我可以给你一点线索。虽然这个想法听起来很前卫,但毕竟在Desktop上有类似的东西(Google Gear或者Adobe Air)。甚至在手持设备系统上,我也看到过类似的雏形想法。如果你去看一下Access发布的第一个ALP版本的系统框架,就可以看到其中有把 WebUI作为应用程序UI的做法。也许当年在PalmSource工作过的工程师们有人回到了Palm,并且把这个想法向前推进了一步。
0 请登录后投票
   发表时间:2009-05-02   最后修改:2009-05-02
昨天刚看过这个文章,今天lh老大就给我惊喜

————当时就担忧了,以后白菜又要掉价了。

一个linux内核,一个JVM,一个OSGi,一个AppServer,一个webServer,然后通过HTML5和扩展的Javascript进行开发。

本地的appserver和webapp,看来以后服务器端变成“ftp服务器了”,估计文件同步方式不是一次性的,应该是按需索取。

html++和js++,本地jvm。很好很强大。

这个对硬件要求不低,但是应该问题不大,硬件发展很快的。



不得不说,上面那个文章的想法很天才——商业策略合适的话,估计iphone和android要郁闷了。

__________________________
另外,期待lh用SDK证实上面那个文章的内容是否属实。
0 请登录后投票
   发表时间:2009-05-02  
这篇文章我以前也看过了。不过抽象了点。我希望能更白一点
0 请登录后投票
   发表时间:2009-05-02  
文章写得非常好, 最近没时间细看webOS的SDK, 迟点看看是不是有JVM和Jetty在里面, 当然还有OSGi.  最郁闷的应该是Android.  在Android上面开发UI实在是太痛苦了, 搞点animation还要写一大堆code.s

iPhone倒还可以, 独树一帜, 偶向来对Apple的创新能力灰常的敬仰.
他们可以很容易搞一个webOS出来在iPhone上面.
0 请登录后投票
   发表时间:2009-05-03  
lordhong 写道
文章写得非常好, 最近没时间细看webOS的SDK, 迟点看看是不是有JVM和Jetty在里面, 当然还有OSGi.  最郁闷的应该是Android.  在Android上面开发UI实在是太痛苦了, 搞点animation还要写一大堆code.s

iPhone倒还可以, 独树一帜, 偶向来对Apple的创新能力灰常的敬仰.
他们可以很容易搞一个webOS出来在iPhone上面.


嘿嘿,这样子说到可以理解多一些。android上的UI好像很难变成什么花样。
0 请登录后投票
   发表时间:2009-05-04  
HTML + CSS成为移动终端的UI开发语言,因为移动终端本身就是一个服务器,这个的确是big thing
0 请登录后投票
   发表时间:2009-05-05  
保密协议是不是也不准把sdk放出来啊?也想看看。
如果不可以,是如何申请内测的,有什么要求。对PALM的UI非常喜欢。
0 请登录后投票
   发表时间:2009-05-05  
太牛逼了,android将迎来最强悍的对手!
楼主能不能提供更多一些资料。
0 请登录后投票
   发表时间:2009-05-05  
檔主,幫忙解下這個問題唄:
http://www.iteye.com/problems/16169
0 请登录后投票
论坛首页 移动开发技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics