程序开发范文10篇

时间:2023-03-23 21:03:51

程序开发

程序开发范文篇1

不得不说这一次求职我是认真的把它当作一个工程去做,客观得对自己进行了定位,而且非常重要的是明确我想要的工作到底是什么样的。我需要的是让我每天的8小时能够享受工作的快乐。

投简历面试的过程非常折磨人,尤其是我的处境(每天很大压力,完全是自我打磨的阶段)。

我清楚地记得面试现在这份工作那天是某个周六,我的经理"娃娃"和技术主管T同意我周末面试。一共4个小时,那绝对是一个互相争取的过程。他们对于工作的热情打动了我,觉得和这样的团队合作一定可以有火花。

真是幸运,当我正视错误,用行动做出改变的时候,找到了一份我要的工作。入职三周已经和团队磨合得很好了,用同事的话说就是觉得我已经加入很久了。

程序开发范文篇2

关键词:CDIO;雅典教学;程序开发

随着社会的进步,人类文明的发展,教学改革的步伐越来越快,各种教学方法,教学改革层出不穷。如何有效缩减高校与用人单位的对技术要求的差距,是每位教育工作者孜孜不倦的追求。CDIO培养将工程毕业生的能力分为工程基础知识、个人能力、人际团队能力和工程系统能力四个层面,要求以综合的培养方式使学生在这四个层面达到预定目标。探索一种能适应我校实情的具有可行性的CDIO教学模式,是本文研究的重点。

1多课程协调授课,构建一体化课程体系

老师们在上该课程之前,应该对课程所涉及的知识进行筛选和定位,通过完成一个整体项目为目标,学会综合使用各知识的技能。然后通过与其他相关课程老师进行协调,将项目按不同的知识点分解在不同的课程里,由相应的老师在自己课堂进行讲解,通过课程的相互配合,学生既学习了自己课程的知识,又能很好的将各知识进行整合,有效的提高了学生开发项目的整体意识、主观能动性和知识的把握度。

2全程演练,协同、自学、合作、能力提升为主线

在教学过程,老师有意识的讲解一些知识点,并有意识的向综合项目靠,学生通过相互学习,相互帮助,独立查找资料并解决相关问题,最终完成整个项目的设计、开发、测试过程。

3基于CDIO的课程体系设计

CDIO强调教学实践过程的工程化,通过构思、设计、实现、动作四个步骤组织每一个环节的教学活动。考虑到我校专科学生的认知水平和课程的特点,这里将教学过程分为基础教学和综合运用两个阶段,并按照软件工程开发流程,遵循程序设计一般步骤,通过线上线下多元教学活动,融合课堂内外两种学习形式,形成以学科知识为基础、实践应用为重点、CDIO能力为目标的分阶段、递进式“线上线下+雅典+CDIO”教学模式。

4CDIO教学模式应用案例

程序开发类课程是计算机专业核心课程,不仅要求学生掌握基本的技术知识,具备面向对象的程序设计思想,能用相应开发语言开发实际的应用程序,为充分发挥学生学习主动性,确保教学目标顺利实现,这里引入了“线上线下+雅典+CDIO”教学模式。4.1教学项目设计。实现CDIO教学模式,主要是对教学项目进行顶层设计,由于大部分学生没有项目开发经验,在课程中引入与现实相似的项目进行设计与开发,该项目以真实案例为蓝本,并将项目分解成若干小项目,方便学生理解与消化。小项目也是依据课程的内容和学生的接收能力,由浅入深,先易后难的原则进行,为便于学生重复学习,以及掌握其它课程的相关知识。4.2教学过程设计。任课老师首先要充分理解把控项目的各个知识环节,并了解学生在学习过程中可能会遇到的难点。通过各个小项目的实施,将各不相同的知识有机串联起来,并让学生能由浅入深,慢慢进入学习和开发状态。老师将容易出现的问题、学生容易忽视的情况,有意识的记录下来,在视频中细致讲解,并在介绍完相关知识点后,向学生提出针对生的问题让学生思考和解决。强化学生在学习过程中的考核检查力度。通过3~5人组成学习项目小组,各小组成员由组长带领,按功能划分,将任务进行分解与分配,每人在项目中扮演一种角色。使之更好的融入现实环境中。通过小组长的反馈和老师的不定期抽查,实现对每位学生学习情况、学习状态的跟踪管理。通过线上线下学习、将项目里所涉及到的知识点用视频的形式录制上传,要求学生必须在线学习操作一遍。线下课堂上,则在操作的时候老师讲解也较为方便,将更多的时间用在学生上机操作,以及向老师提问上。4.3效果展示与考核。为展示学生学习效果,在期末的时候,将学生以小组形式上台进行成果展示,每小组组长介绍项目的作用与功能,介绍项目的分解情况与小组成员的分配情况,介绍小组成员的学习情况。并对自己的工作模块与内容进行介绍与解答。成员一一上台讲解自己所承担的任务和工作情况,并介绍自己的学习收获与感想。其他小组成员则对上台的小组成员进行评分。通过学生与老师对小组成员的评分,能较为客观的将每位学生的学习情况进行考核。以达到成绩的公平公开公正的目的。

5结语

将线上线下+雅典教学理念引入程序开发课程的CDIO教学中,突破了时空限制,兼顾了学生的个体差异性,实现了从基础知识学习到CDIO能力培养的平滑过渡,为专科计算机专业教学改革提供了有益思路。

参考文献:

[1]陈卫民.基于CDIO的Android教学改革探索[J].当代教育实践与教学研究,2015(06).

[2]孙镇江.基于CDIO理论的《移动互联应用开发(An-droid)》课程教学模式改革探索[J].软件工程,2019(08).

程序开发范文篇3

关键字:计算机,工程应用,程序,开发

计算机程序或者软件程序(通常简称程序)是指一组指示计算机每一步动作的指令,通常用某种程序设计语言编写,运行于某种目标体系结构上。打个比方,一个程序就像一个用汉语(程序设计语言)写下的红烧肉菜谱(程序),用于指导懂汉语的人(体系结构)来做这个菜。通常,计算机程序要经过编译和链接而成为一种人们不易理解而计算机理解的格式,然后运行。未经编译就可运行的程序通常称之为脚本程序。

