博文
破解SWT-Designer (2006-06-30 19:43:00)
摘要:破解SWT-Designer
SWT-Designer是一个Eclipse的插件,用来使用SWT开发用户界面,本文将介绍如何破解这个插件。在网上有SWT-Designer的破解,注册机是swt.designer.pro.2.keygen.zip,是用来注册swt-designer2.x的,但是其他版本,这个注册机就不一定好用。我试验了多个Eclipse,最后终于在Eclipse2.1.3,Eclipse3.0和Eclipse3.1M4上都能使用SWT-Designer3.x。操作方法: (Eclipse 3.0, Eclipse 3.1的做法与Eclipse 2.1同。)1、解压swt.designer.pro.2.keygen.zip后,在Eclipse2.1.3(或者Eclipse3.0)目录下找到swt.jar 和swt-win32-2135.dll(依Eclipse版本而定)2个文件,拷贝到swt.ui.bat所在的目录。2、修改swt.ui.bat,如这样:start javaw -cp SWTDesigner_2.0.0_Keygen.jar;swt.jar swtdesigner.keygen.SWTUI3、执行swt.ui.bat注意修改Designer Type :WindowBuilder(SWT and Swing)Version:3.00 (与你的swt-designer的版本同,如:4.2.1)然后点击“Generate”按钮。4、下载http://www.instantiations.com/swt-designer ... v3.0.0_for_Eclipse2.1.zip解压后 \Designer_v3.0.0_for_Eclipse2.1\plugins 拷贝到\eclipse2.1.3\plugins。5、启动eclipse2.1.36、打开window->Preferences->Designer->License ,点击按钮“Registration and Activation”->使用缺省,“N......
怎样在Eclipse中安装SWT插件(2006-06-30 19:39:00)
摘要:Swr Designer 是一个很好的Eclipse的SwT界面开发插件包,SWT Designer 支持中文界面的组件拖拉操作,有了它界面设计就轻松多了。
SWT Designer的下载地址是:http://www.swt-designer.com/,不同的版本Eclipse需要相应版本的Swt Designer.Swt Designer 具体的安装步骤如下:(1)将下载的安装文件解压缩
(2)将解压缩后的目录plugins下的两个子目录复制到Eclipse的plugins 目录中。
Swr Designer 是一个很好的Eclipse的SwT界面开发插件包,SWT Designer 支持中文界面的组件拖拉操作,有了它界面设计就轻松多了。
SWT Designer的下载地址是:http://www.swt-designer.com/,不同的版本Eclipse需要相应版本的Swt Designer.Swt Designer 具体的安装步骤如下:(1)将下载的安装文件解压缩
(2)将解压缩后的目录plugins下的两个子目录复制到Eclipse的plugins 目录中。
其他常用插件:
(1)MyEclipse: J2EE 开发插件,支持jsp,ejb,数据库等操作。
下载网址:http://www.myeclipseide.com
(2)Lomboz:和MyEclipse同类插件。Lomboz免费,MyEclipse收费
下载网址:http://forge.objectweb.org/project/showfiles.php?group_id=97
(3)Far jar :项目打包插件,可以将项目支持包和项目本身打成一个包
下载网址:http://fjep.sourceforget.net/
(4)jinto:国际化插件
下载网址:http://www.guh-software.de/
(5)jasperAssistant:报表插件
下载网址:http://www.jasperassiastant.com/
(6)Implementors:提供追踪到方法的实现代码的功能
下载网址:http://eclipse-tools.sourceforget.net/implementors/
......
Java常见面试题(2006-06-30 19:32:00)
摘要:
Java常见面试题(含答案)
第一,谈谈final, finally, finalize的区别。 final? 修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载 finally?再异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话)。 finalize? 方法名。Java 技术允许使用 finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在 Object 类中定义的,因此所有的类都继承了它。子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。finalize() 方法是在垃圾收集器删除对象之前对这个对象调用的。 第二,Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)? 匿名的内部类是没有名字的内部类。不能extends(继承) 其它类,但一个内部类可以作为一个接口,由另一个内部类实现。 第三,Static Nested Class 和 Inner Class的不同,说得越多越好(面试题有的很笼统)。 Nested Class (一般是C++的说法),Inner Class (一般是JAVA的说法)。Java内部类与C++嵌套类最大的不同就在于是否有指向外部的引用上。具体可见http: //www.frontfree.net/articles/services/view.asp?id=704&page=1 注: 静态内部类(Inner Class)意味着1创建一个static内部类的对象,不需要一个外部类对象,2不能从一个static内部类的一个对象访问一个外部类对象 第四,&和&&的......
三谈多态——善用virtual(2006-06-05 23:45:00)
摘要:三谈多态——善用virtual作者:Nicrosoft(nicrosoft@sunistudio.com) —— 2002.4.30出处:东日软件开发网络(SSDN) http://www.ssdn.net 多态性,是一种能给程序带来灵活性的东西。看过《设计模式》的程序员应该都知道,相当多的模式(几乎所有)都是依靠多态来实现的,以此给程序提供可扩展、可重用性。在《再谈多态——向上映射及VMT/DMT》一文中,提到了多态性是依赖于虚函数/虚方法(即动态绑定)来实现的,也介绍了虚函数/虚方法(virtual)的实现方法。那么本文就来谈一下,如何使用virtual、善用virtual来获取多态性给我们带来的灵活性。 实例是最好的教材,因此本文还是假设一个需求,写一个实例来讲解。不过,我想没有必要给出所有源码,因此在本文中有些实现的代码会粗略带过。另外,本文所有代码均为Object Pascal语言编写,实现环境为Delphi。 另外,由于“方法(Method)”一词已经成为Object Pascal的术语,因此,以下称成员函数都为“方法”。也许C++程序员会不太适应这样的称呼(呵呵,我自己也不太适应),见谅吧。 假设我们要编写一个纯文本内的编辑器,也就是记事本(呵呵,别嫌例子老套,记事本程序在相当多方面都是很好的教材),编辑控件我们一般会用TMemo或TRichEdit,但是它们的功能都不甚强大,也许我们目前没有,但日后会找到一个更好的第三方文本编辑控件(比如,支持语法着色的)。因此,我们必须为未来的改进留下方便之门,否则到时候再重写全部程序真是太傻了。 界面层(菜单响应、状态显示等)对文本编辑器控件的控制的代码对于所有编辑器来说都是类似的,应该可以被重用。那么就必须将界面层的代码与编辑器控件的控制代码隔离开来。 如何隔离?我们可以为所有的编辑器控件指定一个公共的接口(抽象类),界面层只看得到这个接口,只使用接口提供的功能,那么,我们更换任何编辑器控件时,都不必更改界面层的代码了。 首先,抽象出编辑器的基本操作,如:Load(打开文本)、Save(保存到文件)、Copy(复制到剪贴板)等等,将这些操作作为public方法。其次,考虑这些操作中有哪些会涉及到具体相关控件的,对于这些操作,你有两种选择:1、如果完全依赖控件本身的,可以选......
MM使用体会(2006-06-05 23:33:00)
摘要:如果你是一个生手,mm众多的按钮参数会让你晕头转向。如果没有oo的概念,mm至多是一个好的coding工具。如果你既懂oo又熟delphi,并且足够懒惰,mm是个很好的选择。正如mm的资料所介绍,许多开发人员已经放弃了delphi的ide,直接在mm中进行开发。坦率的说,在uml方面,mm还赶不上rose,各种diagram描绘的不够精美,界面上的按钮也是花里胡哨,不尽合理,但mm强过rose的是mm不光提供了模型一种描述方式,而且还提供了object pacasl语言的实现。rose虽然通过转换包也能将各种diagram转换为程序语言但由于rose是个通用型的产品,需要照顾到各种转换语言,因此,在代码质量上不及mm。作为系统分析员,他感兴趣的是mm能够为他提供一种与实际编译语言结合非常紧密的建模工具。作为程序员,比如我,则最喜欢mm提供的对程序代码的精确的控制能力。在implementation面板中,我们可以将一个function中的代码分成若干段,然后上下调整这些段落的分布,如果将自动同步的功能打开,在delphi的ide中编写代码,保存后,mm会自动为你进行代码格式化,比如缩进,换行等。在delphi的ide中要增加一个属性或者一个事件,至少要写3、4个地方,而在mm中,一个对话框就全部高定了。还有许多懒人特喜欢的地方,,,,简单的说,mm是为那些懒惰的delphier准备的,用以成倍的提高编码效率和质量。当然,使用mm的一个基本条件是:你看到的不是代码,而是对象。不知道为什么,mm官方网站上提供的那个教程,只到第6章就结束了,第7-10章没有登出来,正看的过瘾,哪位兄台有收藏的,贡献一把,多谢多谢!mm很好,但是不知道delphi的将来版本会不会继续整合他,mm会被bold所取代吗,就象当初的teamsource。......
开源与知识产权(2006-06-03 23:44:00)
摘要:近年来,开源软件在国内外发展很快,正在走向成熟,开始与传统私有软件形成并存的态势,甚至在某些领域内成为主流。关于开源软件知识产权的纠纷也已浮出水面。在国内,也出现了一些违约、违法的问题,多数人首先在认识上存在误区:如对自由/开源软件性质和特征的界定,对开源软件各类知识产权保护法律规定的强度和范围的理解,对各种开源许可协议的内容或条款以及其解释的认知,在同时执行多项许可证时对各证间冲突处理的把握,对自由软件运动发展中迄今尚存的一些争议问题或在法律上出现的灰色地带在执行中的处置……等,存在着不少混乱认识和错误概念;必须指出,也确有一些造假、侵权、违法的行为和事件。
知识产权是法律赋予人们对智力劳动成果所享有的民事权利。 通常开源软件的知识产权表现在下列五个方面: 1. 著作权(或版权) 2. 专利权 3. 商标权 4. 商业秘密 5. 反不正当竞争
(一) 版权
自由/开源软件是一种有版权的软件,自由/开源软件是一种得到许可的软件。自由/开源软件许可协议(或许可证)是其版权实施的延伸。自由/开源软件采用“左版”(CopyLeft)的概念,虽然其“版权”也应考虑到保护“作者对其作品享有权益”的作用,但由于自由开源运动的本质是发扬“自由、开放精神”,把重点放在扩大用户的自由和权益方面,放在用户在再传播(或再发布)时得到扩大的许可授权方面,而不是把重点放在对作者特权的保护方面(如表现为不收版权费,任何人都可自由获得、复制、修改、发布原创作品的源代码,淡化作者的特权,甚至模糊可执行的“版权”,总之由原作者放弃自己的一些知识产权的权利,向公众公布许可等)。它不同于传统“......
开源协议介绍(1)(2006-06-03 23:42:00)
摘要:
Mozilla Public License
MPL License,允许免费重发布、免费修改,但要求修改后的代码版权归软件的发起者。这种授权维护了商业软件的利益,,它要求基于这种软件得修改无偿贡献版权给该软件。这样,围绕该软件得所有代码得版权都集中在发起开发人得手中。但MPL是允许修改,无偿使用得。MPL软件对链接没有要求。
BSD开源协议
BSD开源协议是一个给于使用者很大自由的协议。可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。 当你发布使用了BSD协议的代码,或则以BSD协议代码为基础做二次开发自己的产品时,需要满足三个条件: 1. 如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议。 2. 如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议。 3. 不可以用开源代码的作者/机构名字和原来产品的名字做市场推广。BSD代码鼓励代码共享,但需要尊重代码作者的著作权。BSD由于允许使用者修改和重新发布代码,也允许使用或在BSD代码上开发商业软件发布和销售,因此是对商业集成很友好的协议。而很多的公司企业在选用开源产品的时候都首选BSD协议,因为可以完全控制这些第三方的代码,在必要的时候可以修改或者二次开发。
Apache Licence 2.0
Apache Licence是著名的非盈利开源组织Apache采用的协议。该协议和BSD类似,同样鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再发布(作为开源或商业软件)。需要满足的条件: 1. 需要给代码的用户一份Apache Licence 2. 如果你修改了代码,需要再被修改的文件中说明。 3. 在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明。 4. 如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改。 Apache Licence也是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。
GPL
GPL许可证是自由软件的应用最广......
传说中的Delphi2006下载(2005-12-05 13:28:00)
摘要:下载地址:http://lib.verycd.com/2005/12/04/0000077943.html
介绍:
Borland Developer Studio 2006 豪华套装程序开发环境,开发工具,(Architect设计师版,最强大的一个版本),已于05年12月份正式发售。Delphi 2006、C++Builder 2006 和 C# Builder 2006 均为 Borland Developer Studio的一部分。Borland Developer Studio 2006还包括Borland StarTeam,Borland StarTeam InterBase,BES VisiBroker,Remote Debugger...等等增强软件。 Borland Developer Studio 2006为针对微软 Windows 和 .NET 的 Borland 多语言开发环境,Borland Developer Studio提供加强的开发环境 美国 Borland 软件公司宣布,推出前代号为“DeXter”的 Borland Delphi 和Borland C++ Builder 2006快速应用开发(RAD)环境的新版本。具备强大的生产力的和性能推进功能的 Delphi 2006 、C++ Builder 2006加上新的 C#Builder 2006 为软件开发团队减免了重复冗余的开发工作,使其快速兼别具成本效益地交付企业级 Windows 应用。 Delphi 2006 ,C++Builder 2006和C#Builder 2006现已并入 Borland Developer Studio,该产品是针对微软 Windows? 和 .NET 应用的Borland 多语言开发者环境。它是业界唯一能以单一环境支持 Delphi (包括针对Windows 和 NET版本)、C、 C++ 和 C# 应用的集成开发环境(IDE)。客户购买任何一款产品,就可在不增添额外成本的情况下获得对所有四种编程语言的全面支持,以及为个别编程语言定制特定功能的灵活性。 Borland 产品部高级副总裁Boz Elloy 表示:“开发人员是 Borland 软件交付最优化理念的核心,是应用生命周期的中心。我们一直致力于为 ......
新闻 Delphi2006 Dexter 与 C++Builder 10.0(2005-08-05 23:07:00)
摘要:隨著Dexter推出的日子逐漸接近,Dexter的Beta測試也進入了如火如荼的階段,目前Dexter的狀態是第4個Beta,我也好久沒有看到Borland的產品會有Beta 4了(Delphi 8/Delphi 2005是Beta 3之後便被下令推出),而且Dexter還有好幾個月的時間繼續進行穩定性,延展性以及效率的調整,這實在是令人高興,因為這代表Borland的高層現在腦筋終於清醒了,我不知道Dexter推出後在Marketing方面是不是可以掃除Delphi 8/Delphi2005負面的印象,但我知道如果Dexter依照目前的計劃發展下去,那麼我們終於將有一個很棒的產品了,OK,不多說Politics方面的事以免我有麻煩,讓我們多談談Dexter技術以及產品本身的事好了。
如果您還不知道Dexter是什麼的話,簡單的說Dexter將在一個IDE中(Galileo 4.0)中提供C/C++ For Win32,Delphi For Win32,C#,Delphi For .NET開發的能力。而Dexter最主要的目標即是提供C++Builder 10.0的功能,是C++Builder 自從6.0以來最大幅度的一次大改版,下面列出的事項大概是Dexter的主要功能:
- Same IDE as in Delphi 2005 with enhancement
- Is about IDE features, bug fixes and Win32 (a Win32 supporting release)
- Conformance for Boost and ACE. Almost 100% ANSI conformance.
- SSE2 in inline assembler
- Code folding, basic refactoring (as in Delphi 2005) and C++ specific refactoring
- Heavily revised compiler and linker
- Similar speed in compilation. Code Insight is much faster.
- COM - Improved type library support
- Some features for a ......
