Java语言的优点外文翻译.docx
- 文档编号:6657887
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:8
- 大小:26.80KB
Java语言的优点外文翻译.docx
《Java语言的优点外文翻译.docx》由会员分享,可在线阅读,更多相关《Java语言的优点外文翻译.docx(8页珍藏版)》请在冰豆网上搜索。
Java语言的优点外文翻译
中文译文
Java是灸手可热的Internet软件技术中的一种,而这些技术孕育了WorldWideWeb、"内部网"一类令人生畏的词儿以及名片上和电视广告中那些怪模怪样的地址。
最初,它是以一种利用图形动画来活跃Web页面的一种方法闻名,例如,股票报价从屏幕上慢慢移动和跳跃的图标,Java很快全面介入。
令微软公司惊愕的是,它很快成了一种被称作计算平台的东西--一个能让程序员开发应用软件的坚实基础。
Java正在使快速开发Internet上通信与协同工作的通用程序成为可能。
这里,我们不仅是谈论字处理、电子数据表,而且是能够处理销售、客户服务、记帐、数据库和人事资源管理的应用程序--它们是公司计算的基础。
Java也使争论中的一类新的称之为网络计算机(即PC)的便宜计算机成为可能,SUN、IBM、Oracle、Apple和其它公司希望这种计算机将在公司和家庭中普及开来。
Java工作的方法简单。
与那些要占用PC机硬盘多兆字节的普通应用软件不一样,Java应用程序,即小应用程序,是很小的程序,它常驻在网络中集中式的服务器上。
只有当你需要这种应用程序时,网络才把它们送到你的机器上;由于小应用程序比常规程序小得多,故下载不需很多时间。
比方说,你要检查一下西南地区的销售结果。
利用Internet浏览器找到能提交财务数据的公司内部网Web点,再用鼠标器点击一下或两下,便可调这些数字。
服务器将不仅快速给你数据,而且给出显示它所需的销售分析小应用程序。
这些数字在Java数据表中将浮现到你的屏幕上,因而你能即兴地使用它们,而不是麻烦地把它们调入你自己的数据表程序中。
为用图形表示这些数字,你可以调入作图表的小应用程序,让你漂漂亮亮地打印出报表来,而所有这些不必离开浏览器。
你也能得到最新最好的小应用于程序版本:
因为这种软件只存储在一个地方,公司的技术人员可较容易地使其保持最新。
然而,Java语言的真正优点是具有让用户省钱和省力,因为它大大简化了应用程序的开发与部署使用,而且让它们保留已有的"传统"计算机和软件。
Java程序一旦写好了,就能在任何一种计算机(PC机、Macintosh机、Unix工作站甚至是大型机)上无须修改就能运行。
基本的操作系统是没有差别的。
Java实际上给予了那些较旧的专用计算机(有变成废品风险的产品)新的生命。
在不到一年的时间内,Java已成了微软的PC操作系统Windows系列的主要挑战者,比DOS和Windows挑战传统的大型机和小型机的速度还要快。
Java也在成为最重要的Internet软件标准的道路上迅跑,使Sun超过Netscape和微软成为Internet计算的领袖
需求分析是要完成的最重要的任务之一,因为它回答了以下问题。
用户的问题有哪些?
计算机有帮助吗?
要求系统做什么?
解决问题的预备工作有哪些?
如果更进一步地研究index.jsp和form1.jsp(这两个JSP文件构成该应用程序),会发现另一个缺点:
错误处理相当笨拙。
错误处理代码是在form1.jsp中,其中我必须重复显示代码,并添加代码以插入用户在前一表单屏幕(index.jsp)中输入的值。
如果用户概要信息域曾更改过,或者如果输入表单的显示曾更改过,就必须更新这两个地方中的代码。
我可以将form1.jsp的错误处理部分与index.jsp中的初始表单显示结合在一起,但在初始表单装入时,我仍将需要做额外的工作以把域值设置成空字符串,并且我仍将需要有一个物理文件名来表示用户概要信息的最终静态显示,这意味着发生更改时,该应用程序结构仍是很脆弱的。
Struts表单自动化可以解决这种笨拙的表单处理缺陷。
现在,让我们研究刚才看到的Web应用程序示例中的Struts和Tiles版本。
请执行下列步骤:
转至EX2_INSTALL目录。
编辑build.xml文件,为struts.install.dir和tomcat.install.dir填写适当的值。
输入antdeploy。
这将把第二个示例应用程序构建到WAR文件中以备部署,然后将它部署至Tomcat。
如果看到关于无法复制文件的错误,请检查第2步以确保正确设置了struts.install.dir和tomcat.install.dir。
将Web浏览器指向http:
//localhost:
8080/ex2。
您应该会看到“Hello,World”页面。
如果您已看过EX2_INSTALL目录,您很可能会说:
“这里要做些什么呢?
有好多文件。
”与大多数强调更有序和结构化程度更高的技术一样,对于Struts和Tiles,在一开始需要在管理文件上花些工夫。
对于只有少许页面的小项目,这一额外开销可能微不足道。
然而,随着项目变大,Struts和Tiles方法逐渐会显示其优越性。
让我们一点点地体会吧!
这里我不想讨论EX2_INSTALL/src/WEB-INF/web.xml;尽管这个文件实质上与其示例1中相对应的文件不同,而且大多数行都是样板,但理解这些设置对于着手开发并不太重要。
在EX2_INSTALL/src/WEB-INF/struts-config.xml中,自先前有关Struts的文章以来重要的更改有在
在Struts的以前版本中,您必须为每个所使用的表单bean定义一个Java类。
仅当不同的HTML表单共享域时,才可以在这些表单之间共享表单bean。
总之,每个表单bean需要有一个Java类是一个非常麻烦的要求。
现在,您可以在struts-config.xml文件中指定表单bean的特性,而且是迅速地!
不必有保存Java类的单独文件,就能自动创建这种bean。
象处理Hashtable对象一样,用值的强类型对象来处理动态表单bean。
至于操作映射,一旦确定将Tiles库合并到Struts分发版之后,那么指定一个tile作为目标,就完全是增加一项逻辑而已。
您会在概要信息表单的操作映射中看到tile目标(tile.profileInput和tile.profileOutput)。
在input属性和path属性中指定tile。
注:
可以指定tile目标弥补了我在分析以页面为中心的模型中提到的更改文件名和位置中的缺陷:
tile目标是虚拟名称或逻辑名称,而不是物理名称。
在
您可以将定义命名为任何希望的名称,而且name属性不必是与path属性匹配的子字符串。
我为第一个定义选择了名称rootLayout,以表明它是应用程序中的页面要遵循的基本布局。
注:
路径是/tiles-layout/rootLayout.jsp。
如果查看EX2_INSTALL/src/web下的/tiles-layout/rootLayout.jsp,您会看到这种布局是多么的简单整齐。
用户界面的设计人员会“爱上它”。
还请注意:
它不包含任何代码,所以用户界面设计人员在进行更改时不必担心破坏什么。
rootLayout.jsp中的 insert/>标记对应于tiles-defs.xml中rootLayout定义内的 注: 每个 insertattribute="x"/>标记都有一个表示逻辑名称的属性。 每个逻辑名称映射至通过在tiles-defs.xml内的 通过在rootLayout.jsp页面中使用逻辑名称,而非物理名称,并通过在tiles-defs.xml中统一物理名称,我们就可以更改文件名,并使项目文件系统的组织易于管理。 真正节省时间和适应性方面最显著的增强方面体现在布局的继承,这是Struts的另一个特性。 在tiles-defs.xml中,“Pagedefinitions”栏下面的节有两个页面: tile.profileInput和tile.profileOutput。 这些名称是任意的,如果您不喜欢tile.前缀,可以不使用它(但是您使用的名称必须与struts-config.xml文件中指定的目标相匹配)。 这些名称应该与struts-config.xml中 这些名称还应该与struts-config.xml中 在开发用户界面时, 通过指定主布局并扩展它,您不仅能灵活更改象topBanner、topMenu、panel1、panel2这样的公共元素及其它组件,还能随意地将不同元素放在页面上及更改它们的位置。 例如,您可以添加panel4(一个tile)以在页面左侧的panel2下显示本地天气。 只要天气代码不需要用户的任何输入或与页面上的其它组件交互,您就可以添加panel4而不必对应用程序业务逻辑做任何更改,甚至不必更改除rootLayout.jsp以外的JSP页面。 篇幅所限,不允许我再深入讨论Struts和Tiles包其它一些实用的方面,但我真的想简要地谈一下,这样您可以对Struts和Tiles可以做些什么有所了解。 如果有足够的需求,可能这些内容会是将来文章的主题。 您会在本文的两个示例中注意到,我编码了名、姓、喜欢的颜色和出生日期等基本验证。 我所采用的这类简单验证实际上可由Struts通过使用它的格式验证来执行,这样节省了花在编码Java语句的时间。 例如,检查是否是空字符串、检查字符串是否与日期相匹配或检查是否与其它某些正则表达式匹配等,这都是可行的。 您会发现将格式验证用作第一级检查会是十分方便的,在检查是否符合更复杂的业务逻辑规则之前,程序可用第一级检查来消除一些明显错误。 Struts提供了一个验证器包,可以通过WEB-INF目录中的validator.xml描述符来配置该包。 在这两个示例中我没有包含该验证器包;如果您想试一下,它包含在Struts1.1-b1包中。 Struts和Tiles包的另一个有用特性是与容器管理的安全性相集成。 很多人都在使用诸如IBMWebSphere或JBoss之类的应用程序服务器。 这些服务器通过处理安全性中所涉及的许多日常任务使认证和授权更便捷,让您摆脱必须对它们进行的编码。 Struts允许您根据用户角色有条件地向不同用户显示bean数据的不同位,这可以通过自动查询容器来决定。 同样地,Tiles框架允许您根据用户角色有条件地向不同用户显示不同的视图组件,这也是通过自动查询容器来决定的。 我在自己的应用程序中使用这些特性向管理员、常规用户或guest用户显示不同的菜单。 最后要说明,我在示例中没有谈到国际化,但对于那些构建将来最终要以多种语言发布的大型应用程序的人来说,这实际是一个重要方面。 Struts让您创建消息资源特性文件,这些文件指定标签、标题和其它输出的文本。 如果您用几种不同语言的输出填入消息资源特性文件的话,只要简单更改语言设置就能将所有窗口构件和硬编码的文本更改成适当语言,甚至在应用程序运行中也可以更改。 Struts和Tiles将走向何方呢? 刚出现的两个更改必定会使Struts和Tiles更加有用。 第一个更改是工作流管理系统。 您很可能处理过许多多步骤的业务过程;目前,在Web应用程序中对它们进行编码可以是一个主要的麻烦,因为您必须协调不同的步骤,而每一步骤都是Java类中的一个单独方法或是一个单独的servlet或JSP页面。 商业市场中的工具通过使开发人员能对多步骤的业务过程进行建模,然后自动生成Java代码作为进一步开发的基础,来帮助管理这些过程。 Struts工作流管理系统将提供类似的功能,使开发人员能够编写业务过程的脚本,这些过程在Web应用程序中跨多个页面,并指定这些页面如何通过核心的基于规则的系统进行交互。 另一个同样有望即将出现的更改是将Struts标记合并到JSP标准标记库(JSPStandardTagLibrary)中,这个库是Jakarta项目,它试图产生一个有用的定制标记集合,从而简化并加快用JSP页面编写Web应用程序的开发。 其中的意义在于: Web应用程序的开发将比过去任何时候都更容易,因为您可以通过使用定制标记的标准机制得到一个在此基础上做进一步开发的预先编写好的代码库。 而且,JSPSTL标准中这个项目的合并甚至确保了Struts和Tiles功能更为广泛的分发和可用,这意味具有这种技能的开发人员在众多项目中大有作为,而且公司更加容易获得开发Web应用程序的熟练人才。 附录B英文原文 Javaisoneofthehyped-upInternetsoftwaretechnologiesthathavespawnedtheWorldWideWeb,awfulwordslike"intranet",andthosestrange-lookingaddressesonbusinesscardsandTVcommercials.OriginallyknownasawaytojazzupWebpageswithgraphicanimations--stocktickersthatcrawlacrossyourscreen,forexample,anddancingicons--Javahasquicklyevolvedintoawholelotmore.ToMicrosoft''sdismay,itisfastbecomingwhatisknownasacomputingplatform--asturdybaseuponwhichprogrammerscanbuildsoftwareapplications. JavaismakingpossibletherapiddevelopmentofversatileprogramsforcommunicatingandcollaboratingontheInternet.We''renotjusttalkingwordprocessorsandspreadsheetshere,butalsoapplicationstohandlesales,customerservice,accounting,databases,andhumanresources--themeatandpotatoesofcorporatecomputing.Javaisalsomakingpossibleacontroversialnewclassofcheapmachinescallednetworkcomputers,orNCs,whichSun,IBM,Oracle,Apple,andothershopewillproliferateincorporationsandourhomes. ThewayJavaworksissimple.Unlikeordinarysoftwareapplications,whichtakeupmegabytesontheharddiskofyourPC,Javaapplications,or"applets",arelittleprogramsthatresideonthenetworkincentralizedservers.Thenetworkdeliversthemtoyourmachineonlywhenyouneedthem;becausetheappletsaresomuchsmallerthanconventionalprograms,theydon''ttakeforevertodownload. SayyouwanttocheckoutthesalesresultsfromtheSouthwestregion.You''lluseyourInternetbrowsertofindthecorporateintranetWebsitethatdishesupfinancialdataand,withamouseclickortwo,askforthenumbers.Theserverwillzapyounotonlythedata,butalsothesales-analysisappletyouneedtodisplayit.ThenumberswillpopuponyourscreeninaJavaspreadsheet,soyoucannoodlearoundwiththemimmediatelyratherthanhasslewithimportingthemtoyourownspreadsheetprogram. Tographthenumbers,you''llcallinachartingappletthatwillletyouprintoutyourreportniceandpretty,allwithoutleavingyourbrowser.Andyou''llalwaysgetthelatest,greatestversionoftheappletstoo: Sincethesoftwareisstoredinonlyoneplace,corporatetechnicianscankeepituptodatamoreeasily. TherealbeautyoftheJavalanguage,however,isitspowertosaveusersmoney,becauseitvastlysimplifiescreatinganddeployingapplicationsandbecauseitletsthemkeeptheirexisting"legacy"computersandsoftware.Javaprograms,oncewritten,canrunwithoutmodificationonjustaboutanykindofcomputer: aPC,aMacintosh,aUNIXworkstation--heck,evenamainframe.Theunderlyingoperatingsystemmakesnodifference.Javaactuallycanbreathenewlifeintoolderspecializedcomputersthatwereatriskofbecomingobsolete. Inscarcelyayear,JavahasevolvedintoamajorchallengertoMicrosoft''sWindowsfamilyofPCoperatingsystems--fastereventhanDOSandWindowsrosetochallengetraditionalmainframesandminicomputers.JavaisalsowellonitswaytobecomingthemostimportantInternetsoftwarestandard,catapultingSunpastNetscapeandMicrosoftastheleaderinInternetcomputing. Therequirementsanalysisisoneofthemostimportanttaskstoundertake,becauseitanswerssuchquestionsas: •Whatistheuser’sproblem? •Willacomputerhelp? •Whatisthesystemrequiredtodo? •Whataresomepreliminaryapproachestotheproblem? Ifyoulookcloselyatindex.jspandform1.jsp,thetwoJSPfilescomprisingtheapplication,anotherdrawbackwillbeapparent: theerrorhandlingisquiteawkward.Theerrorhandlingcodeisinform1.jsp,whereImustrepeatthedisplaycodeandaddcodetoinsertthevaluestheuserenteredinthepreviousformscreen(index.jsp).Iftheuserprofilefieldseverchange,orifthedisplayoftheinputformeverchanges,Imustupdatecodeintwoplaces.Icouldcombinetheerrorhandlingportionofform1.jspwiththeinitialformdisplayinindex.jsp,butIwouldstillneedtodoextraworktosetthefieldvaluestoemptystringsupontheinitialformload,andIwouldstillneedtohaveaphysicalfilenameforthefinalstaticdisplayoftheuserprofile,whichmeansthattheapplicationstructurewouldremainfragilewhenchang
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 语言 优点 外文 翻译
![提示](https://static.bdocx.com/images/bang_tan.gif)