为了一个程序运行,计算机加载程序代码,可能还要加载数据,从而初始化成一个开始状态,然后调用某种启动机制。在最低层上,这些是由一个引导序列开始的。在大多数计算机中,操作系统例如Windows等,加载并且执行很多程序。在这种情况下,一个计算机程序是指一个单独的可执行的映射,而不是当前在这个计算机上运行的全部程序。目前中国国内的计算机语言应用认证主要有微软的MCSD、IBM以及SUN的SCJP,常用计算机语言主要包括C、C++、Java、Cobal、Fortran、Pascal等等,但除了Java可广泛应用于不同平台,其他语言都受到操作平台类型的限制,使编程工作复杂化,重复编程工作人员的劳动,降低了效率。因此Java也就越来越多地受到重视,被广大计算机工作者接受。特别是其基于internet的操作性,更使其方便地在网络上传播应用,加之其执行速度比其他开发语言要快,更适应现代经济发展的需要。我们可以乐观地预计Java不久将成为世界上最普及的计算机程序开发语言。编写一个程序去生成另外一个程序的过程被称之为原编程(Metaprogramming)。它可以被应用于让程序根据给定数据生成代码。单一一个程序可能不足以表示给定数据的所有方面。让一个程序去分析这个数据并生成新的程序去处理数据所有的方面可能会容易一些。Lisp就是一例支持这种编程模式的程序语言。

在神经网络里储存的权重是一种数据。正是这些权重数据,跟网路的拓扑结构一起,定义了网络的行为。人们通常很难界定这些数据到底表示什么或者它们是否可以由程序来代替。这个例子以及跟人工智能相关的其它一些问题进一步考验程序和数据的区别。

编写程序是以下步骤的一个往复过程:编写新的源代码,测试、分析和提高新编写的代码以找出语法和语义错误。从事这种工作的人叫做程序设计员。由于计算机的飞速发展,编程的要求和种类也日趋多样,由此产生了不同种类的程序设计员,每一种都有更细致的分工和任务。软件工程师和系统分析员就是两个例子。现在,编程的长时间过程被称之为“软件开发”或者软件工程。后者也由于这一学科的日益成熟而逐渐流行。

因此,如今程序设计员可以指某一领域的编程专家,也可以泛指软件公司里编写一个复杂软件系统里某一块的一般程序员。一组为某一软件公司工作的程序员有时会被指定一个程序组长或者项目经理,用以监督项目进度和完成日期。大型软件通常经历由系统设计师的掌握的一个长时间的设计阶段,然后才交付给开发人员。牛仔式的编程(未经详细设计)是不为人所齿的。

两种当今常见的程序开发方式之一是项目组开发方式。使用这种方式项目组里每一个成员都能对项目的进行发表意见,而由其中的某一个人协调不同意见。这样的项目组通常有10个左右的成员,这样做是为了便于管理。第二种开发方式是结对开发。在生活中,你通常只知道「喔!原来这网站是用Java写的」、「喔!原来这是手机的JavaGame」。若自技术层次拆解,JavaTechnology可简单区分为Java程序语言(language)与Java平台(platform)。

Java程序语言所指是撰写程序所需的语法与词汇,像学习中、英文,有一套基本的单字与语法,只要利用单字组出符合语法的句子,这就是Java程序的基础。

至于Java平台,如大家熟知的,Java共分三大平台:J2ME、J2SE和J2EE,分别专精于嵌入式行动平台、标准平台和企业应用平台,除了共同的类别函式库(API)之外,每个平台也有其特定的API,供程序设计师们开发使用。

随着开发工具陆续推出,降低了Java开发技术门坎,要写出正确无误的Java程序不是太难的事情,但论及系统性的Java软件开发,那可就不是一件轻松事。开发大型项目有三项非常重要的因素,将会影响整个项目的进度与质量,分别是人(people)、流程(process)与技术(technology)。

这三个要素是环环相扣的,任何一项要素的成败都会影响另外两个要素,与相关开发人员的素质,这不是一项简单容易的任务,但有好的方法可以完成。真正困难的不是Java程序语言或是API的使用,而是整个对象导向程序设计的概念。也标榜与Java有着类似的对象导向架构,除执行平台不同、API的名称不同,本质与Java可以算是孪生兄妹,在渐进式的开发过程中,透过不断的提炼(refine),可趁早发现问题且找出解决方法,也确保每一工作项目的进度。不过,在架构(Architecture)方面,RUP确实着墨较少,而架构优劣也是足以影响软件系统成败的关键因素。

QoS(QualityofService)或是SLR(ServiceLevelRequirement),我想是每个系统最基本的要求,它包含可用性(Availability)、可管理(Manageability)、可信赖(Reliability)、可扩充(Scalability)和安全性(Security)等条件。

程序开发范文篇4

关键词:Web应用程序;web.config;认证和授权;视图;存储过程

1前言

微软公司推出的,可以非常方便和高效地规划、设计、开发和Web网络应用程序。笔者利用为新疆职工培训中心开发了运行在校园网上的网络办公管理系统。该系统分为管理部门和教学部门两个角色,实现了数据存储、浏览查询和教学分析统计功能,提高了培训中心的信息化管理和校园网的利用价值。在整个系统的开发过程中,考虑最多的就是安全问题,相信这也是所有开发人员开发Web网络应用程序所必须面对的问题。因此本文针对基于的Web网络应用程序开发的安全问题,以我们开发的系统为例,从3个方面来阐述实际解决策略:

(1)系统规划阶段的安全策略;

(2)设计开发阶段的安全策略;

(3)运行阶段的安全策略。

希望我们的实践能对利用开发Web网络应用程序的相关技术人员提供参考和借鉴。

2安全策略实践

2.1系统规划阶段

Web网络应用程序,就是运行在Web应用服务器上的一个虚拟目录及其子目录下的所有文件、网页、模块以及可执行代码的总和。根据系统需求分析,用户分为管理部和教学部(对数据的操作权限有区分),因此建立两个目录分别存放相应的网页文件。另外,还有数据库文件夹、样式文件夹、网页模版文件夹等。而对数据库表的操作文件放在特殊的文件夹bin下,因为该目录是禁止任何浏览器访问的,从而避免了远程客户下载代码的可能性。应用程序根目录下除了上述目录外,还有两个重要的应用程序级文件:global.asax和web.config(下文详细分析)。总之,文件目录的规划是按类别存放文件,重要文件存在bin目录下。

2.2设计开发阶段

主要从后台的数据库设计、配置文件web.config及前台界面设计三个内容,着重阐述对安全问题的解决策略。

2.2.1数据库设计

为了提高访问数据的效率和安全性,能在后台做的事情,就在后台完成,能分开独立做的事情,就分开独立实现。

(1)充分利用后台数据库系统的视图和存储过程,如:创建带参数的视图,实现不同角色身份的用户对各自权限范围内的数据访问。

(2)报表设计及实现:Web应用程序实现动态报表,开始考虑用的数据控件Repeater,可以自由定义灵活的显示方式,但通常比较麻烦,而且在代码中字段名要出现,即:使用数据容器Container.DataItem("字段名")方式来显示数据内容,降低了数据安全性。我们的做法是利用BussinessObject公司开发的专业报表软件CrystalReports10设计报表,通过ODBC数据源与数据库连接,生成报表文件(*.rpt)后,在前台利用报表控件CrystalReprotViewer,将报表文件加载到页面实现各种报表。这种把数据源、报表文件、和页面显示文件分开独立实现,不仅丰富了报表显示样式和提高了网络报表生成效率,而且极大地提高了访问数据的安全性。

