java不是天生低能

来源:互联网 发布:java增删改查实例项目 编辑:程序博客网 时间:2024/05/19 02:41

从编程语言来说,由于java采用虚拟机方式执行,运行效率略低于编译语言.但是,好的设计往往能抵消这些,换句话说,设计精良的java程序效率普遍高于,设计一般的编译程序.java的 语言特性决定了,在比较大的项目上,使得设计更容易,从而降低复杂度,提高开发效率.而程序的执行效率主要影响因素的软件架构.所以,对于java程序,轻微的先天不足完全可以用好的设计弥补.

在内存小的计算机上使用java无疑是个噩梦。不难发现,大多数著名开源软件,如linux,eclipse,java都对内存要求较高.那么,内存在java程序运行性能优化上必然扮演重要角色.

前几天我有幸看了看java rt.jar的源代码,然后不幸的是我晕了两三天.............

我并不是否认java.也不是不能接受它.但对它的复杂性比较担忧.我也意识到开发性能好的java程序,很可能要深入了解所要使用的类或接口.

下面是个例子,假如a是一个已经实现的类
class A ()
{
private Vector data;
public a(Vector data)//直接
{
this.data=data;
}
public a(Object[] data)//直接
{
//必须将object[]转为Vector
}
}
///////////使用
Object[] da1;
Vector da2;
A a=new A(da1);//不知道其它构造函数.需要执行额外的操作
A a2=new A(da2);//直接构造,无额外操作

尤其是经常使用的类,细微的差别对整体性能影响也是不小的

另外.也许大家都认同了不管什么东西都对象化的思想.但我认为对象化就象是制造模具(塑料摸).经常用的元件用模具生产当然最好,不常用的做模具就得不偿失了,还不如用机床加工.分层的思想是非常有用的,可以让杂乱的类开发变得有序和结构化,也应当是类库架构的核心.如果简单地以应用特性构建类库,类的依赖关系就会变的很复杂.但对于应用程序员,非应用层面的类应尽可能避免使用

发发牢骚,也许我会改变观点,但不是现在

原创粉丝点击