从脚本语言到Java

板桥里人 jdon.com 2002/3

以前我是一直用脚本语言,使用多了,不知不觉一直把数据库设计当作系统设计的主要任务,使用java后,我觉得数据库设计只是一个基础 和前期工作.此外还需类的要进行接口或抽象设计,这才是最主要的系统设计,以下是我个人实践的随笔:

脚本语言是指Perl Php Asp Jsp等,在Java诞生时,更多是在图形方面发展,因此,Perl 和PHP在WEB开发中比较流行,但是自从Java转向企业应用以后,Java成为我们服务器编程的一个利器,和脚本语言相比,使用Javabean EJB J2EE等中间件,可以大大缩短开发时间,同时程序出现意料之外的健壮可维护和可扩展性,这些都应该得益于对象化思想的应用.

在实际系统实施中,我们面对的更多是数据和数据库,从一定程度上讲,数据库是一种数据对象,将数据对象化后可以设计出数据库,只是数据库对象中只能包含数据,无法包含实施方法.在小型系统的开发中,数据库对象占据我们程序的主要部分,也是我们最熟悉使用的.

在完全使用脚本实施这些中小系统时,我们一般进行得很顺利,编制脚本,将用户的数据稍加处理后存入数据库,再进行一些必要的模块化功能实施,这样一个系统就很快完成了.

但是使用Java后,我们首先会碰到一个问题:数据库对象和Java的对象化思想是否矛盾?

其实,这是我们的思维将Java对象和数据库对象混淆起来,这应该是脚本语言编程者转到Java后常常遇到的问题.实际上,只要将数据库看成只是是数据的对象化,我们还需要程式来进行对数据库操作方法的对象化,这就能将两者统一起来,因此,方法实施可能就成为我们Java的接口类或抽象类的主要内容.

使用Java后,是否要抛弃我们以前脚本编程的经验,当然不是,相反,数据对象化是我们的起点和必经的阶段,使用Java实施中小型系统后,分两个步骤实施

1.数据模式实施
数据是血液,是系统的基本对象之一,所以,首先需要建立起系统的数据模型,重点在数据库对象化设计上,一旦建立好数据库,就能够迅速建立好相应的数据录入管理程序:数据Bean和Jsp,系统架构也能迅速见效.

这个模式是脚本语言的常见的思路,在这个模式中,JSP PHP ASP等脚本语言基本用于传递或简单处理数据,然后更新数据库,脚本程序在这里只起到一个输送渠道作用,服从于数据库的结构,或者说.这只是一个数据层.

在数据层的编程中,基本是比较简单重复性高的数据操作,而且和用户界面关系联系密切,属于视图处理部分,因此需要大量使用JSP.

2.设计模式实施
随着系统的数据框架构建成功,相当于人体胚胎的血管形成,血液(数据)就可以沿着血管(数据结构)输送人体各处,激发人体各种器官功能的形成,同样,数据模型实现后,我们可以在此基础上,就可以对象化思想开发大量的新功能(中间件).

Design pattern可以在中间件层发挥威力和作用,我们结合数据对象(数据库)和操作数据方法建立一系列抽象的接口或类,我们可以使用design pattern中的factory method或abstract factory来建立一系列工厂;可以使用proxy控制对数据访问的权限;可以使用Iterator来遍历我们的数据等等.

从脚本语言到Java转变,不只是工具的转变,而是思维和思想的飞跃.

相关文章:

软件最大的追求是什么?

初学者如何开发出一个高质量的J2EE系统?

数据库时代的终结

状态对象:数据库的替代者

Java/J2EE中文问题终极解决之道

更多软件开发讨论..