(3)用户口令存储问题:不要将实际的口令存储在数据库表中,因为口令直接放在数据库或文件中存在安全隐患,因此要存储加密后的口令。使用时,例如当用户登录时,对口令加密,然后与数据库中存放的加密口令进行比较。实现步骤如下:

首先,导入命名空间:<%@ImportNamespace="System.Web.Security"%>

其次,编写加密函数EncrytPwd:

FunctionEncrytPwd(PwdasString,PwdFormatasString)

IfPwdFormat="MD5"then

''''下面一行得到用MD5算法加密后的字符串

EncrytPwd=FormsAuthentication.HashPasswordForStoringInConfigFile(Pwd,"MD5")

''''下面一行得到用SHA1算法加密后的字符串

ElseifPwdFormat="SHA1"then

EncrytPwd=FormsAuthentication.HashPasswordForStoringInConfigFile(Pwd,"SHA1")

Endif

EndFunction

2.2.2配置文件web.config的安全设置

web.config文件是一个简单的XML文件,专门用于为应用程序配置系统设定、安全性设定、应用程序设定和会话设定。下面分5个内容介绍安全实践策略。

(1)数据库连接字符串常量:Web应用程序网页要大量用到数据库连接,为了提高程序安全性、通用性和可移植性,在配置文件中设置数据库连接字符串常量是很好的方法,在应用程序的web.config文件中添加如下语句:

网页文件使用时,用下列代码实现数据库连接:

DimstrConnAsString

strConn=ConfigurationSettings.AppSettings("sqlconntion")''''获取数据库连接字符串

(2)认证和授权:HTML表单验证(FormsAuthentication),是向开发人员提供确认客户凭证并控制访问权限的技术。在应用程序的web.config文件中添加如下语句:

授权:就是让用户拥有有效凭证,允许或拒绝访问Web应用程序。在web.config中添加如下语句:

(3)虚拟路径的设置:不同用户对不同目录访问权限不同,可以设定虚拟目录来实现

(4)设置调试模式提高安全策略:默认情况下,错误信息保存在栈中。如果开启调试模式,在运行中发生错误时,会显示错误行号,方便调试。可以在页面或web.config文件中开启调试模式。例如:

<%@pagedebug=”true”%>''''开启页面级调试模式

''''开启应用程序级调试模式

但程序时,要禁用调试模式,否则出错时,有泄露后台代码的隐患。

(5)页面出错处理策略:出错时转向统一的出错页面,而不必在每个网页中写代码,控制转向出错页面,避免了程序运行期间任何未处理的意外发生时,错误页面代码泄露或使用户不知所云的尴尬发生。页面出错处理可以应用下列策略实现:

(A)定制出错网页

这个设置可以保证当错误出现时,本地用户访问默认出错页,远程用户访问自定义的error.htm网页。

(B)处理特别的HTTP请求

对于HTTP错误状态代码,例如:403禁止,404无法找到,500服务器错误等,可以自定义各自的出错处理页面。如下所示:

2.2.3界面设计:代码分离和自定义控件

(1)代码分离:将程序代码和HTML内容分离,不仅能增强页面的条理性、易读性和团队开发的容易程度,更重要提高网页安全性。如:

前台aspx网页:peixun_base_

xiangmu.aspx.aspx

<%@RegisterTagPrefix="iewc"Namespace="Microsoft.Web.UI.WebControls"

Assembly="microsoft.web.ui.webcontrols"%>

<%@PageLanguage="vb"AutoEventWireup="false"Codebehind=

"peixun_base_xiangmu.aspx.vb"Inherits="pxb.MUTI"%>

而后台的peixun_base_xiangmu.aspx.vb文件,专门编写代码,实现代码和HTML内容分离。

(2)自定义控件:可以根据需要编写自定义控件,更好地提供可重用的封装逻辑,在使用自定义控件前,需要将定义它们的类文件编译成动态库,即:

vbc/t:library/r:system.dll/r:system.web.dll/out:pxbcontrols.dllcontrol.vb

将编写好的类文件(.vb)编译成动态库(.dll),可以供以后多次使用,由于封装了逻辑,且生成库,所以安全性得到保障。

除上述外,必须要重视记录日志。日志文件分系统日志和用户自定义日志。系统日志,如建立数据库日志文件;自定义日志文件:可以利用global.asax文件的session_onStart()事件与session_onEnd()事件实现自定义日志文件维护,例如:记录访问用户的登录名,访问时间,IP地址等信息,在应用程序根目录的global.asax文件内添加如下代码:

<%@ImportNamespace="System.IO"%>

SubSession_onStart(SenderAsObject,EAsEventArgs)

''''每一位客户登录时触发该事件

sw=NewStreamWriter(server.mappath("log/log.txt"),True,Encoding.Default)

''''将客户IP保存到Session中

Session("IP")=Request.ServerVariables("REMOTE_ADDR")sw.Writeline(Now()&"-用户"&Session("IP")&"进入")

sw.Close

EndSub

SubSession_OnEnd(SenderAsObject,EAsEventArgs)

''''当每一位客户超过会话时间没有和服务器交互,或关闭浏览器后触发该事件

sw=NewStreamWriter(server.mappath("log/log.txt"),True,Encoding.Default)

sw.Writeline(Now()&"-用户"&Session("IP")&"退出")

sw.Close

EndSub

2.3运行阶段:主要考虑如下方面

(1)关闭调试模式;

(2)备份转储数据库文件和日志文件;

(3)密码要不断更新;

(4)及时打补丁程序。

3总结

综上所述,基于的Web网络应用程序开发,在充分利用的安全机制、数据库安全控制、管理员网络安全防范意识的基础上,可以极大提高Web应用程序的安全性能。

参考文献

[1][美]StevenA.Smith等.用实例学.马燕,闫立军等,译.北京:电子工业出版社,2002.

[2][美]Web站点高级编程.康博,译.北京:清华大学出版社,2002.

程序开发范文篇5

在这个星期里,我们专业的学生在专业老师的带领下进行了c语言程序实践学习。在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,更多的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。

由于时间的关系,我们的这次实践课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。包括了程序模块处理。简单界面程序。高级界面程序。程序的添加修改。用程序做一元线性回归处理以及用c语言程序来画粒度分布图等这几样比较重要的时间操作。

上机实验是学习程序设计语言必不可少的实践环节,特别是c语言灵活、简洁,更需要通过编程的实践来真正掌握它。对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。

学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。因为学时所限,课程不能安排过多的统一上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基础。为此,我们结合课堂讲授的内容和进度,安排了12次上机实验。课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面:

1.加深对课堂讲授内容的理解

课堂上要讲授许多关于c语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用c语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。

