1、 VisualAgeJava。它与其它JAVA开发工具相比有很多独特的地方,VAJ用自己的二进制格式文件(资源库)作为基本的存储模型。内置的版本控制、增量编译和高效的debug工具。 % ?* t1 e5 t8 Y ' F; @2 p5 V2 b1 |, Y* E% I 2、 VC。如果说到Windows下的可视化开发工具现在大家接触得最多的就是VC,VB,DELPHI,BCB。其实我觉得VC并不能完全算是一个可视化工具,这表现在VC中编写代码还是占了开发工作的大部分时间。而其他的可视化工具中都在界面设计中耗费了大量的开发时间。我一直使用VC的原因就是因为我能够一直将注意力集中在软件功能开发上而不是界面设计上。我认为这样能够在开发的过程中更加自由和有更多的控制权。而且这种情况下产生的代码维护性更强。 {7 O% r4 g1 T. b
% `/ G* g& ^5 h% z 3、 delphi。数据库支持是delphi的强项。这主要体现在delphi与bde的无缝集成,以及delphi提供的那一大堆现成的数据库操作控件。这是vc望尘莫及的。目前delphi支持bde、ado、interbase三种数据库访问方式。所有的方式都能拖拉到应用程序中实现可视化操作。正是因为delphi对数据库类的包装,使得用户操作数据库不像在visual c++中必须从开始到最后都要干预。明显地提高了开发速度。在delphi中使用webbroker控件还能很方便地构造出基于数据库的web页面,通过html管理web数据库。 * [7 s% G- t/ ^ " G9 a" v* S6 T6 D; B- H1 B0 m5 I 4、 perl。我喜欢perl的理由是与我从事的工作有关,我想使用SNMP网管工具查出每天的带宽使用情况。当然可以写一个C程序直接同路由器交谈取得所需信息。但我并不喜欢C的malloc()和free(),它让我着实不安。好在perl有一个SNMP接口??桓龃笤?0行代码的perl脚本可以同路由器对话,并且能将精力放在功能实现上,而不是编程的细节上。* L. g3 W( H* Z; D0 Q- M- h" L
# x$ m9 ]7 W2 Q7 r, q. y6 [
5、 python。大家可能对这个名词比较陌生,它是一种面向像的脚本语言。它具有动态类型,支持多继承,用户定义类型,高级动态类型和类。为什么我这么喜欢python?有几个原因。首选,它的语法清晰而简单,我的python程序比其它的语言更易读懂。其次,我发现自己更倾向于面向对像方式编程,而向对像的编程比旧的传统方式似乎更贴切一些,再加上python是从头至脚面向对像的,长的程序易于开发和维护。 : T' v+ F3 F& r* a8 k5 i" t ' v) f5 g& W! V8 c0 } 6、 Tomcat。之所以要选择它,主要是因为原因是因为它是免费的,不像MS的软件动则几千RMB,像我们这样的学习者哪里承受得了! 免费并不代表质量低下,据测试表明,Tomcat在JSP服务器方面的稳定性优于websphere。它的开发非常方便,集成了很多优秀的性能,它的源码公开,你可以仔细地研究它运行机制。 & Q6 v% } [& }# E" k5 h, _$ C; v( E, q! [1 ^% n; d- N( C
7、 ASP。简单易学。Basic有谁不会?很少会有人举手,所以有人在说这个开发基础是最广的。而且MS有一向做的非常好的联机手册,本地化语言的帮助,同时非常快的出现教学书籍,这样会大大方便开发人员的学习和对技术的深入研究。安装使用方便。装好一个Windows 2000,只要你安装了IIS哪么ASP就可以使用了,从没有什么需要你花心思去配置的。 ' b4 v2 H1 o0 V; S8 d! e: Y0 B) ?; v
8、 PHP。PHP是一个什么原因出现的呢?它是一个技术人员希望能用一个快速的方面来完成他自己的个人主页中的一个小应用。而在他一发不可收时出现了php,它使一个人能在多种操作系统下迅速的完成一个轻型的Web应用。所以在短短的几年里,php迅速的升级了它的版本,同时在GNU的世界里找到了一个青梅竹马的伙伴----Apache。个人认为php是自由软件在web应用平台上一个决胜的工具,如果没有php的出现,还会有许多人认为自由软件就代表了对开发人员的高技术要求、难记的代码、复杂的工具.....php使一个会使用basic的人员在极短的时间里快迅学习并完成用户需要的应用。 / g8 Z1 ~) u. E1 i " M+ p/ v+ u2 C* H7 F- b 9、 PB。现在究竟是什么阻碍了Web应用和3-tier的大批出现呢?仍然是工具。一般说来,完成这些任务需要使用多种工具,在开发时需要在多个工具之间切换,由此造成了开发效率的低下和开发难度的提高。而PB8/PJ4很好地解决了这些问题。所有这些任务,都可以在同一个开发环境中完成,开发人员能非常快速地编写基于数据库的业务逻辑Component以及调用这些Component的Web-Client或PB-Client。尤其是Sybase把2-tier中的王牌Datawindow扩展到了HTML领域,使得数据库驱动的动态页面实现起来非常容易。 : y+ A4 G3 M8 N4 F1 i6 u" g) Y* i3 I2 \
10、.NET。.NET框架和C#扩展了Windows的功能,C#和Visual Studio .NET的结合使得创建和配置Web服务几乎可以自动进行。并且,和传统的ASP应用程序相比,ASP.NET应用程在性能、稳定性以及可扩展性方面都有了实质性的提高。 : ^/ L' B7 `8 A5 }6 ~3 H# a T1 }/ s: N9 T a
; q- R/ i" _& Q$ F, d
JAVA开发工具大比拼 0 c% j. q- ]# ~9 K3 m 4 E; K! Y( w. o$ q, G VisualAge for Java。对于现代的程序员,开发工具起着越来越重要的作用。尤其在java领域,各种工具和厂商之间的关系十分复杂,用户之间对开发工具的争论是一个永恒的话题。: R" `( J7 P" }" w
9 ^3 {5 @: _; G/ v, |+ O, l7 M* r; H 在新闻组和BBS上常常看到有人问什么开发工具最好,经常就会有人对新手说,就用 JDK 和notepad (ultraedit,editplus,...);也有许多有C,C++经验的人上来就找Visual J++;还有许多人对Borland JBuilder情有独钟,加上一些通用的集成开发环境比如Visual Slick Edit,一些基于java的比较小的开发环境,比如Kawa,JCreator,IntelliJ...更不用提UNIX环境下那些狂热的EMACS,VI的爱好者了... 0 a5 h6 r; r* T5 j/ @) ]3 t) R& S0 h7 {5 b; g2 W- z
然而我最喜欢的还是VisualAgeJava,有的人喜欢用JDK和文本编辑器,是因为喜欢感觉到真正的代码,知道“背后发生的事情”,对他们而言,可视化编程工具生成的代码绝对是垃圾,不利于自己的修改和维护。但是他们并不是排斥工具,要不然,也不会把notepad换成ultraedit,editplus,乃至更强大的工具,远远不是一个文本编辑器那么简单。 - u n: n$ B2 i! ~; m8 |# Y8 q. v8 D' G& r
至于使用Visual J++,Borland JBuilder,也很明显,界面和习惯都很熟悉,很快就知道怎么回事,可以上手。但是其实Java世界有它自己的特点。 / \+ d# A3 c+ M3 Y- c( K$ f1 k; f5 k$ B t4 Y$ q$ y0 O& \$ ^% s
最初的Java IDE大概是Symantec公司的Visual Cafe,由于其编译器速度很快,尤其出现的最早,很快占领了大部分的市场份额,现在虽然已经大不如前,但还是有其特点的,尤其是国际化支持方面比较突出。 ) v7 v( X9 u3 o& G' m( } - ^$ g* J2 E/ z7 F$ P: f 此后就是IDE领域的老牌公司Borland的JBuilder,早期的还比较粗糙,但是随着版本的不断更新,集成了许多类库和组件,以及Borland一向的良好声誉,成为当前最普遍的IDE之一。+ T( [: ] D+ j4 e, }# l- d
$ X* X3 f* S2 o, C* k9 f Microsoft的VisualStudio在C++领域是绝对的老大,在Java领域却不能有同样的风光,其实从微软公司的战略角度,这点是很明显的。从较早的Visual J++ 1.0到比较稳定的1.1,以及号称专门从Borland挖来的Delphi总设计师亲自设计的Visual J++ 6.0,它始终处于一个尴尬的位置。后来更因为被Sun起诉,被迫最终修改。% l% O8 H% k* j6 E7 ^* } {2 j
' Z5 Z c. J/ q
不可能从Microsoft得到Java的开发工具,这是很明显的。9 p, |6 T B, Q# V
3 S- {3 T0 |/ e
有的人第一次用VisualAgeJava,可能会不太习惯:怎么界面这么土?(VisualAgeJava的版本更新很少带来界面上的变化,没有其他软件花哨,其实可以说是优点。不过,Eclipse or WSWB的界面可就完全不同了,不仅很漂亮,而且有很精心的设计,而不是照搬习惯的方式)怎么没有我熟悉的菜单结构?... % F* a0 J9 c( {2 V9 r7 c5 E" O, |; h a8 \
VisualAgeJava有很多独特的地方,需要一个熟悉和适应过程。$ u/ O2 U5 I" M9 T& @) [
6 @' g( [& q9 n. u4 w8 ~. m VAJ用自己的二进制格式文件(资源库)作为基本的存储模型。 % W) E5 J6 i' `* ]# H( S8 U0 F% ^, C0 a6 f$ d. d @/ n, n
对于开发者而言,完全不用考虑文件和路径的所有问题。所面对的直接就是package,class,method......,同时在显示上也是以类、方法等单元作为对象,只显示选中的元素(直到近期的版本才出现了full class view),这非常符合面向对象的概念,帮助开发者用面向对象的概念和模型来考虑问题。 ~4 _8 @" v0 @, z5 v- R& G- y
( U2 t1 U( u6 a k/ N9 X# W" N 当然,有人可以说,不接触文件,不搞清楚文件,路径,包的关系,就没有了解Java中这部分真正的内部机制。但是,即使是已经充分了解的有经验的程序员,也难免在这个问题上犯错误或者耗费不少时间和精力(因为牵涉的因素很多),对于初学者,这一点就更重要了。% m7 { d$ l- s; C s