记事日历的设计与实现外文翻译资料

 2022-08-22 10:48:44

1.1 The Enterprise

Buried within the term 'enterprise' is the idea of a business taken wholistically. An enterprise solution identifies common problem domains within a business and provides a shared infrastructure for solving those problems. If your business is running a bank, your individual branches may have different business cultures, but those cultures do not alter the fact that they all deal with customers and accounts. Looking at this business from an enterprise perspective means abstracting away from irrelevant differences in the way the individual branches do things, and instead approaching the business from their common ground. It does not mean dismissing meaningful distinctions, such as the need for ilingual support in California branches.

Applying this view to software engineering, an enterprise system provides the proper abstractions for business concepts that are constant across a business so that they may be shared by all the different units within the company. In the Internet age, enterprise systems even go beyond sharing those business concepts within the company to sharing them with vendors, clients, and customers. A detailed look at an example of a manufacturing company can better illustrate how to look at a business from the enterprise perspective.

1.1.1 A Business in Need of an Enterprise Solution

For this example, the hypothetical manufacturing company, Wombles, Inc., makes all sorts of goods—toasters, blenders, tire irons, light bulbs, etc.—and has three major business units: North America, Europe, and Asia-Pacific. The company started out as an American company. As it grew, it acquired two other companies to gain a worldwide presence. All three business units have their own systems and are mostly ignorant about the issues involved in doing business in the other two regions. Marketing, however, has worked hard and successfully at creating a single, world recognized brand.

As long as each unit works within its own realm, everything runs smoothly. From the perspective of each unit working within its own realm, however, they might as well be three separate companies. Certainly, moving beyond the distinct realms of each business unit in this environment is a formidable task. What do you do if Asia-Pacific runs out of light bulbs but North America JDBC and Java 2nd edition experiences a light-bulb glut? What do you do if your distributors want a single interface into your inventory system? What do you do if your customers, who do not care that you are divided into three separate business units, demand direct and immediate online access via the Web?

An enterprise system answers all of these questions. You have one single repository of inventory and pricing information—a single repository that enables the individual business units to customize, but share this pricing information. Your vendors are then presented with a single interface into your inventory management, and web-enabling access to those systems is nothing more than writing Java servlets.

1.1.2 Requirements for a True Enterprise System

In order to solve enterprise problems, an enterprise system must exhibit certain characteristics. The goal of an enterprise system is simply to be able to represent business concepts to any possible user whether that user is an application within your business, an XML interface for your vendors or clients, or a web interface for your customers. An enterprise system enables you to worry about the specific issue of providing an appropriate window into your business for each audience without duplicating the effort required to capture the rules of your business—the things that never change. An enterprise system must therefore meet these requirements:

An enterprise system must have minimal proprietary components.

Avoiding proprietary components means, among other things, being platform- and databaseindependent. You cannot impose technical requirements on your vendors, clients, and customers. Do you think Amazon.com would sell any books if they required all visitors to run MacOS? This requirement, however, goes beyond simple platform requirements for your audiences. It also means being able to integrate new components into the system as technology evolves. It is much harder—and often impossible—to integrate new technologies with closed, proprietary components.

An enterprise system must be capable of supporting personalized user experience.

Personalized user experience comes in many forms—internationalization, localization, accessibility, personalization, and customization. Meeting this requirement means supporting the creation of user interfaces that can display content tailored to the language and cultural norms of the user interacting with the system. It also means supporting tools on the client that help make an application accessible to users with disabilities. Finally, an enterprise system needs to be able to study the way users interact with it so that it can better support each users unique mode of interaction.

An enterprise system must be the authoritative, shared source for the business concepts it represents.

All applications using concepts common across the business should reference the objects that represent those concepts from the same shared system. This does not mean that they are referencing the exact same processes on exactly the same servers. It means that any given concept has an authoritative location that is transparent to the client from which it can be referenced.

1.2 Java as a Tool for Enterprise Development

Java is really the only language in widespread use that can easily be used to build systems that meet the requirements I just listed for an enterprise system. Java is a standards-based language that is platform-independent. It has support for accessibility and internationalization and localization, including a Unicode basic character type, buil