学习c语言不能停留在学习它的语法规则,而是利用学到的知识编写c语言程序,解决实际问题。即把c语言作为工具,描述解决实际问题的步骤,由计算机帮助我们解题。只有通过上机才能检验自己是否掌握c语言、自己编写的程序是否能够正确地解题。

通过上机实验来验证自己编制的程序是否正确,恐怕是大多数同学在完成老师作业时的心态。但是在程序设计领域里这是一定要克服的传统的、错误的想法。因为在这种思想支配下,可能你会想办法去"掩盖"程序中的错误,而不是尽可能多地发现程序中存在的问题。自己编好程序上机调试运行时,可能有很多你想不到的情况发生,通过解决这些问题,可以逐步提高自己对c语言的理解和程序开发能力。

2.熟悉程序开发环境、学习计算机系统的操作方法

一个c语言程序从编辑、编译、连接到运行,都要在一定的外部操作环境下才能进行。所谓"环境"就是所用的计算机系统硬件、软件条件,只有学会使用这些环境,才能进行程序开发工作。通过上机实验,熟练地掌握c语言开发环境,为以后真正编写计算机程序解决实际问题打下基础。同时,在今后遇到其它开发环境时就会触类旁通,很快掌握新系统的使用。

3.学习上机调试程序

程序开发范文篇6

如果你是一名应用程序开发人员,你不会有太多时间花在数据库的建立上。这正是每个EAStudio产品内附AppModelerTM的原因。AppModeler以图形方式设计数据库,使任何开发人员建立数据库时,做得跟数据库管理人员一样出色,。

所以,当开发小组中的一员开始以AppModeler设计eMusic数据库的同时,其他小组成员则面临:针对应用程序各个不同部分,我们该使用哪一种技术。

步骤二:为用户选择技术

应用程序码的大部分是用来制作动态网站内容的格式和显示内容。eMusic必须有能力显示分类编排的CD目录,让使用者在需要深层分析某类产品或某张CD时,能取得更多信息。由于网站应用程序必须能高度扩充,且容易存取,所以技术小组决定用户端为瘦客户端(只需支持HTML和javascript)。

通过选用瘦客户端解决方案,技术小组保证,任何人只要拥有浏览器,就算是拥有老版本的浏览器,或国际互联网速度很慢的顾客,都可以利用eMusic网站来增加他们的音乐集。

EAStudio新增的WebDataWindow®完全符合瘦客户端的需求。开发人员可以利用DataWindowBuilder创建企业数据的显示方式。只要建立一个DataWindow,就可以在执行时间建立PowerBuilder、Java或Web用户端。因此,技术小组很快就为eMusic网站建立DataWindow,它可以显示数据库中各类音乐的清单,以及属于某一类音乐所有CD的清单。

步骤三:为eMusic网站设计网页

网站的开发并不是传统企业应用程序开发人员的职责,但若具备适当工具,这些开发人员也能很快成为网路开发人员。幸运的是,EAStudio提供了PowerSiteTM网站开发技术,可协助各类开发人员成为网络开发人员。

使用PowerSite,开发人员能快速建立网页,轻松拖曳一般网页组件——诸如HTML表格,以及其他HTML标识到网页——为客户特制各个网页。因此,技术小组就使用PowerSite迅速建构HTML网页,其中包括首页,以及确认使用者身份的顾客登入页。利用PowerSite,程序人员迅速编写为确认使用者身份的商业逻辑,当作服务器端描述语言。

你也能在PowerSite轻松建立需要动态内容,并使用DataWindow的网页。当浏览器请求网页时,EAServer会动态制作一个内含DataWindow的网页。因此,若是eMusic数据库新增一类音乐时,马上就可以显示在eMusic网站上。

步骤四:部署网站

在过去,网站的建立有时只完成一半的工作,因为部署实施工作同样困难。幸好,PowerSite可以让开发人员从开发环境部署网页。

值得一提的是,在部署期间,PowerSite将任何服务器端的描述语言码,从应用服务器独立模式转换到选作部署之用的应用服务器的语言。以eMusic网站为例,PowerSite部署应用服务器中立的描述语言,以便在EAServerDynaScript句法中确认使用者身份。PowerSite也可以为那些已经投资ActiveServerPage(ASP)服务器的厂家,把应用服务器中立的描述语言转换成ASP语法。

等到eMusic部署完成,技术小组大受鼓舞。他们在短时间内就建立一个网站,并展示来自数据库表格的动态内容。显然,由于DataWindow的功能,国际互联网上的资料变得异常简单。

步骤五:建立商业逻辑

到目前为止,技术小组已经在PowerSite开发eMusic网站,并以服务器端描述语言编好所有必要的逻辑。为了要使线上顾客可以下单购买CD,现在要编写真正的核心应用程序——商业逻辑,因为下单会牵涉到复杂的交易逻辑,诸如:核对客户信用资料,以及查看存货等。

选择工具

应用程序开发人员擅长编写商业逻辑程序码,且通常偏好某一种语言和组件模式。就许多情况而言,要PowerBuilder将商业逻辑程序码建立成非可视对象(NVO),是最有效率的做法。至于其他情况,可能需要Java、JavaBeans、其他语言或COM等组件模式。

EAServer可以灵活地部署交易用商业组件,它支持PowerBuilderNVO、JavaBeans、COM组件、C/C++组件,以及其他几种商业逻辑组件。一旦这些组件在EAServer部署完毕,任何用户端都可以存取这些组件——EAServer用户端可以是Web用户端、PowerBuilder用户端、COM用户端、Java用户端,或其他CORBA相容的任何用户端。EAServer内含的这些组件,不论是以什么语言编写,都可以互相沟通。因此,单笔EAServer交易可能涉及PowerBuilder与Java组件!

技术小组希望用PowerBuilder或是PowerJTM来建立交易组件,但最后决定:两者都用。技术小组表示,EAServer并不在乎以何去何种语言建立,而Web用户端则是不在乎使用何种组件。

决定组件

技术小组决定建立[购物车(ShoppingCart)]组件,以记录特定客户要购买的所有CD。购物车只需要2个外部公用方法(exteriorpublicmethods):利用[新增项目(additem)],将CD放入购物车;而[购物(purchasc)]方法,则让客户能下单定购车内所有商品。

技术小组为EAServer建立一个交易用[下单(order)]组件,可访问顾客信用资料,并查看产品数据库,以确保有足够的CD存货。技术小组可以很容易的从[购物车]组件内使用[下单]组件。利用EAServer可以为多个组件设置状态,让它们在单个事务中完成任务。若将购买一张CD定义为一个事务,那么[购物]与[下单]组件都将参与事务,万一有问题,任何一个组件有能力返回整个事务。

步骤六:企业组件编码

有了PowerBuilder与PowerJ,[购物车]组件的实际编码作业变得异常容易。由于PowerBuilder与PowerJ都是高效率开发工具,可进行数据库存取,因此它们使用购物车表格来维护客户的购物车。

