java对象思考与我所遇到的事

07-07-17 colingo
也许是我对java的面向对象理解的很肤浅,也许,我可能根本不能够真正体会究竟什么是面向对象,如何来运用java这种以对象为基础的语言.

曾经在一本书中看到这样一句话: 仅使用一种面向对象语言并不能保证编写出来的应用程序是真正符合面向对象风范。必须熟悉如何从头到脚地使用对象方法来设计一个用程序,而且还要知道如何正确地运用这种语言。

我觉得说得非常好.以前在jdon里也看到一项调查大意是说:70%的人用面向对象语言,做着面向过程的事情.回头看看自己,何常摆脱这个漩涡.于是自己很惶恐.因为我喜欢java.虽然我技术不太好.但我一直在努力.

因为jdon,让我看清了很多东西.也学到很多东西.但是说实话.到现在为止.我自认为还没有真正的理解面向对象这一说.我只能够,在编写程序的过程中,努力往这里靠.在思考问题的时候尽力从对象入手.

在jdon里我看到很多历害的人物和Banq激情讨论,让我大长见识.当然也有人说Banq有时候很偏激.但是从我看了Banq对帖子的回复.我没有感觉到.可能有时候他和别人讨论的时候立场不一样,所以给人这种感觉.但至少一点是肯定的.Banq都能认真的回复你的问题(只要他回复了),真诚地引导你.

最近所做的项目中,因为所遇到的一些困扰,前些日子,我在某一国内还算是知明的论坛上,发了一个帖子,帖子如下(因为后来被他们删除了,我也只能把我的写的大意说出来):

因为需求,我们在需要从数据库中一次性读出很多数据.我们用一个报表(就不说什么报表了,是我们公司买的)来显示这些数据并对其进行操作.因为某些原因,用户不想对其进行分页处理(暂时是这样的).我们只能一次性的显示.当数据很多时,会导致内存溢出.先不管是不是那个报表有问题.我们抛开这个不说.我们就说面向对象.

因为我们组里有以前是用delphi的同事(delphi对数据库的操作也很方便).当出现这个问题的时候,用delphi的同事说,如果用delphi做同样的事情,不会内存溢出.java的对象挺麻烦的.占用内存.如果设计不当,释放不了,就溢出了.因为本人学的不精通,一时半会不能给他一个很好的解释.

所以就在那论坛上发了一个关于这个事情的贴子.就是想问一下,面对这种问题应该如何处理,如何设计.我绝对没有说什么不好听的话.

但是第二天,我高高兴兴地上去看,有没有人回复的时候.得到的结果,让我大吃一惊.没有看到回复不说,却收到一封系统的信息,说:大家一致投票我那个帖子是新手帖,减我10分.当时我想,本人是新手,减就减10分吧(这个分数对我也不重要),只要有人回复就行.但是再也找不到我的那个帖子了.被不幸的删除了.

当时心理也气愤.真是想大骂一通.我还是忍了一下,就发个消息给系统管理员,我说,本来就是不知道才问你们的,你们到好,不回复,却减我分,还删除我的帖子.你们这些”大虾”有来投我新手帖的时间,不如给我一个简要的回答.

后来还是气不过,又发了一个帖子.内容倒不是不礼貌,就是标题我加了个”呸”子.我是想了半天才加上去的.因为一想到我问题没有被回答,还被人家删除就来气,因为我觉得这个问题,并不可笑.至少对一些人来说,是有用的.

这下可好,不出30秒.我的用户名就不能用了.被人家删除了.

至于上面的那个问题,我也有思考过.自己认为不成熟,所以也没有和别人讨论过.

[该贴被xinying_ge于2007年07月17日 20:18修改过]

         

ttt
2007-07-17 23:46
人家有个挂爪哇卖罗卜的监视眼,还去那里干什么?

[该贴被ttt于2007年07月17日 23:51修改过]

banq
2007-07-18 10:24
论坛只要坚持就事论事,摆观点就会受到大家欢迎。说到容易做到难,所以,难免象楼主这样受到误解,不要太在意。

>我们只能一次性的显示.当数据很多时,会导致内存溢出

一般不建议这么做,因为数据是动态增长的,内存是有限的,无论采取什么语言,都会出现内存不够,使用Delphi/C++和Java,只是五十步笑百步。

如果你选择的组件要求这么做,那么就应该放弃这样组件,没有一个需求实现只有华山一条路,只有人想不到。

实在不行,就使用文件作为缓存,在内存中放一部分,钝化磁盘上一部分。就象windows也分内存缓存和磁盘缓存呢。

colingo
2007-07-18 13:49
谢谢Banq,让你费心了.

这个问题,我们的组也有技术好的,在着手解决这个问题,因为分工不同.一来,我技术不太好,目前还没有这个力能像你说的那样做;二来这个问题我只是在想如何解决,真正来做这件事也轮不到我.

我会查找想关的信息,能学到新的东西,谁不愿意去学呢.呵呵.

猜你喜欢