kukooBlog
look to the master, follow the master, walk with the master, see through the master, become the master.

August 31, 2005

为什么Eclipse RCP会rule the world

Posted @ 7:57 am+8 in Eclipse | Licensed under a Creative Commons License

Eclipse Foundation的首席执行官,Mike Milinkovich, 在他的blog (中国国内无法看到他的blog)中简单的说了一句:”I could not have said it better myself. RCP rules! ” Mike给出的是一个Eclipse RCP用户写的blog,写出了他所认为的“为什么Eclipse RCP会rule the world?” (原文如下)

  1. Web is not for everything :
    • All web based enterprise applications are failed in terms of usability
    • Web has limited flexibility in terms of adding innovative ideas; everything is limited within the JavaScript boundary
    • Even JSF+AJAX /ASP.Net+AJAX can’t become a desktop alternative, unless all the browsers replace JavaScript with Java
  2. .Net Smart Client Replacement
    • It has all the features of .Net Smart Client Architecture, including Update Manager and Avalon like XML based UI scripting
    • OSGi Framework based pluggable architecture
    • Unlike .Net Smart Client, it support all the available platforms including Windows, Mac, Linux, Solaris, etc
    • Also uses the SWT, a SWING alternative, which uses the native UI sub systems.
  3. Tools and Support
    • Comes with brilliant Eclipse IDE and Plug-in Development Tools to support the RCP application development. It took us only few mints to get the Hello World done.
  4. Its Java
    • world is full of java programmers, finding resources is not an issue.
  5. Above all, its Free.
    • The entire Eclipse Platform, IDE, and Platform Development Tools are available as Open Source.

简单的翻译了一下:

  1. Web 不是一切:
    • 几乎所有基于Web的企业应用最终因为易用性的问题而失败
    • 因为不容易加入创新的想法,Web有它的局限性;所有一切都局限于JavaScript的框框里面了
    • 甚至是JSF+AJAX /ASP.Net+AJAX 也无法成为桌面应用的替代方案,除非所有浏览器用Java来替换JavaScript
  2. .Net Smart Client 的替换方案
    • 它拥有.Net Smart Client架构的所有功能, 包括更新管理,类似Avalon的基于XML的UI脚本设计
    • 基于OSGi Framework 的插拔士架构
    • 不像.Net Smart Client, 它支持多种平台,如Windows,Mac,Linux,Solaris等等
    • 使用SWT, 一种SWING的替代方案, 但是使用原生的UI
  3. 工具和支持
    • 来自于Eclipse IDE并且有Plug-in Development Tools来支持RCP的开发. 我们只用了几分钟就建立了一个简单的Hello World
  4. Java的
    • 有很多的Java工程师, 寻找资源也不是一件难事
  5. 最后一点:免费的.
    • 整个Eclipse平台,IDE,PDE工具,都是开发源码的。

Yourit Technorati cosmos Refresh Technorati

用Eclipse的”synchronize”比较图片文件

Posted @ 7:19 am+8 in Eclipse | Licensed under a Creative Commons License

不知道这个是不是真的可行,因为没有任何文档来说明这个功能。 但是既然
有人写出来了
,倒是可以参考一下:通过Eclipse中CVS的synchronize功能,比较本地和服务器上的图片文件(见下图)

Eclipse显示出图片更新了,需要上传,而且做了比较

这个功能不常用,但是对于那些用Eclipse开发web程序,或者管理网站的,还是有帮助的。

Yourit Technorati cosmos Refresh Technorati

August 30, 2005

替Google Talk更换皮肤

Posted @ 11:20 am+8 in Blog | Licensed under a Creative Commons License
Google Talk 是不能替换Skin的,但是真有这么些人去hack Google的东西。
 
一个叫Sapiens Bryan的,自己做了三个Google Talk的皮肤,包括蓝色红色黑色,其中红色挺适合女孩子用的,黑色倒是很适合Windows Vista或者我自己的桌面(Batman Begins的墙纸)。更换皮肤的方法很简单,首先下载下来Sapiens Bryan提供的那个ZIP文件,解压缩,然后复制到Google Talk所在的文件夹覆盖原来的GoogleTalk.exe即可。
 

Google Talk Red Theme

 

帝企鹅日记

Posted @ 11:06 am+8 in Blog | Licensed under a Creative Commons License
 
从北京返回前,恰好看到电视中介绍这部法国的纪录片,所以就去买了一张DVD,只是被一句话所感动:历时14个月,在南极零下40度的恶劣情况下,拍摄的帝企鹅浪漫的爱情故事。
 
回到家,和Joy一起看了这部纪录片。 遗憾的是仍然还是法文的解说,中文字母也不太全。 但是看完以后,还是被这部唯美的纪录片征服了。
 