剩余内容已隐藏,支付完成后下载完整资料


1.1企业

“企业”一词所包含的是企业的整体概念。企业解决方案识别业务中的公共问题域,并提供解决这些问题的共享基础结构。如果你的公司经营一家银行,你的各个分支机构可能有不同的商业文化,但这些文化并不会改变他们都与客户和账户打交道的事实。从企业的角度来看待这个业务意味着从各个分支机构做事情的方式中摘要出不相关的差异点,而不是从它们的共同点来处理业务。这并不意味着无视有意义的特质,比如加州分行需要双语支持。

将这个视角应用于软件工程,企业系统为商业概念提供适当的抽象,这些商业概念在整个业务中是不变的,因此它们可以由公司内的所有不同单位共享。在Internet时代,企业系统甚至不局限于在公司内部共享这些商业概念,还与与供应商、客户和客户共享这些概念。详细观察一个制造公司的例子可以更好地说明如何从企业的角度看待业务。

1.1.1需要企业解决方案的业务

举个例子,假设制造公司Wombles, Inc.生产各种各样的商品——烤面包机、搅拌机、轮胎熨斗、灯泡等等——它有三个主要的业务部门:北美、欧洲和亚太地区。这家公司最初是一家美国公司。随着公司的发展,它又收购了另外两家公司,以扩大其全球业务。这三个业务部门都有自己的系统,对其他两个地区开展业务所涉及的问题基本上一无所知。然而,市场营销通过努力并工作成功地创建了一个单一的,世界知名的品牌。

只要每个单位在它自己的领域内工作,一切就会顺利进行。然而,从在各自领域内工作的每个单位的角度来看,它们也可以是三个独立的公司。当然,这样的环境下在不同领域中的各个单位之间流转是一项艰巨的任务。如果亚太地区灯泡用完了,而北美地区灯泡供过于求,你该怎么办?如果你的经销商想要一个单独的接口接入到你的库存系统,你该怎么做?如果您的客户(他们并不关心您的公司被划分为三个独立的业务部门)要求通过Web直接地、即时地在线访问,您该怎么办?

企业系统可以回答所有这些问题。您有一个单独的库存和定价信息存储库—这个单独的存储库,允许各个业务部门共享这些定价信息,并进行编辑。您的供应商将向您的库存管理提供一个单一的接口,而对这些系统的web支持访问无非是是编写Java servlet。

1.1.2真实企业系统的需求

为了解决企业问题,企业系统必须表现出一定的特征。企业系统的目标就是能够向任何可能的用户表示业务概念,无论该用户是业务中的应用程序、供应商或客户的XML接口,还是客户的web接口。企业系统使您能够考虑为每个受众提供一个适当的业务窗口的具体问题,而不必重复捕获业务规则所需的工作——即永远不会改变的事情。因此,企业系统必须满足以下要求:

企业系统必须具有最少的专有组件。

避免使用专有组件意味着平台和数据库是独立的。您不能将技术需求强加于您的供应商、客户和客户。如果亚马逊网站要求所有的访问者都运行MacOS,你认为他们会卖书吗?然而,这个需求超出了为您的受众提供的简单平台需求。它还意味着随着技术的发展,能够将新的组件集成到系统中。整合新技术要困难得多,而且往往是不可能的使用封闭的专有组件。

企业系统必须能够支持个性化的用户体验。

个性化用户体验有多种形式——国际化、本地化、可访问性、个性化和自定义。满足这一需求意味着支持创建用户界面,以显示根据该语言定制的内容以及用户与系统交互的文化规范。它还意味着支持客户机上的工具,帮助残疾用户访问应用程序。最后,企业系统需要能够研究用户与它交互的方式,以便更好地支持每个用户独特的交互模式。

企业系统必须是it业务概念的权威共享源代表。

所有使用跨业务的公共概念的应用程序都应该引用对象表示来自相同共享系统的那些概念。这并不意味着它们在完全相同的服务器上引用完全相同的进程。它意味着任何给定的概念都有一个对客户机透明的权威位置,可以从该位置引用它。

1.2 Java作为企业开发工具