利用DataStore组件,技术小组可在购物车表格上提供更新与检索功能,并利用许多内建的数据使用方法,建立自己的商业逻辑组件。这项组件对任何建立EAServer分散式应用程序的开发人员来说,都非常有价值。

步骤七:由网路客户存取组件

建立eMusicWeb网站的最后一步,就是设法从Web用户端,调用商业逻辑组件中[新增项目]与[购买]方法。使用PowerSite,技术小组可以很容易就将描述语言,连上HTML网页上适当的按钮,将CD加到购物车,购买车上所有产品。要为EAServer组件建立Java调用代码很简单,所以即便是PowerBuilderNVO组件,也可以利用JavacreateComponent方法,从EAServer描述性语言调用相应的NVO组件。

结语

建立一个可高度扩充的电子商务应用程序,本来是相当耗费人力的工作,最后却变得一点也不费事。这是因为使用DataWindowBuilder建立动态内容,再自动转换成HTML网页格式,几乎不需要编写任何HTML程序。由PowerSite负责的网站部署工作,以及商业逻辑组件的建立,都不会比为建立客户/服务器结构的应用程序更困难。

由于技术小组eMusic网站建置的成功,以及他们在北美7大城市宣扬其应用程序建构的经验与心得,并获得广大回响,都足以证明Sybase已经在电子商务应用程序开发领域取得领导地位。

程序开发范文篇7

论文摘要:网络数据库安全性问题是一直是围绕着数据库管理的重要问题,数据库数据的丢失以及数据库被非法用户的侵入使得网络数据库安全性的研究尤为重要。本文以比较常用的Access、数据库为例围绕数据库的安全性技术作了分析。

随着网络技术在社会各个行业尤其是电子商务领域的广泛应用,其安全性和可管理性具有十分重要的意义。数据库是网络信息系统的重要组成部分,涉及来自网络环境下的多方面安全威胁,譬如面对数据库中信息的窃取、篡改、破坏、计算机病毒等的渗透和攻击行为。

1网络数据库安全性策略分析

1.1系统安全性策略

1.1.1管理数据库用户

按照数据库系统的大小和管理数据库用户所需的工作量,数据库安全性管理者可能只是拥有create,alter、或delete权限的数据库的一个特殊用户,或者是拥有这此权限的一组用户。应注意的是,只有那些值得信任的用户才应该具有管理数据库用户的权限。

1.1.2用户身份确认

数据库用户可以通过操作系统、网络服务以及数据库系统进行身份确认,通过主机操作系统进行用户身份认证。

1.1.3操作系统安全性

数据库管理员必须有create和delete文件的操作系统权限;一般数据库用户不应该有create或delete与数据库相关文件的操作系统权限;如果操作系统能为数据库用户分配角色,那么必须具有修改操作系统账户安全性区域的权限。

1.2用户安全性策略

一般用户通过密码和权限管理实现系统的安全性保障;必须针对终端用户制定安全性策略。例如,对于一个有很多用户的人规模数据库,管理员可以决定用户组分类,您可以使用“角色”对终端用户进行权限管理。

1.3管理员安全性策略

保护作为服务器和用户的连接;保护管理者与数据库的连接;使用角色对管理者权限进行管理。

1.4应用程序开发者的安全性策略

明确应用程序开发者和他们的权限;指定应用程序开发者的环境;授权free和controlled应用程序开发。

2网络数据库安全技术分析

本文以比较常用的Access、数据库为例进行分析,其他数据库可以作为参考。

2.1Access数据库地址、路径过于简单

Access数据库被下载,主要是存放数据库的路径和数据库名称,容易被获知,例如:用户建立的xuesheng.mdb(学生信息库)放在虚拟目录/student下,如果没有事先对xuesheng.mdb进行安全加密处理,那么在浏览器的地址栏键入“http//用户网站主IP地址/student/xuesheng.mdb”,xuesheng.mdb整个文件就会被轻易下载,文件中所有的重要数据信息就会被别人轻易窃取。操作流程如图1所示。即使对Access.mdb的文件夹作了变动,文件路径也会暴露无疑。

获知源代码→获得路径→窃取文件名→下载文件

图1网络环境下数据库下载流程

2.2使用下载ASP文件所导致的数据安全问题

各单位的网络服务器一般都存有大量的应用系统账号及密码,如电子邮件、聊天室、BBS、留言簿、新闻系统等。由于网络管理员没有足够的时间与精力开发这些应用程序,所以多是采用直接从网上下载的方法来满足急用。这此程序的源代码是公开的,所使用的数据库名,存放路径没有任何秘密,如果安全措施不力,会给AccessDB的安全带来非常大的危险。如从网上下载了一个ASP应用程序,且Access.mdb的连接文件是conn.inc,在ASP程序中,Access.mdb连接的代码是:2.3服务器操作系统的安全隐患

现在使用WindowsNT/2000Sever作为服务器操作系统的用户非常主流,由于Win2000Sever目录权限的默认设置安全性较差,很多网管只知适让Web服务器运行起来,很少对NTFS进行权限设置。有的服务器甚至未禁止对文件目录的访问控制。因此,必然会带来很大的安全漏洞。

3安全对策及其实现

程序开发范文篇8

关键字EAStudio电子商务网站

SybaseEnterpriseApplicationStudio(EAStudio)3.0版的推出,使Sybase成为首屈一指的Web应用程序开发商。Sybase技术小组为响应用户的需求,想要开发一支实际使用的应用程序,以说明EAStudio3.0版对开发人员的益处。在经过讨论之后,技术小组决定建立一个电子商务网站。原因有二;电子商务网站是时下最热门的发财之道;此外,它可以充分展现网站架构的扩充能力。

技术小组决定设立一个名为eMusic的网站,在国际互联网上销售CD(在今年五月召开的PowerBuilder开发者大会上已经成功的进行了演示,效果非常好)。因为电子商务应用程序必须提供快速的网页服务功能,且能迅速处理商业交易。而EAServer正好能满足建立可扩充电子商务应用程序的一切需求,所以决定用EnterpriseApplicationServer(EAServer)作为eMusic网站的基础应用平台。

为了建立一个电子商务网站,技术小组通过7个步骤来完成:

步骤一:建立一个数据库

如果你是一名应用程序开发人员,你不会有太多时间花在数据库的建立上。这正是每个EAStudio产品内附AppModelerTM的原因。AppModeler以图形方式设计数据库,使任何开发人员建立数据库时,做得跟数据库管理人员一样出色,。

所以,当开发小组中的一员开始以AppModeler设计eMusic数据库的同时,其他小组成员则面临:针对应用程序各个不同部分,我们该使用哪一种技术。

步骤二:为用户选择技术

应用程序码的大部分是用来制作动态网站内容的格式和显示内容。eMusic必须有能力显示分类编排的CD目录,让使用者在需要深层分析某类产品或某张CD时,能取得更多信息。由于网站应用程序必须能高度扩充,且容易存取,所以技术小组决定用户端为瘦客户端(只需支持HTML和javascript)。

通过选用瘦客户端解决方案,技术小组保证,任何人只要拥有浏览器,就算是拥有老版本的浏览器,或国际互联网速度很慢的顾客,都可以利用eMusic网站来增加他们的音乐集。

EAStudio新增的WebDataWindow®完全符合瘦客户端的需求。开发人员可以利用DataWindowBuilder创建企业数据的显示方式。只要建立一个DataWindow,就可以在执行时间建立PowerBuilder、Java或Web用户端。因此,技术小组很快就为eMusic网站建立DataWindow,它可以显示数据库中各类音乐的清单,以及属于某一类音乐所有CD的清单。

步骤三:为eMusic网站设计网页

网站的开发并不是传统企业应用程序开发人员的职责,但若具备适当工具,这些开发人员也能很快成为网路开发人员。幸运的是,EAStudio提供了PowerSiteTM网站开发技术,可协助各类开发人员成为网络开发人员。

使用PowerSite,开发人员能快速建立网页,轻松拖曳一般网页组件——诸如HTML表格,以及其他HTML标识到网页——为客户特制各个网页。因此,技术小组就使用PowerSite迅速建构HTML网页,其中包括首页,以及确认使用者身份的顾客登入页。利用PowerSite,程序人员迅速编写为确认使用者身份的商业逻辑,当作服务器端描述语言。

你也能在PowerSite轻松建立需要动态内容,并使用DataWindow的网页。当浏览器请求网页时,EAServer会动态制作一个内含DataWindow的网页。因此,若是eMusic数据库新增一类音乐时,马上就可以显示在eMusic网站上。

步骤四:部署网站

在过去,网站的建立有时只完成一半的工作,因为部署实施工作同样困难。幸好,PowerSite可以让开发人员从开发环境部署网页。

值得一提的是,在部署期间,PowerSite将任何服务器端的描述语言码,从应用服务器独立模式转换到选作部署之用的应用服务器的语言。以eMusic网站为例,PowerSite部署应用服务器中立的描述语言,以便在EAServerDynaScript句法中确认使用者身份。PowerSite也可以为那些已经投资ActiveServerPage(ASP)服务器的厂家,把应用服务器中立的描述语言转换成ASP语法。

等到eMusic部署完成,技术小组大受鼓舞。他们在短时间内就建立一个网站,并展示来自数据库表格的动态内容。显然,由于DataWindow的功能,国际互联网上的资料变得异常简单。

步骤五:建立商业逻辑

到目前为止,技术小组已经在PowerSite开发eMusic网站,并以服务器端描述语言编好所有必要的逻辑。为了要使线上顾客可以下单购买CD,现在要编写真正的核心应用程序——商业逻辑,因为下单会牵涉到复杂的交易逻辑,诸如:核对客户信用资料,以及查看存货等。

选择工具

应用程序开发人员擅长编写商业逻辑程序码,且通常偏好某一种语言和组件模式。就许多情况而言,要PowerBuilder将商业逻辑程序码建立成非可视对象(NVO),是最有效率的做法。至于其他情况,可能需要Java、JavaBeans、其他语言或COM等组件模式。

EAServer可以灵活地部署交易用商业组件,它支持PowerBuilderNVO、JavaBeans、COM组件、C/C++组件,以及其他几种商业逻辑组件。一旦这些组件在EAServer部署完毕,任何用户端都可以存取这些组件——EAServer用户端可以是Web用户端、PowerBuilder用户端、COM用户端、Java用户端,或其他CORBA相容的任何用户端。EAServer内含的这些组件,不论是以什么语言编写,都可以互相沟通。因此,单笔EAServer交易可能涉及PowerBuilder与Java组件!

技术小组希望用PowerBuilder或是PowerJTM来建立交易组件,但最后决定:两者都用。技术小组表示,EAServer并不在乎以何去何种语言建立,而Web用户端则是不在乎使用何种组件。

决定组件

技术小组决定建立[购物车(ShoppingCart)]组件,以记录特定客户要购买的所有CD。购物车只需要2个外部公用方法(exteriorpublicmethods):利用[新增项目(additem)],将CD放入购物车;而[购物(purchasc)]方法,则让客户能下单定购车内所有商品。

技术小组为EAServer建立一个交易用[下单(order)]组件,可访问顾客信用资料,并查看产品数据库,以确保有足够的CD存货。技术小组可以很容易的从[购物车]组件内使用[下单]组件。利用EAServer可以为多个组件设置状态,让它们在单个事务中完成任务。若将购买一张CD定义为一个事务,那么[购物]与[下单]组件都将参与事务,万一有问题,任何一个组件有能力返回整个事务。

步骤六:企业组件编码

有了PowerBuilder与PowerJ,[购物车]组件的实际编码作业变得异常容易。由于PowerBuilder与PowerJ都是高效率开发工具,可进行数据库存取,因此它们使用购物车表格来维护客户的购物车。

利用DataStore组件,技术小组可在购物车表格上提供更新与检索功能,并利用许多内建的数据使用方法,建立自己的商业逻辑组件。这项组件对任何建立EAServer分散式应用程序的开发人员来说,都非常有价值。

步骤七:由网路客户存取组件

建立eMusicWeb网站的最后一步,就是设法从Web用户端,调用商业逻辑组件中[新增项目]与[购买]方法。使用PowerSite,技术小组可以很容易就将描述语言,连上HTML网页上适当的按钮,将CD加到购物车,购买车上所有产品。要为EAServer组件建立Java调用代码很简单,所以即便是PowerBuilderNVO组件,也可以利用JavacreateComponent方法,从EAServer描述性语言调用相应的NVO组件。

结语

程序开发范文篇9

关键字EAStudio电子商务网站

SybaseEnterpriseApplicationStudio(EAStudio)3.0版的推出,使Sybase成为首屈一指的Web应用程序开发商。Sybase技术小组为响应用户的需求,想要开发一支实际使用的应用程序,以说明EAStudio3.0版对开发人员的益处。在经过讨论之后,技术小组决定建立一个电子商务网站。原因有二;电子商务网站是时下最热门的发财之道;此外,它可以充分展现网站架构的扩充能力。

技术小组决定设立一个名为eMusic的网站,在国际互联网上销售CD(在今年五月召开的PowerBuilder开发者大会上已经成功的进行了演示,效果非常好)。因为电子商务应用程序必须提供快速的网页服务功能,且能迅速处理商业交易。而EAServer正好能满足建立可扩充电子商务应用程序的一切需求,所以决定用EnterpriseApplicationServer(EAServer)作为eMusic网站的基础应用平台。

为了建立一个电子商务网站,技术小组通过7个步骤来完成:

步骤一:建立一个数据库

如果你是一名应用程序开发人员,你不会有太多时间花在数据库的建立上。这正是每个EAStudio产品内附AppModelerTM的原因。AppModeler以图形方式设计数据库,使任何开发人员建立数据库时,做得跟数据库管理人员一样出色,。

所以,当开发小组中的一员开始以AppModeler设计eMusic数据库的同时,其他小组成员则面临:针对应用程序各个不同部分,我们该使用哪一种技术。

步骤二:为用户选择技术

应用程序码的大部分是用来制作动态网站内容的格式和显示内容。eMusic必须有能力显示分类编排的CD目录,让使用者在需要深层分析某类产品或某张CD时,能取得更多信息。由于网站应用程序必须能高度扩充,且容易存取,所以技术小组决定用户端为瘦客户端(只需支持HTML和javascript)。

通过选用瘦客户端解决方案,技术小组保证,任何人只要拥有浏览器,就算是拥有老版本的浏览器,或国际互联网速度很慢的顾客,都可以利用eMusic网站来增加他们的音乐集。

EAStudio新增的WebDataWindow®完全符合瘦客户端的需求。开发人员可以利用DataWindowBuilder创建企业数据的显示方式。只要建立一个DataWindow,就可以在执行时间建立PowerBuilder、Java或Web用户端。因此,技术小组很快就为eMusic网站建立DataWindow,它可以显示数据库中各类音乐的清单,以及属于某一类音乐所有CD的清单。

步骤三:为eMusic网站设计网页

网站的开发并不是传统企业应用程序开发人员的职责,但若具备适当工具,这些开发人员也能很快成为网路开发人员。幸运的是,EAStudio提供了PowerSiteTM网站开发技术,可协助各类开发人员成为网络开发人员。

使用PowerSite,开发人员能快速建立网页,轻松拖曳一般网页组件——诸如HTML表格,以及其他HTML标识到网页——为客户特制各个网页。因此,技术小组就使用PowerSite迅速建构HTML网页,其中包括首页,以及确认使用者身份的顾客登入页。利用PowerSite,程序人员迅速编写为确认使用者身份的商业逻辑,当作服务器端描述语言。

你也能在PowerSite轻松建立需要动态内容,并使用DataWindow的网页。当浏览器请求网页时,EAServer会动态制作一个内含DataWindow的网页。因此,若是eMusic数据库新增一类音乐时,马上就可以显示在eMusic网站上。

步骤四:部署网站

在过去,网站的建立有时只完成一半的工作,因为部署实施工作同样困难。幸好,PowerSite可以让开发人员从开发环境部署网页。

值得一提的是,在部署期间,PowerSite将任何服务器端的描述语言码,从应用服务器独立模式转换到选作部署之用的应用服务器的语言。以eMusic网站为例,PowerSite部署应用服务器中立的描述语言,以便在EAServerDynaScript句法中确认使用者身份。PowerSite也可以为那些已经投资ActiveServerPage(ASP)服务器的厂家,把应用服务器中立的描述语言转换成ASP语法。

等到eMusic部署完成,技术小组大受鼓舞。他们在短时间内就建立一个网站,并展示来自数据库表格的动态内容。显然,由于DataWindow的功能,国际互联网上的资料变得异常简单。

步骤五:建立商业逻辑

到目前为止,技术小组已经在PowerSite开发eMusic网站,并以服务器端描述语言编好所有必要的逻辑。为了要使线上顾客可以下单购买CD,现在要编写真正的核心应用程序——商业逻辑,因为下单会牵涉到复杂的交易逻辑,诸如:核对客户信用资料,以及查看存货等。

选择工具

应用程序开发人员擅长编写商业逻辑程序码,且通常偏好某一种语言和组件模式。就许多情况而言,要PowerBuilder将商业逻辑程序码建立成非可视对象(NVO),是最有效率的做法。至于其他情况,可能需要Java、JavaBeans、其他语言或COM等组件模式。

EAServer可以灵活地部署交易用商业组件,它支持PowerBuilderNVO、JavaBeans、COM组件、C/C++组件,以及其他几种商业逻辑组件。一旦这些组件在EAServer部署完毕,任何用户端都可以存取这些组件——EAServer用户端可以是Web用户端、PowerBuilder用户端、COM用户端、Java用户端,或其他CORBA相容的任何用户端。EAServer内含的这些组件,不论是以什么语言编写,都可以互相沟通。因此,单笔EAServer交易可能涉及PowerBuilder与Java组件!

技术小组希望用PowerBuilder或是PowerJTM来建立交易组件,但最后决定:两者都用。技术小组表示,EAServer并不在乎以何去何种语言建立,而Web用户端则是不在乎使用何种组件。

决定组件

技术小组决定建立[购物车(ShoppingCart)]组件,以记录特定客户要购买的所有CD。购物车只需要2个外部公用方法(exteriorpublicmethods):利用[新增项目(additem)],将CD放入购物车;而[购物(purchasc)]方法,则让客户能下单定购车内所有商品。

技术小组为EAServer建立一个交易用[下单(order)]组件,可访问顾客信用资料,并查看产品数据库,以确保有足够的CD存货。技术小组可以很容易的从[购物车]组件内使用[下单]组件。利用EAServer可以为多个组件设置状态,让它们在单个事务中完成任务。若将购买一张CD定义为一个事务,那么[购物]与[下单]组件都将参与事务,万一有问题,任何一个组件有能力返回整个事务。

步骤六:企业组件编码

有了PowerBuilder与PowerJ,[购物车]组件的实际编码作业变得异常容易。由于PowerBuilder与PowerJ都是高效率开发工具,可进行数据库存取,因此它们使用购物车表格来维护客户的购物车。

利用DataStore组件,技术小组可在购物车表格上提供更新与检索功能,并利用许多内建的数据使用方法,建立自己的商业逻辑组件。这项组件对任何建立EAServer分散式应用程序的开发人员来说,都非常有价值。

步骤七:由网路客户存取组件

建立eMusicWeb网站的最后一步,就是设法从Web用户端,调用商业逻辑组件中[新增项目]与[购买]方法。使用PowerSite,技术小组可以很容易就将描述语言,连上HTML网页上适当的按钮,将CD加到购物车,购买车上所有产品。要为EAServer组件建立Java调用代码很简单,所以即便是PowerBuilderNVO组件,也可以利用JavacreateComponent方法,从EAServer描述性语言调用相应的NVO组件。

结语

程序开发范文篇10

关键字EAStudio电子商务网站

SybaseEnterpriseApplicationStudio(EAStudio)3.0版的推出,使Sybase成为首屈一指的Web应用程序开发商。Sybase技术小组为响应用户的需求,想要开发一支实际使用的应用程序,以说明EAStudio3.0版对开发人员的益处。在经过讨论之后,技术小组决定建立一个电子商务网站。原因有二;电子商务网站是时下最热门的发财之道;此外,它可以充分展现网站架构的扩充能力。

