从脚本语言到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转变,不只是工具的转变,而是思维和思想的飞跃.

相关文章:

java是脚本语言吗_从脚本语言到Java相关推荐

  1. python自动化测试脚本怎么写_自动化测试脚本一般用什么语言写

    1. 自动化测试脚本一般用什么语言写 我主要是做web测试的,最近也在研究自动化测试. 自动化测试主流的工具应该是QTP吧,这个你可以去51testing论坛搜到很多相关的资料.QTP是一个商业软件. ...

  2. 电大java语言程序设计_国家开放大学电大Java语言程序设计形考任务1答案

    标准答案1:JDK 标准答案2:字节码 标准答案3:Android 标准答案4:javac.exe 标准答案5:num_green 标准答案6:num_blue 标准答案7:错误,变量声明错误 标准答 ...

  3. java中execution的作用_一文初步了解Java虚拟机

    大家都知道,Java中JVM的重要性,学习了JVM你对Java的运行机制.编译过程和如何对Java程序进行调优相信都会有一个很好的认知. 什么是JVM? JVM(Java Virtual Machin ...

  4. java反射获取方法内部_公共技术点之 Java 反射 Reflection

    本文为 Android 开源项目源码解析 公共技术点中的 Java 反射 部分 分析者:Mr.Simple,校对者:Trinea,校对状态:未完成 1. 了解 Java 中的反射 1.1 什么是 Ja ...

  5. 无忧考吧2017二级java_无忧考吧二级JAVA超级模拟软件下载_无忧考吧二级JAVA超级模拟软件官方下载-太平洋下载中心...

    无忧考吧二级JAVA超级模拟软件是一款可以帮助用户朋友来学习计算机二级java语言考试的软件,使用这款二级java模拟考试软件可以帮助用户快速的掌握学习内容和操作逻辑,让你顺利的通过二级java考试. ...

  6. python 为什么动态语言图片_聊聊动态语言那些事(Python)

    动态编程语言是高级程序设计语言的一个类别,在计算机科学领域已被广泛应用.它是一类在运行时可以改变其结构的语言:例如新的函数.对象.甚至代码可以被引进,已有的函数可以被删除或是其他结构上的变化.动态语言 ...

  7. java驱动pl sql优点_用PL/SQL和Java开发Oracle8i应用程序

    用PL/SQL和Java开发Oracle8 i应用程序 随着Oracle8i的发布,Oracle 在数据库里支持了二种主要的编程语言??PL/SQL和Java.今天,Oracle的许多客户既使用PL/ ...

  8. java异常没有catch住_今天才真正了解Java的异常处理

    异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. 异常发生的原因有很多,通常包含以下几大类: 1.用户输入了非法数据. 2.要打开的文件不存在. 3.网络通信时连接中断 ...

  9. java实现次方的运算_【技术干货】Java 面试宝典:Java 基础部分(1)

    海牛学院的 | 第 616 期 本文预计阅读 |18 分钟 Java 基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io 的语法, ...

最新文章

  1. 微软亚洲研究院副院长刘铁岩:以计算之矛攻新冠之盾
  2. 清华硕士在家造了一辆车,从设计到加工一个人完成,轻松穿沙漠爬岩石,还人人可拆装...
  3. [转]独立窗口打开多个Excel文件
  4. 面试必备,各种技术知识集大成之项目~
  5. android app 集成 信鸽推送
  6. 如约而至 Nexus 6 的 Android 7.1.1 已经上线
  7. vs 中自带的代码混淆器 Dotfuscator (图)
  8. eclipse插件开发(四) 流程图绘制插件(雏形)
  9. 如何判定括号是否匹配
  10. Reporting Services 空白页面
  11. C#-WebForm-JS知识:基础部分、BOM部分、DOM部分、JS事件
  12. 部分手机浏览器存在将ajax请求当成广告过滤的情况,及解决方案
  13. PostgreSQL 命令行客户端 psql 使用指南
  14. 美容院管理系统高效管理门店店务?
  15. Mybatis事务提交问题
  16. 巴比特独家丨从0.06%飙涨到30%,BAT在Compound的利率飙涨背后实际危机四伏
  17. 财务工具 - 编写一个等额本息反推利率的计算器
  18. C++ Learning
  19. 北师大计算机专业保研率,2020年北京师范大学保研率是多少
  20. C#爬虫,HttpClient请求,HtmlAgilityPack,HtmlDocument使用

热门文章

  1. java中resulttype,深入理解Mybatis中的resultType和resultMap
  2. 【Linux】低级IO
  3. 可爱的小兔子_会说话的艾米
  4. 中南财经政法大学计算机实践试题及答案,中南财经政法大学2010计算机应用基础期末考试试卷...
  5. setup,ref,reactive
  6. 【Optional类】JDK1.8新特性之Optional类的使用
  7. python学习 —— 使用QRCode包生成二维码
  8. Zbrush建模技巧分享
  9. python数据处理之批量下载
  10. JAVA程序员的日常工作是什么?一文告诉知道