Java实际上是唯一一种广泛使用的语言,可以很容易地用于构建满足我刚刚列出的企业系统需求的系统。Java是一种基于标准的独立于平台的语言。它支持可访问性、国际化和本地化,包括内建在语言中的Unicode基本字符类型。最后,Java是一种面向对象的语言,其核心是数据库访问和分布式计算。

1.2.1 Java api和平台独立性

企业系统组件是否私有的一个重要测试是,另一个供应商是否可以在原则上提供该组件的黑盒实现。例如,Java虚拟机(JVM)是一种开放规范,其他人可以—有些人可以—为其编写独立的实现。然而,Java对这一需求的适用性超出了它是一种独立于平台的标准化语言这一事实。它还提供了大量的api,保证您可以在任何JVM上找到这些api,用于访问通常被昂贵的专用接口阻塞的硬件和软件资源。对于其最初的版本,Java规范规定了Sun所称的Java核心api——最低限度可用语言所需的基本对象。Java平台规范已经发展到包含许多其他api。以下是一些Java api的精简列表:

javabeantrade;

为了应对微软的ActiveX威胁,JavaSoft开发了javabean,一种用于创建软件组件的平台中立规范。JavaBeans规范的一部分实际上涉及到与ActiveX组件的接口。

Java Commerce

Java Commerce是一种基于internet的API,用于在不安全的网络上提供安全的经济交易。这个API包括Java Wallet,它是一个用于客户端信用卡、借记卡和电子现金交易的框架。

Java Core

Java Core由JDK 1.0发行版附带的库组成。它包括java。java applet。awt, java。io, java。lang、java.net和java。util包,并提供所需的核心功能级别,以便在Java中构建简单的applet和应用程序。

Java Embedded

Java嵌入式API使移动电话和烤面包机等设备能够提供Java Core的一个子集,这些设备可能无法支持全部的Java核心功能。

Java Embedded

Java Enterprise实际上由三个独立的库组成,它们提供对组织资源和应用程序的访问。Java数据库连接API(或DBC)提供数据库连接。使用JDBC,应用程序可以独立于用于数据存储的实际数据库引擎来执行数据库ccess。相同的应用程序可以编写一次,编译一次,然后使用JDBC驱动程序在任何数据库引擎上运行。

接口定义语言(IDL)使Java应用程序能够在Java对象和位于网络上的对象之间提供一种语言通用接口。它遵循对象管理组(OMG) IDL规范。远程方法调用(Remote Method Invocation, RMI)是一个特定于java的API,它允许对象调用位于网络上的对象中的方法。

与IDL不同,RMI是一个只支持java的解决方案。与使用套接字编写复杂的通信协议不同,应用程序可以通过简单的Java方法调用与远程对象通信。

Java Management

Java Management允许应用程序执行网络管理。

Java Media

Java Media创建了一个单一的API,使开发人员能够编写丰富的多媒体应用程序,并与各种多媒体硬件设备交互。媒体框架提供用于同步音频、视频和MIDI的时钟。2D和3D库提供了增强的图像类。动画API允许应用程序对2D图像执行转换。Telephony提供了一个应用程序,该应用程序具有一个用于访问一系列电话设备的API。

Java Security

Java安全API为开发人员提供了一个简单的API,用于增强applet或应用程序安全性,包括添加加密、加密和身份验证的能力。

Java Server

Java服务器是Java对CGI的回应。该API允许开发人员使用servlet与Internet服务器进行交互并对其进行增强,servlet是用户上载到网络或服务器上运行的可执行程序。

随着Sun公司开发出特定的API,它开始与相关API领域的主要行业参与者进行合作。在开发数据库访问API(本书的主题)时,Sun与一组数据库领导者合作,听取了大量的公众意见。下面列出了一些积极参与数据库API开发的公司。这些公司并非只是口头上支持这项技术。他们已经投入了时间和资金,以确保支持的力度足够大,能够为炒作提供实质内容。

BEA WebLogic Enterprise Intersoft Recital Corporation

Borland International, Inc. Intersolv RogueWave Software

Bulletproof Object Design SAS Institute Inc.

Cyber SQL Corporation Open Horizon SCO

