第三节 SWT和JFace的关系
不要觉得前面学习SWT是在浪费时间,觉得一旦拥有JFace之后就再也不用见到SWT了,事实上SWT决不仅仅总是简单的被JFace调用[1]。不但抽象会有漏洞,而且JFace也没有覆盖SWT的全部。尽管你沉浸在JFace当中,你仍然可以从SWT的知识中得到许多好处。
因为JFace使用了SWT,并且因为JFace是构建在SWT之上的,所以它需要SWT的JAR文件和本地库文件。也就是说,JFace应用程序需要SWT应用程序所需要的所有东西,再加上JFace的JAR文件。
在JFace程序中直接调用SWT,可能会让你的程序锦上添花,也可能会让你的程序挂掉。在有效并且合适的时候使用JFace的抽象,并且把SWT作为实现程序要求的退一步的依靠。
[1] 译注:原文是Lest you begin to feel that you've wasted your time learning SWT, that once you embrace JFace you'll never see SWT again, rest assured that SWT does more than simply peek its head through the JFace layer from time to time.