今天,又看到一个中文评论,让我又想再看一次这部纪录片。

05-08-28.gif

 

“和对声效的精益求精一样,影片的画面也是精美绝伦,每一帧胶片都在追求极致的视觉美感。我们可以想象得到这每组镜头后所耗费的精力——没有听话的演员、没有架设好的布景、没有预先设定的剧本,每一个成功的镜头之后是无数被摈弃的胶片——一个半小时的电影背后,是长达130小时的素材胶片。
  “我不知道有多少父母会因为影片中企鹅死亡的镜头而掩嘴惊叫,也不知道有多少孩子会因为影片中天敌海豹在水下追逐企鹅的画面而毛骨悚然,但影片真实的细节确实令人惊讶。”列顿认为,正是这种近乎残酷的写实让影片获得了全世界观众和影评人的喝彩。
  尽管整部电影力图还原动物世界的真相,但它又并不全然是一部纪录片。按照导演吕克•雅盖的说法,《帝企鹅日记》和《梦与鸟同行》之间最大的不同在于,后者只是将“很多漂亮的画面展现在你面前,”而前者则试图“讲一个故事,它有一个连贯的情节”。
 

让Eclipse使用Windows XP的skin

Posted @ 7:37 am+8 in Eclipse | Licensed under a Creative Commons License

在Windows XP下使用Eclipse,你会发现,Eclipse的UI(比如对话框中的按钮,toolbar上的按钮等)比较象Windows 2000而不是XP。

Eclipse上SWT的FAQ解释了这个问题,而且给出了解决方案:

  1. 首先找到你的Eclipse使用的javaw.exe。 最好的方式,是检查Eclipse的eclipse.vm环境变量的设置:Help->About->Configuration Details。 在我的机器上,是C:\Windows\system32\javaw.exe
  2. 然后,把这个文件:javaw.exe.manifest拷贝到javaw.exe所在的目录下面。
  3. 重起Eclipse(注意上下两幅图中按钮的式样)

同样的道理,如果你的SWT程序没有使用XP的skin的话,也可以使用类似的办法,不过,要把javaw.exe.manifest拷贝为java.exe.manifest才可以。

摘自于一份Eclipse Wiki。 由于重装了系统,发现了这个问题,所以google了一下,找到这个办法。

Yourit Technorati cosmos Refresh Technorati

August 29, 2005

Eclipse Plugin:Ant Explorer

Posted @ 3:18 am+8 in Eclipse | Licensed under a Creative Commons License

yWorksAnt Explorer是一个可以图形化Ant脚本,并且执行Ant Task的Eclipse插件。

安装

使用Eclipse的Update Manager来安装是最方便的: “Help” - “Software Updates” - “Find and Install.” - “New Remote Site” 中输入 URL “http://www.yworks.com/eclipse/update” .

Update Manager Update Manager Update Manager Update Manager

使用

在Package Explorer中,为Ant脚本(通常是build.xml文件)打开 yWorks Ant Explorer

Opening the visualization view

如果Ant脚本更新了,Ant Explorer会自动更新可视化的视图的。

Yourit Technorati cosmos Refresh Technorati

August 28, 2005

坚定信念,直面现实

Posted @ 7:48 am+8 in Blog, Life | Licensed under a Creative Commons License
“和斯托克代尔上将的一番对话一直浮现在我的脑海里,实际上这对我自己的发展也产生了深远的影响。  生活是不公平的 -有时对我们有利,有时不利。 在人生旅途中,我们都会经历失望和打击,经历‘无缘无故’的挫折,谁都没法抱怨。  可能是生病,可能是受伤,可能是一次事故,也可能是失恋,或者是在政治风波中下台,再不然就是在越战中被俘,被投入战俘集中营,关押长达8年之久。 斯托克代尔告诫我说,将人们区分开的不是困难有无,而是对待生活中无法避免的困难的态度。  在面对命运的挑战中,斯托克代尔悖论(你必须坚持你一定胜利的信念,同时还得面对现实中各种残酷的事实)被证明是极为有效的,它可以使你在遭遇困难之后不是变得软弱,而是变得更加强大 -不仅仅是对我而言,对于任何一个明白这个道理并加以实行的人来说,都是有效的。”
 
斯托克代尔悖论
坚持你一定会成功的信念,同时,要面对现实中最残忍的事实,不论有多大困难,不论它们是什么
 
 
摘自《从优秀到卓越》,103页。

 
[关于斯托克代尔上将]
美国海军上将吉姆.斯托克代尔,是越战期间“河内希尔顿”战俘营关押的美方最高军事指挥官。 他在战俘营中被关押了8年。 他一直坚信自己会活下去,而且会回到家人身边。 他说:“我从不对故事的结局失去信心,我从不怀疑我可以出去,而且会最终成功。 回忆起来,这要归功于我在人生的关键时刻不会出卖自己。”
 
