了解Tapestry,第2部分 - 规划和开发Tapestry应用程序 - JAVA - 面向对象技术开发

面向对象技术开发

会员投稿 投稿指南 站长资讯通告:
您的位置: 首页 > OOP语言 > JAVA > 正文

了解Tapestry,第2部分 - 规划和开发Tapestry应用程序

来源: www.bianceng.cn 阅读:

这个简短系列的第一篇文章 是 Tapestry 的介绍 —— Tapestry 是一个构建 Web 应用程序的轻量级框架。如果曾经阅读过那篇文章,应当对 Tapestry 的工作方式有了基本的理解,并了解了如何把它的核心 API 组合在一起。您可能还不敢确定如何从头开始实际开发 Tapestry 应用程序,但是在这篇文章中,我将解决这个问题。

我要从一种简单的应用程序规划方式开始,在使用 Tapestry 时,这个方式特别重要。然后,我将讨论 HTML 原型在 Tapestry 开发中的角色,并解释在编写 Tapestry 组件之前需要具备的元素。最后,我将介绍如何开发 Tapestry 组件,并把它们与 HTML 页面链接起来。您还会学到一些技巧,以确保您的规划能够适应使用应用程序的人,这是成功开发的关键,并介绍如何为了重用而规划和开发 Tapestry 组件。

规划应用程序

如果您属于某类开发人员,您可能会憎恨规划 这个词,认为应该把时间花在做些实际的事情上!但是,规划是开始构建 Tapestry 应用程序(或者其他类型的应用程序)的最好途径,所以我将从介绍如何尽可能没有痛苦地进行规划开始。

Tapestry 框架使用实际的 HTML 页面,把它们当作模板,并把这些模板与 Tapestry 组件链接在一起。然后通过部署描述符把所有这些捆绑在一起,形成耦合紧密且相当复杂的文件集。Tapestry 应用程序有以下的典型组件:

HTML 页面(被 Tapestry 当作模板)

Tapestry 类

Java bean 和工具类

servlet 部署描述符 (web.xml)

Tapestry 的应用程序描述符(app.application)

如果一个猛子扎进去开始开发应用程序代码,眼前很快就会充满杂乱的注释、难以寻找的 bug,以及有时已更新有时没更新的模板。规划是真正有效利用 Tapestry 的惟一途径,所以请尝试尽可能无痛苦地做规划的这个三要点方式。

从问题开始

规划的第一部分是询问一个简单但是非常重要的问题:这个应用程序要做什么? 虽然看起来可能微不足道 —— 甚至陈腐 —— 但是,这是对应用程序所能提出的最重要的问题。而且,令人惊讶的是,它又是最经常被忽略的。下面是在开发过程开始时一些比较常见的问题的列表(听起来挺熟?):

践踏客户和规范!

不,不是真的。即使您憎恨规划,如果没有与应用程序的利益相关者(stakeholder)沟通,那么就要准备失败了。不论代码有多漂亮,都必须按照客户的期望工作 —— 哪怕您对客户的期望不以为然,也要如此。所以,现在请保留对规划的判断(即,它有多讨厌),并尝试我在这里演示的方式。每次都会形成更好的应用程序!

要使用什么技术?

什么样的客户机(Web 浏览器、移动电话、PDA)要访问应用程序?

应用程序要在哪个平台上运行(Windows、Linux、Mac OS X、Sun Solaris,等等)?

什么时候必须完成?

这些都是有用的问题,但是如果应用程序实际做的工作不是利益相关者所期望的,那么所有这些都无关紧要。

把这应用于 Tapestry,如果不知道应用程序的基本目的,就不会写出好的 Tapestry 代码 —— 不论代码的技术有多漂亮。Tapestry 代码用于两个基本目的:

Tags:
相关文章列表: