Filed under UI

对delicious和google notebook的比较

Delicious的强处在于清晰明了的UI设计,统一的风格(web和plug-in界面),背后显然有专业的设计,其他对手则是提供了功能而已。

现在的大多数浏览器都有内置的同步工具,如Firefox wave,Chrome sync,这些强大的工具能同步cookie, form data, history,当然还有bookmark。乍一看,Delicious危已。但是功能越多,内聚性越大,想要独立于浏览器使用也就更难了。chrome同步后能在换台电脑能在firefox上面访问这些bookmark么?手机上呢?所以不要那么悲观,这个小角落对于某些-可能是少数-的人来说则是迫切需要的。

在功能上,delicious的firefox plug-in有个书签列表菜单:“Recently bookmark”,这是我个人使用很频繁的一个功能,很可惜,在其他bookmark工具中都没有。

Delicious的保存书签的弹出对话框做的也很好,你可方便的选择tag,然后回车保存。

 

一般说弹出对话框是比较恼人的,但是很奇怪,这里的对话框我很喜欢。1)我要保存资料,弹出的对话框是对我的要求的积极反馈;2)UI得体,更重要的是操作快捷。你只需要写入tag(带提示),然后按回车即可完成这项任务,很有成就感。

但是Delicious的plug-in开发速度很慢,这个也要怪现在浏览器的“版本大战”。作为一个独立的书签管理器,跨浏览器是战略要低,不能丢失。

书签这种应用从技术上来说应该不难,大概就是数据库表的添删改查,也出现了很多这种类型的应用,然而这这种“小角落”里面“做的对”的却很少,能像Delicious重视和专一的更少。

Xcode开发感受

最近写了个iphone的小东西,对xcode也用了段时间,而我原来一直都是java环境下开发,比较起来两者差别很大。

最大差别是IDE对语言的支持。java在eclipse下可以即使的显示语法错误,而objective-c还的build一把才能看到,这个太影响效率。xcode下一个版本改进了llvm后会引入这个feature。eclipse的refactory的功能也很强大,这个在xp开发模式下是必须的,而xcode也没有这个东西。所以objective-c其实拖累了iphone,真是成也萧何,败也萧何。

java在exception情况下会给出详细的调用stack,而xcode的错误信息很少,空指针情况下提示更如天书一样,不清楚这个是语言的局限还是ide的无能。其实界面还是用约束毕竟少的语言,比如弱类型或者动态语言来开发,C和Java过于严肃,很小的错误都会导致程序崩溃,也缺乏灵活性,因为界面是千变万化的,预想好的模型在实际开发中并不能适应所有情况。

UI方面,xcode还是坚持用多窗口的方式,苹果好像对这个情有独钟,一个程序分成多个小的窗口显示,这中非独占式的模式在大显示器下可能有更好的互操作性,因为你可以任意的调整窗口位置,也更节省空间:独占式的会将整个桌面填满。但是有时候则很不方便,比如它的log是单独的窗口显示,大多数情况下这个窗口被代码编辑器(这是个大窗口)挡住,而任务栏上又看不到这个log窗口的图标,这时候想查看log就很不方便。

当然,Interface builder这里就显示了apple的强处,界面非常cool,特别是事件定义时采用拖拉的方式很是直观。Cocoa的界面是独立定义的,然后跟objective-c的类进行绑定(事件绑定和属性绑定)。Swing则是在code中定义界面,纯编程式的,这部分有些IDE可以代劳。

所以最完美的组合是:java + mac的UI库,或者java用javascript代替。当然,已经存在的东西就是不完美的,所以存在的东西就是完美的…..

Tagged

Chrome OS的字体

我是按照这里的方法BT下载了VirtualBox的镜像,很方便。把玩了会,没啥特别的感觉,virtualbox下运行的慢的很,也没有遇到说3秒钟进系统的奇迹…

字体,我只感觉Chrome OS下的字体显然较一般的Linux字体有改进,很明显。

chrome-font

显然用的是Droid的字体,跟Anroid下面一样的字体,Google一个字体用了两个位置,便宜啊。还有这个页面是scale放大过的,可以看到图片放大后还是很平滑的,比较而言,Firefox for Linux就必须很烂了。还有Chrome OS下面的freetype不知是否比linux下有调优,因为freetype的作者已经被google招到麾下了。

ubuntu-font

本来这些都是些细微的调整问题,包括字体,包括图片的缩放,Google只是做了个收集整理的过程。

事在人为啊。

XUL中的UI重用

XUL是Mozilla的界面描述语言,用来解决跨平台的问题。
XUL的Overlays特性令人感兴趣,其描述为:
Overlays are XUL files used to describe extra content for the UI. They are a general mechanism for adding UI for additional components, overriding small pieces of a XUL file without having to resupply the whole UI, and reusing particular pieces of the UI.
有点类似OO中的继承和方法重写。
一般来说,页面级的重用是比较困难的。JSF(组件级的重用)或者jsp tag只是重用了页面的一部分,开发起来也是费周折。