在他获释后,他获得了崇高的荣誉,并且与妻子合著了《爱情与战争》。

 
其实我们不用去考究这位美国海军上将的“悖论”,事实上,在毛主席的《论持久战》中就提出了相似的结论:我们坚定会取得抗日战争的胜利,但是必须面对残酷的现实;我们已经度过了最初的战略撤退的阶段,而转入了长期的持久战阶段;我们需要用5到8年的时间来打赢这场持久战;胜利是属于人民的。
 
 
 

Top 5 Principles of Enterprise Architecture

Posted @ 3:12 am+8 in Programming, Patterns | Licensed under a Creative Commons License

上周在Colorado,Martin Fowler 和 Bruce Eckel 邀请了一些“大腕”级的人物,如Rod Johnson,Floyd Marinescu等,开了一个“座谈会”(现场的一些照片在这里)。 其中讨论到:“企业级架构最关键的原则问题是什么”。 这些“大腕”一共总结出来40条,然后投票得出了最关键的5条 (Top 5 Principles of Enterprise Architecture):

  1. Use a layered architecture.
  2. Build Automated Regression Tests, which was tied with:
  3. Manage your application as you would a software product. eg: frequent and numbered releases, same rigor as a product.
  4. Use the smallest team you possibly can tied with:
  5. Attack the domain problem first (or - work on your domain model before other parts of the app).

与之对应的Top Bottom 5则是(从后往前):

  1. Use Model Driven Architecture.
  2. Determine all your requirements upfront.

    and a three way tie between: (最后3个并列)
  3. Use EJBs.
  4. Prefer web based UI’s.
  5. Prefer open source projects.

Floyd Marinescu关于这次“研讨会”更详细的blog

Yourit Technorati cosmos Refresh Technorati

August 27, 2005

Eclipse icons

Posted @ 10:41 am+8 in Eclipse | Licensed under a Creative Commons License

如果你在开发Eclipse的plug-in或者RCP程序,你一定在为找到一些好的图标(icons)而犯愁。 也许你只是想找到一些icons而已,那么就到Eclipse里面找吧。 CodeHaus上的blogger,bwalding把大多数的Eclipse icon都收集起来了,你可以直接去下载,或者按照他blog中的方式,连接到Eclipse的CVS服务器上,定期的去抓取出来。 bwalding提供的shell脚本如下:

 1#!/bin/sh
 2
 3CVSROOT=:pserver:anonymous@dev.eclipse.org:/home/eclipse
 4export CVSROOT
 5
 6mkdir -p eclipse
 7cd eclipse
 8cvs -q co org.eclipse.debug.ui/icons
 9cvs -q co org.eclipse.pde.ui/icons
10cvs -q co org.eclipse.jdt.ui/icons
11cvs -q co org.eclipse.vcm.ui/icons
12cvs -q co org.eclipse.team.ui/icons
13cvs -q co org.eclipse.ant.ui/icons
14cvs -q co org.eclipse.help.ui/icons
15cvs -q co org.eclipse.ui/icons
16cvs -q co org.eclipse.ui.views/icons
17cvs -q co org.eclipse.ui.console/icons
18cd ..
19rm -f ~/public_html/eclipse-icons.zip
20find eclipse -name *.gif -print | zip ~/public_html/eclipse-icons.zip -@

或者,可以先到bwalding的blog上,看看所有的Eclipse icon是什么样的。

Copyright的问题呢?Eclipse是源代码开发的,而且使用的Eclipse License,类似于比较松散的Apache/BSD的方式,所以,应该没有问题的。

Yourit Technorati cosmos Refresh Technorati

Stack Trace in Eclipse

Posted @ 10:05 am+8 in Eclipse | Licensed under a Creative Commons License

很多的Java程序员(特别是开发Web程序的时候),通常在log文件中(比如log4j文件)查看Stack Traces的信息,然后在Eclipse中找到相关的class,再定位到Stack Trace提示的特定的代码行上。
 
Eclipse提供了一个非常聪明,也非常简单的方式协助从log文件中查看Stack Trace:

  1. 拷贝log文件的内容(含有Stack Trace的地方),Ctrl-C就可以了;
  2. 在Eclipse的Console View 中,在Open Console的下来菜单中,选择打开Java Stack Trace Console;
  3. Ctrl-V,把你从log中拷贝的Stack Trace复制到Java Stack Trace Console中;

好了,Eclipse给每一个带有行后的Java Class文件加上了超级链接,用鼠标点击,就可以打开相应的类文件了。

完美的解决方案。 摘自Vasanth Dharmaraj的blog

Yourit Technorati cosmos Refresh Technorati

Next Page »

Get free blog up and running in minutes with Blogsome | Theme designs available here