java体系和微软体系

     从大一的时候接触编程开始,就以微软的编译器来敲代码,当时使用的是visal c++,听说好像现在已经停止更新了吧。后来也就开始了微软的各种语言的开发,包括VB、C#,当初还没太多的对这些编程语言的感想,还觉得所有的编程语言都是一样,无非基本数据类型、逻辑操作,面向对象的话则是封装、继承、多态,只是在语法上大同小异地表达这些东西,可大致给一个等于号给这些编程语言吧。

    在用asp.net开发了一段时间网站后,一次偶然机会,需要使用JAVA来开发,所以又来学习JAVA,研究JAVA的J2EE框架,当时只是用了spring和structs。记得最初还对自己信心满满的,当研究到spring和structs框架的时候,发现当时那个项目spring和structs的使用让页面到处理逻辑之间有了4次跳转。当时,就把我们给蒙了。熟悉了asp.net开发的那种页面与处理逻辑一一对应方式,还真不理解这种模式。

    现在又开始了android开发,对于配置方式来实现项目已经很熟练了。也开始理解了JAVA的这种模式,也慢慢地感悟了JAVA的设计理念。这时,我也开始来总结思考JAVA与其衍生的框架体系的特点,并以微软的开发框架来做对比说明。我总结如下:

    1.JAVA语言本身只是一门轻量级的开发语言,为什么这么说,因为与C#这些语言对比起来,C#的语言必须基于其庞大的的.net framework框架,而且这个.net 框架里面包含强大的功能组件,例如强悍的数据库操作的ADO组件。JAVA虽然也有JDK,然而它只立足于基本的功能,短小、精炼。

    2.大量强大的第三方开源类库。由于本身是轻量级的,因此它选择了把其他的功能交给第三方来开发,SUM公司采用开源项目作为橄榄枝,吸引大量的大神帮它开发产品。open带来个不仅仅是开源产品,而且创造了大量的以JAVA为开发语言的开源平台,从而产生大量JAVA衍生的框架、类库。我想,这也是JAVA发展成为当今最流行的语言的原因。

    3.组件式进行开发。JAVA的开发常常是通过配置来进行的,有时是为了让Data与View分离,有时是为了让框架与自定义组件进行组合,上面聊到的structs的配置这就为了满足这种需求。可能更多的原因是后者,因为JAVA的开发常常伴随着导包,这些第三方包的使用就常常伴随着配置。这个包有点想组件的形式被放在项目中使用。没使用过微软语言开发的,可能觉得这是正常的,然而使用的微软的语言开发的话,就比如开发网站来讲,使用微软的asp.net,页面与后台逻辑的跳转是微软自己封装起来的,你不用管它,只管实现它的页面和页面对应的方法就行了,然而在J2EE开发中,需要使用structs来跳转。数据的持久化在.NET中可以使用ADO中的DataTable、DataSet,功能强大,使用方便。在J2EE 中就得使用Hibernate。所以对比起来,JAVA体系的开发,需要把功能包一一地导入项目,在微软的开发系统里面,所有的功能都集成于其庞大的开发框架里面,也难怪微软的visial statio 一安装就是好几个G。

你可能感兴趣的:(java,微软,体系)