Java该何去何从
思考
TIOBE的编程语言排名榜,想必大家都非常熟悉,每月发布全球编程语言的热度和趋势。在四月份发布的数据中,C语言终于超过Java成为No.1,但真正让人担忧的,并不是C的夺冠,而是Java的持续疲弱,更糟糕的是,似乎没有哪个老大站出来挽救颓势。
作为一名Java从业者,我在企业应用领域做软件,从工作中并未感受到Java的地位有什么太大的变化,J2EE依然是企业 B/S 应用架构的首选,但如果拿Java去做互联网应用,同样是WEB,但目前来看还有不少问题,不是不能做,是很尴尬。
最近在寻找合适的的wiki、blog类的开源程序,以前就知道大名鼎鼎的WordPress,Drupal,到官网上一看,全都是PHP的,而全球最大的维基网站wikipedia也是基于PHP的。在我印象中,Java的开源社区也是非常活跃的,于是我就尝试搜索这些软件在Java中有没有对等的项目,结果令人非常失望,不是没有,而是很弱,完全不在一个级别。
到目前为止:
我找到的Java方面的blog程序,最强的当属:Apache Roller。但是,只有几套风格模板,找不到什么插件,没有扩展开发文档。而WordPress有成千上万的插件和风格模板,并且有庞大的用户群和活跃的开发社区。
Java方面的Wiki程序,最强的应该是:XWiki。这个在文档、扩展性、功能方面,都达到了一定的水准,但在插件数量、用户基数方面,还远敌不过PHP的对等产品。
做网站通常还有个必不可少的组件,那就是论坛,国内最有名的Discuz!,和国外No.1的phpBB,都是基于PHP的;这两年风生水起的社区网,开源项目也是基于PHP的比较多,比如 OpenSocial 的参考实现 partuza。寻找的过程中,还发现一个比较郁闷的事情:http://wiki.java.net,这是一个Java的大本营啊,竟然使用TWiki,TWiki虽然不是基于PHP的,但也不是基于Java的,它是Perl写的。
除了开源项目的多寡和本身功能的强弱,还有一些外部因素影响了Java在互联网网站,尤其是在个人和中小型网站上的发挥:
1、Java WEB开发环境的安装配置相对复杂。目前,Apache+MySql+PHP有很现成的压缩包,下载后解压就可以用了,比如www.wampserver.com/en/,只有16M。而Java5自己就要占用上百兆,还少见Java+Tomcat+MySql的集成安装包。
2、Java的开源项目的配置过程,通常比PHP项目要复杂。目前接触的几个PHP项目,少有需要手工修改配置文件的,都是下载后,拷贝到Apache的WWW目录,然后就可以从界面进行配置了。而Java项目,最简单的,至少需要手工填写JDBC连接信息,通常还需要人工找到对应数据库的
相关文档:
0
.引言
在ChinaITLAB
导师制辅导中,笔者发现问得最多的问题莫过于"
如何学习编程?Java
该如何学习?"
。类似的问题回答多了,难免会感觉厌烦,就萌生了写下本文的想法。到时候再有人问起类似的问题,我可以告诉他(她),请你去看看《Java
学习之路》。拜读过台湾蔡学镛先生的《Java
夜未眠》,有 ......
package zzq.main;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
/************************************************************************
* C语言趣味程序(不到)百例-之Java实现
*
* 0 ......
java的Runtime.getRuntime().exec(commandStr)可以调用执行cmd指令。
cmd /c xx是执行完xx命令后关闭命令窗口。
cmd /k xx是执行完xx命令后不关闭命令窗口。
cmd /c start xx会打开一个新窗口后执行xx指令,原窗口会关闭。
cmd /k start xx会打开一个新窗口后执行xx指令,原窗口不会关闭。
可以用cmd /?查看帮助信息。 ......
先来看看客户段程序编写的流程:
1、 首先调用Socket类的构造函数,以服务器的指定的IP地址或指定的主机名和指定的端口号为参数,创建一个Socket流,在创建Socket流的过程中包含了向服务器请求建立通讯连接的过程实现。
2、 建立了客户端通讯Socket后。就可以使用Socket的方法getInputStream()和getOutputStream() ......
使用Java操作文本文件的方法详解
摘要: 最初java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类
最初java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类,这两个类都是抽� ......