动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Java教程 ]的信息

本月文章推荐
.Hibernate中多对多关系的常见问题.
.Java咖啡馆(9)——一个压缩归档实.
.专家讲解优化Derby数据库程序性能.
.commons-fileupload和struts公用.
.JAVA数据对象应用程序接口Castor.
.整合Hibernate3与JBOSS 3.2.X.
.java的io系统.
.java中的 by value or by refere.
.开发工具——BREW是什么?.
.科学计算器.
.递归函数之JAVA演绎.
.使用JWhich工具管理CLASSPATH.
.Java学习:一个基础的代理服务器类.
.Java不该转换至.Net的五大理由.
.试试看把XML转成PDF的有效工具:.
.基于JAVA技术的搜索引擎的研究与.
.本源XML数据库Xindice 介绍 (1..
.finalize( ) 方法.
.用JAVA程序取得IP地址.
.J2EE应用开发中与Oracle数据库的.

Java有用论

发表日期:2008-1-5 |



  1.我们老祖宗说过,合久必分,分久必合。软件工程本身是希望从工程学的角度来控制工程的进度,混杂各种技术不是什么好现象,C++恐怕种类也不少,目前还有谁只写ansi C++的?看到漫天飞的makefile,各个版本的lib,不知名的头文件(),遍地的define。。。,恐怕晕的不止我一个,多有耐心的人都要消耗时间来协调各个部分的程序(呜呜,我是低手,别臭我),写了许久,还是某个平台的(确实有人可以写出移植方便的程序,但我辈低手尚我此种眼界和经验)。提到IA32真考倒了,Java和jvm最好还是分开讲,信任一群公司的联盟可以提供更好的jvm,好象不只是我这么想。当然,java很多东西做不了,可以尝试通过JNI、CORBA、Socket等技术来调用万能的C++啊。十八班武器,那个没有自己长短处?不过现在做底层应用的,还是以C为主。不信,看看那些做通讯,电子的,哪个是在用C,而且将来也不一定会转到C++。

2.java是什么?这个问题问的好,三年前,两年前,一年前,半年前,大家的理解都不同,本人第一次对这个问题有感觉有触发是在回答一份ibm调查问卷的时候。
java.sun.com/prodUCts下面那些东西,有谁看完了?我是看了几个,但起码知道跑java的设备目前已经存在了,虽然是手持设备或通讯类产品,而且不是只能跑java,但起码那也叫硬件。将硬件跟软件支持分开,这才是适应不断升级硬件、软件的最优结合方式,拘泥于技术的细节,忽略方向,这样子很被动的。

3.被他的例子击中要害。没话讲,一是不熟悉,二是我也基本同意他的看法,除了3.1.3,小小细节就不必拖出来讲了。

4.
4.1是个老话题了。的确,java效率通常要低于c++,但是它是挂在jvm上运行的,比通常的C++运行多了个壳,而且用循环来比较的话,恐怕这种举例更不公平,显然C++对于y = x * z优化跟java的处理有不同。假如一味强调编译器优化的某项特性,那java这边也可以做优化啊。运行态编译就那么不可行?别忘了,服务器上的程序没有哪个是运行一次就被重新执行的,而执行过一次,运行态编译就会体现它的优点,一个C++程序运行一次3秒,一个java程序运行一次6秒,这就说java慢?好,那么那个c++程序运行10000次就是30000秒,那个java还是这么简单乘法吗?请考虑统计数据采样的重要性。统计本身就是们学问,加减乘除都要有凭据的。对于两者效率差多少,个人意见:在不同的应用场合下来测试,这样可能客观点。
4.2预编译java谁说没有?SQLJ白出来那么久了。运算符重载在java就有一个"+",假如C++中有反射的话,相信灵活性会有更大程度的提高。模板类都是C++的精华,我也非常喜欢,那是C++中的奇迹,ATL和STL活在一群热爱C++的程序员里面,但是其它语言又有谁支持了?类型约束,呵呵,假如程序员连类型都写错,那么在C++不需要改吗?多继续是个老话题,不过从com/dcom、corba这些技术,恐怕接口比多继续更受欢迎吧。究竟超过二层的多继续在C++应用实例也不常见,主要原因是没必要,而且程序难调。AWT的确不是很受欢迎,4年前,人们都以为AWT就是java全部,结果多少人放弃java,但现在情况就完全不同了。java可以将程序压缩放在jar文件中,以减少文件尺寸和方便治理,不过pe的也有压缩加壳技术,但是终究不是系统级支持。
4.3扯多点东西,那位老大一定对信号量等同步技术非常重视,在java中实现非常简单明朗,C++也麻烦,那么关于资源如何释放对于程序员就只是个编程的习惯,相信在java中忘记关掉stream的人在C++也可能犯同样的错,而且结果也会相同。答应C++程序员在析构函数多写几行关闭,为什么一定认为java程序员会忘了呐?假如java是骗局,那么这是一场跨国多巨头联合超级大骗局。

5.java发展时间不长,比c++是年青太多了,年青到基本框架到处都在搭建,jvm的版本也是很多,我现在使用的是1.2.2_005,对个人影响也许不大,但这个对公司的影响确实比较大,没有哪个公司愿意为jdk1.1.x和jdk1.2.x写两套软件,但这个就好象c++的库版本治理混乱一样,没有哪种技术一开始不需要伤筋动骨的改造,perl的下一版都在重写呐。

6.
6.1好象软件工程要求你在写代码前先干点什么,这个应该不算java的问题。是采用如何的方式学习和应用语言开发的问题。在工程里面说明一遍,然后再在header里面写一清遍,恐怕算是浪费体力吧。javadoc强烈推荐大家使用,可以根据代码生成象jdk那种结构清楚的文档,写完程序,这种文档也可以作为补充。
6.2呵呵,又是多继续。实例举多了,不利于帮助了解事物的本质。
6.3析构,呵呵,析构中再调用其它的析构,好处可以自己定制析构,但是对于调试程序恐怕也会带来多一些麻烦,这个世界上的程序员还是要靠debug来吃饭的。析构到底有那么神奇,令仁兄接二连三提起?
6.4许多人都讨论过一个大对象好,还是一堆小对象好,那么本人的看法是假如一个大对象完成所有工作,那么就将问题局部化,调试范围集中在一个文件,但不利于多人开发,而且功能升级也不方便,重用的可能更小;假如多个小对象,可以分工明确,功能升级有可能减少代码的修改量,最大可能重用组件,对于项目治理的确是个挑战,看似简单的小对象之间的架构才是component比oo多出来的精髓,但使用不当会令工作事倍功半。这个问题对c++和java都成立,但是由于语言的风格不同,所以受重视的程度有不同,许多人在学习java的过程里面都会思考、比较这两种模式。
6.5移植的东西就很难讲。ibm和Oracle都要在palm上搞数据库,ibm是改写的,oracle是重写的,那么哪个服务器软件不是一大堆for各个版本的不同操作系统。这些就是摆在眼前d的实际问题。不知不觉,64位又要大行其道了。
Fortran77和basic现在也有人用,甚至cobol用的人都不少,为什么?商业社会不答应随便放弃过去,推C++的时候面临的是同样问题,怎么就这么快忘了呐?
java的基本类型比较少,这个是事实,之间转换也不是非常灵活,但是c++中,类似整除和取余更是通过函数实现的(顺便提下,基本上c++中每一个内置函数都有功能相同名字、类型不同的,这些恐怕也不是什么好现象吧)。细节问题,不至于影响对java发展方向的评价。
全局变量这种东西可以放在一个类中包装啊,c++也是希望减少使用全局变量、宏编译,联合体出现的年代,String都不是数据类型,操纵起来也要处处小心。现在用联合体的场合一般是厂家提供的api需要,自己写程序用联合体的不多。用联合的语言就一定要支持指针,这是java所不愿走的路。
instanceof确实非常有用,因为java可以通过非常多的形式拿到类的实例,假如不知道是什么类或者实现了什么接口(别咬文嚼字,接口本身就是一种非凡的类),可以让java的灵活程度大大加强。比起dll的动态加载,java的动态加载就是天生的,不需要那么多乱七八糟的规矩,而且可以通过jar来集中治理同属一类的java class。
反射是java的一大特色。
6.6呵呵,java可以骑着c/c++啊,jni是吃白饭的?通过jdbc可以调用数据库中的东西,jndi可以访问目录,jms可以访问消息队列,jts可以访问交易系统,javacard可以在sim卡上跑,corba可以调用任何支持corba的东西,socket可以调用任何支持ip的语言,rmi虽然只能用java,但是可以非常透明的得到实例,这是其它语言不具备的优势,适合网络分布计算。呵呵,这些只是非常普及的java技术之一小部分,它虽然不是什么崇高的理论,但是起码它能让许多计算机在一起工作,为应用服务,这才是我们最关心的问题。

7.偏系统底层开发,我宁可用C,中间层开发倒是java,界面用些简单工具就算了。至于c++,恐怕只是当初在接触面向对象时看到的一个诱人的梦了。
上一篇:Java应用技巧-Java中的发声提示 人气:468
下一篇:Java应用热遍全球 人气:286
浏览全部Java的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-9-4 LPLY CMS 网站管理系统 v5.0
2008-9-4 缤纷互动视频交友 v3.01.902
2008-9-4 ADN视频收藏专家 v3.0 bulid 080
2008-9-4 天空网络电影系统SKYUC v2.5.6 简
2008-9-4 Web Wiz Rich Text Editor(文本编
2008-9-4 幻影动漫网视频系统(Ppdong) v1.
2008-9-4 乐维电脑在线DIY配置系统
2008-9-4 老樊文章管理系统SQL版
2008-9-4 ASP.NET 2.53 缩略图水印组件源码
2008-8-23 Mini WinMount V0.4
2008-8-23 Vista优化大师3.11正式版
2008-8-23 Wine 1.13
2008-8-23 KlipFolio 5.0 Build 5899-80
2008-8-23 Windows Sysinternals Desktops
2008-8-23 OneTap Movies1.2破解版
2008-8-23 AnnotaterPDF阅读1.1.503 破解版
2008-8-23 SoundMeter分贝测量仪 v1.0汉化破
2008-8-23 iDrum音乐节拍1.0破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | Html转换js | js/vbs加密 | md5加密 | 进制转换
实用工具:汉字翻译拼音 | 符号对照表 | 个税计算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