DataRamp OpenLink Software Sybase

Dharma Systems Inc. Oracle Symantec

Gupta Corporation Persistence Software Thunderstone

IBM Presence Information Design XDB Systems, Inc.

Informix Pro-C Ltd.

1.2.2国际化、本地化和可访问性

Java是第一种内置了国际化和本地化功能的主流语言。这种支持的最基本证据是Java字符数据类型(以及基于它的字符串类)。Java字符是两个字节,Java字符串是Unicode,而不是ASCII。这意味着您可以在一个Java字符串中存储一个段落,其中包含各种语言的句子,而不需要任何编程技巧。

国际化和本地化涉及的不仅仅是字符集编码问题,Java认识到了这一点。Java为客户机应用程序提供了对其所运行的客户机的语言环境信息的直接访问。Java应用程序可以自动使用此区域设置信息来提供对区域设置敏感的字符串(如日期、货币和数字字符串)的适当显示。Java开发人员不需要知道围绕特定语言环境的本地化的任何问题—Java自动进行格式化。

对于开发人员来说,可访问性甚至更简单。实际上,除了遵循良好的用户界面编程实践外,Java开发人员完全不需要做任何事情就可以使应用程序具有可访问性。Java使用良好开发的用户界面提供的线索使该用户界面可访问。

Java对国际化和本地化的支持还有很多。对这些问题的充分讨论远远超出了本书的范围。

1.2.3跨业务共享业务概念

Java最强大的特性之一是对分布式计算的内置支持。Java RMI (Java Enterprise api之一)提供了这种支持。通过利用Java RMI,在Java中创建的业务对象可以被多个用户接口导出和共享。在新加坡的员工、休斯顿的分销商和在Web上购物的客户可以立即引用表示您有库存的烤面包机的相同业务对象。

业务对象不一定是业务概念。它只是一个术语,用于表示非技术问题领域的任何概念。对于我们的制造示例,product很可能是一个业务对象。然而,这个概念超出了业务范围。在一个在线幻想游戏中,像泥,剑,怪物,玩家和包都可能是业务对象。业务对象与其他类型的对象基本上是不同的,因为它们是共享对象,并且表示问题域中的一个概念。

1.3数据库

数据库是任何企业系统的核心。组成企业的共享业务对象需要某种方法来确保它们在时间上得到保存。数据库提供了这种存储机制。因此,任何声称是企业语言的语言都需要具有强大、可靠的数据库连接。

1.3.1 Java如何与数据库交互

几个重要的数据库概念构成了本书讨论的核心。本书假设读者对Java和数据库有基本的了解。您应该对SQL和事务管理有基本的了解。在此基础上,我们将讨论JDBC以及如何使用它来针对任何潜在的数据库引擎执行SQL。

1.3.1.1 SQL

Java数据库API JDBC要求使用的数据库支持ANSI SQL2作为查询语言。SQL语言本身值得成为出版领域中的一个小型行业,因此对它的介绍远远超出了本书的范围。然而,本书中的SQL没有涉及语言中更复杂的部分,而是坚持使用基本的DELETE、INSERT、SELECT和UPDATE语句。有关SQL的简短概述,请参阅第2章。

在后面的章节中,我只使用了存储过程的复杂性。存储过程是预编译的SQL,存储在数据库服务器上,通过命名过程并向其传递参数来执行。换句话说,存储过程很像数据库服务器函数。存储过程提供了一种简单的机制,可以将Java程序员与数据库问题隔离开来,并提高数据库性能。

1.3.1.2 JDBC

JDBC是一个SQL级别的API,它允许您将SQL语句作为参数嵌入到JDBC接口中的方法中。为了使您能够以一种与数据库无关的方式做到这一点,JDBC需要数据库供应商(如本章前面提到的那些)提供其接口的运行时实现。这些实现将您的SQL调用以其识别的专有方式路由到数据库。但是,作为程序员,您不必担心它是如何路由SQL语句的。JDBC提供的门面使您可以完全避免与特定数据库问题相关的任何问题;无论数据库是什么,都可以运行相同的代码。

1.3.1.3事务管理

事务

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[409485],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。