技术小组决定设立一个名为eMusic的网站,在国际互联网上销售CD(在今年五月召开的PowerBuilder开发者大会上已经成功的进行了演示,效果非常好)。因为电子商务应用程序必须提供快速的网页服务功能,且能迅速处理商业交易。而EAServer正好能满足建立可扩充电子商务应用程序的一切需求,所以决定用EnterpriseApplicationServer(EAServer)作为eMusic网站的基础应用平台。

为了建立一个电子商务网站,技术小组通过7个步骤来完成:

步骤一:建立一个数据库

如果你是一名应用程序开发人员,你不会有太多时间花在数据库的建立上。这正是每个EAStudio产品内附AppModelerTM的原因。AppModeler以图形方式设计数据库,使任何开发人员建立数据库时,做得跟数据库管理人员一样出色,。

所以,当开发小组中的一员开始以AppModeler设计eMusic数据库的同时,其他小组成员则面临:针对应用程序各个不同部分,我们该使用哪一种技术。

步骤二:为用户选择技术

应用程序码的大部分是用来制作动态网站内容的格式和显示内容。eMusic必须有能力显示分类编排的CD目录,让使用者在需要深层分析某类产品或某张CD时,能取得更多信息。由于网站应用程序必须能高度扩充,且容易存取,所以技术小组决定用户端为瘦客户端(只需支持HTML和javascript)。

通过选用瘦客户端解决方案,技术小组保证,任何人只要拥有浏览器,就算是拥有老版本的浏览器,或国际互联网速度很慢的顾客,都可以利用eMusic网站来增加他们的音乐集。

EAStudio新增的WebDataWindow®完全符合瘦客户端的需求。开发人员可以利用DataWindowBuilder创建企业数据的显示方式。只要建立一个DataWindow,就可以在执行时间建立PowerBuilder、Java或Web用户端。因此,技术小组很快就为eMusic网站建立DataWindow,它可以显示数据库中各类音乐的清单,以及属于某一类音乐所有CD的清单。

步骤三:为eMusic网站设计网页

网站的开发并不是传统企业应用程序开发人员的职责,但若具备适当工具,这些开发人员也能很快成为网路开发人员。幸运的是,EAStudio提供了PowerSiteTM网站开发技术,可协助各类开发人员成为网络开发人员。

使用PowerSite,开发人员能快速建立网页,轻松拖曳一般网页组件——诸如HTML表格,以及其他HTML标识到网页——为客户特制各个网页。因此,技术小组就使用PowerSite迅速建构HTML网页,其中包括首页,以及确认使用者身份的顾客登入页。利用PowerSite,程序人员迅速编写为确认使用者身份的商业逻辑,当作服务器端描述语言。

你也能在PowerSite轻松建立需要动态内容,并使用DataWindow的网页。当浏览器请求网页时,EAServer会动态制作一个内含DataWindow的网页。因此,若是eMusic数据库新增一类音乐时,马上就可以显示在eMusic网站上。

步骤四:部署网站

在过去,网站的建立有时只完成一半的工作,因为部署实施工作同样困难。幸好,PowerSite可以让开发人员从开发环境部署网页。

值得一提的是,在部署期间,PowerSite将任何服务器端的描述语言码,从应用服务器独立模式转换到选作部署之用的应用服务器的语言。以eMusic网站为例,PowerSite部署应用服务器中立的描述语言,以便在EAServerDynaScript句法中确认使用者身份。PowerSite也可以为那些已经投资ActiveServerPage(ASP)服务器的厂家,把应用服务器中立的描述语言转换成ASP语法。

等到eMusic部署完成,技术小组大受鼓舞。他们在短时间内就建立一个网站,并展示来自数据库表格的动态内容。显然,由于DataWindow的功能,国际互联网上的资料变得异常简单。

步骤五:建立商业逻辑

到目前为止,技术小组已经在PowerSite开发eMusic网站,并以服务器端描述语言编好所有必要的逻辑。为了要使线上顾客可以下单购买CD,现在要编写真正的核心应用程序——商业逻辑,因为下单会牵涉到复杂的交易逻辑,诸如:核对客户信用资料,以及查看存货等。

选择工具

应用程序开发人员擅长编写商业逻辑程序码,且通常偏好某一种语言和组件模式。就许多情况而言,要PowerBuilder将商业逻辑程序码建立成非可视对象(NVO),是最有效率的做法。至于其他情况,可能需要Java、JavaBeans、其他语言或COM等组件模式。

EAServer可以灵活地部署交易用商业组件,它支持PowerBuilderNVO、JavaBeans、COM组件、C/C++组件,以及其他几种商业逻辑组件。一旦这些组件在EAServer部署完毕,任何用户端都可以存取这些组件——EAServer用户端可以是Web用户端、PowerBuilder用户端、COM用户端、Java用户端,或其他CORBA相容的任何用户端。EAServer内含的这些组件,不论是以什么语言编写,都可以互相沟通。因此,单笔EAServer交易可能涉及PowerBuilder与Java组件!

技术小组希望用PowerBuilder或是PowerJTM来建立交易组件,但最后决定:两者都用。技术小组表示,EAServer并不在乎以何去何种语言建立,而Web用户端则是不在乎使用何种组件。

决定组件

技术小组决定建立[购物车(ShoppingCart)]组件,以记录特定客户要购买的所有CD。购物车只需要2个外部公用方法(exteriorpublicmethods):利用[新增项目(additem)],将CD放入购物车;而[购物(purchasc)]方法,则让客户能下单定购车内所有商品。

技术小组为EAServer建立一个交易用[下单(order)]组件,可访问顾客信用资料,并查看产品数据库,以确保有足够的CD存货。技术小组可以很容易的从[购物车]组件内使用[下单]组件。利用EAServer可以为多个组件设置状态,让它们在单个事务中完成任务。若将购买一张CD定义为一个事务,那么[购物]与[下单]组件都将参与事务,万一有问题,任何一个组件有能力返回整个事务。

步骤六:企业组件编码

有了PowerBuilder与PowerJ,[购物车]组件的实际编码作业变得异常容易。由于PowerBuilder与PowerJ都是高效率开发工具,可进行数据库存取,因此它们使用购物车表格来维护客户的购物车。

利用DataStore组件,技术小组可在购物车表格上提供更新与检索功能,并利用许多内建的数据使用方法,建立自己的商业逻辑组件。这项组件对任何建立EAServer分散式应用程序的开发人员来说,都非常有价值。

步骤七:由网路客户存取组件

建立eMusicWeb网站的最后一步,就是设法从Web用户端,调用商业逻辑组件中[新增项目]与[购买]方法。使用PowerSite,技术小组可以很容易就将描述语言,连上HTML网页上适当的按钮,将CD加到购物车,购买车上所有产品。要为EAServer组件建立Java调用代码很简单,所以即便是PowerBuilderNVO组件,也可以利用JavacreateComponent方法,从EAServer描述性语言调用相应的NVO组件。

结语