当前位置: 首页 > news >正文

652SJBH动漫网站Cosplay

1 前言

1.1概述

作为一个动漫网站,首先布局一定要新颖、有特色,只有这样才能引起用户的关注,包含的信息要全面才能适合不同需要的人,最大限度的满足人们的需求,而且要有很强的交互性,交互性差的网站会让用户产生厌烦情绪。当然一个好的动漫网站还要有很完整的处理信息的功能,以便及时的更新网站中的信息。通过对用户的调查和对现有的动漫网站的分析,为了满足大多数用户的需求,所以我的目标是要构建一个页面简单清晰但包含信息相对全面、交互性强、具有个性的动漫网站。

1.2软件构件技术

构件(Component)是指应用系统中可以明确辨识的构成成分。而可复用构件(Reusable Component)是指具有相对独立的功能和可复用价值的构件。可复用构件应具备以下属性:①有用性(Usefulness):构件必须提供有用的功能;②可用性(Usability):构件必须易于理解和使用;③质量(Quality):构件及其变形必须能正确工作;④适应性(Adaptability):构件应该易于通过参数化等方式在不同语境中进行配置;⑤可移植性(Portability):构件应能在不同的硬件运行平台和软件环境中工作。
    随着对软件复用理解的深入,构件的概念已不再局限于源代码构件,而是延伸到需求、系统和软件的需求规约、系统和软件的构架、文档、测试计划、测试案例和数据以及其他对开发活动有用的信息。这些信息都可以称为可复用软件构件。
   
与传统的软件开发方式相比,基于构件的软件开发方法有什么突破呢?以下详述用构件化开发本系统的原因。

(1)体系结构: 软件体系结构代表了系统公共的高层次的抽象,它是系统设计成败的关键。其设计的核心是能否使用重复的体系模式。传统的应用系统体系结构从基于主机的集中式框架,到在网络的客户端上通过网络访问服务器的框架,都不能适应目前企业所处的商业环境,原因是:企业过分地依赖于某个新闻的软件和硬件产品。这种单一新闻使得企业难以利用计算新闻的免费市场,将计算基础设施的重要决定交给第三方处理,这显然不利于企业在合作伙伴之间共享信息。不能适应远程访问的分布式、多层次异构系统。封装的应用系统在出现某种组织需要时,难以用定制来维护系统,从而难以满足多变的需求。不能实现分析、设计核心功能重用,最多只能实现代码重用。如今,应用系统已经发展成为在Intranet和Internet上的各种客户端可远程访问的分布式、多层次异构系统。CBSD为开发这样的应用系统提供了新的系统体系结构。它是标准定义的、分布式、模块化结构,使应用系统可分成几个独立部分开发,可用增量方式开发。 这样的体系结构实现了CBSD的以下几点目标: 能够通过内部开发的、第三方提供的或市场上购买的现有构件,来集成和定制应用软件系统。 鼓励在各种应用系统中重用核心功能,努力实现分析、设计的重用。系统都应具有灵活方便的升级和系统模块的更新维护能力。 封装最好的实践案例,并使其在商业条件改变的情况下,还能够被采用,并能保留已有资源。由此看出,CDSD从系统高层次的抽象上解决了复用性与异构互操作性,这正是分布式网络系统所希望解决的难题。

(2)开发过程:传统的软件开发过程在重用元素、开发方法上都与CBSD有很大的不同。虽然面向对象技术促进了软件重用,但是,只实现了类和类继承的重用。在整个系统和类之间还存在很大的缺口。为填补这个缺口,人们曾想了许多方法,如系统体系结构、框架、设计模式等。自从构件出现以来,软件的重用才得到了根本改变。CBSD实现了分析、设计、类等多层次上的重用。在分析抽象层上,重用元素有子系统、类;在设计层上重用元素有系统体系结构、子系统体系结构、设计模式、框架、容器、构件、类库、模板、抽象类等。 在软件开发方法上,CBSD引导软件开发从应用系统开发转变为应用系统集成。建立一个应用系统需要重用很多已有的构件模块,这些构件模块可能是在不同的时间、由不同的人员开发的,并有各种不同的用途。在这种情况下,应用系统的开发过程就变成对构件接口、构件上下文以及框架环境一致性的逐渐探索过程。例如,在J2EE平台上,用EJB框架开发应用系统,主要工作是将应用逻辑,按session Bean、entity Bean设计开发,并利用JTS事务处理的服务实现应用系统。其主要难点是事务划分、构件的部署与开发环境配置。概括地说,传统的软件开发过程是串行瀑布式、流水线的过程;而CBSD是并发进化式,不断升级完善的过程。

(3)软件方法学 软件方法学是从各种不同角度、不同思路去认识软件的本质。传统的软件方法学是从面向机器、面向数据、面向过程、面向功能、面向数据流、面向对象等不断创新的观点反映问题的本质。整个软件的发展历程使人们越来越认识到应按客观世界规律去解决软件方法学问题。直到面向对象方法的出现,才使软件方法学迈进了一大步。但是,高层次上的重用、分布式异构互操作的难点还没有解决。CBSD发展到今天,才在软件方法学上为解决这个难题提供了机会。它把应用业务和实现分离,即逻辑与数据的分离,提供标准接口和框架,使软件开发方法变成构件的组合。因此,软件方法学是以接口为中心,面向行为的设计。归纳起来,CBSD的软件开发方法学应包括下面几方面: 对构件有明确的定义。 基于构件的概念需要有构件的描述技术和规范,如UML、JavaBean、EJB、Servlet规范等。开发应用系统必须按构件裁剪划分组织,包括分配不同的角色。 有支持检验构件特性和生成文档的工具,确保构件规范的实现和质量测试。总之,传统的软件方法学从草稿自顶向下进行,对重用没有提供更多的辅助。CBSD的软件方法学要丰富得多,它是即插即用,基于体系结构,以接口为中心,将构件有机组合,它把自顶向下和自底向上方法结合起来进行开发。

(4)开发组织机构 传统软件的开发组织一般由分析员、设计员、程序员和测试员组成。对一个小的应用系统来说,一个熟练的开发人员,可能兼顾以上多个角色。但对CBSD来说,因为构件开发与应用系统集成往往是分开进行的,因此整个开发过程由六个角色来完成,他们是:构件开发者也是构件供货商,这些大多数是中间件构件提供(续致信网上一页内容)者。应用构件集成者 针对某应用领域将已有构件组合成更大的构件模块或容器,作为系统部署的基本单元。应用系统部署者 将系统部署基本单元放入选定的平台环境或基本框架中,完成软件定制的要求。 开发平台服务器新闻 提供服务器、操作系统和数据库等基本软件。 应用系统开发工具新闻 提供构件公共设施服务。系统管理员 配置硬件、网络和操作系统,监督和维护应用系统者。这六个角色的工作专业性很强,要兼顾成为多面手很不容易。目前已形成构件开放市场,而且还很火红。这也是当今软件人才大战所遇的一个困惑。因此,在CBSD中,如何组织好开发队伍尤为重要,必须按本企业所具备人才来组织。特别重要的是:开发初期必须选好标准框架,以及统一的开发指导方针,保证在整个开发过程中,各角色能随时互相沟通。一般来说,CBSD的人员素质决定了构件的重用率。

(5)构造方法 :传统应用软件的构造是用白盒子方法,应用系统的实现全在代码中,应用逻辑和数据粘结在一起。而CBSD 的构造是用白盒子和黑盒子相结合的方法。基于构件的框架是用两个概念来支持演变:第一个概念是构件有很强的性能接口,使构件逻辑功能和构件模型的实现都隐藏起来。这样,只要接口相同,构件就可以被替换。第二个概念是隐式调用,即在基于构件的框架中,从来不直接给构件的接口分配地址,只在识别构件用户后才分配地址。因此,构件用户只要了解接口要求和为构件接口提供的引用后的返回信息 (该引用可能是一个构件,也可能是一个构件代理。对构件用户来说,构件代理就是构件,不用区分)。 构件接口的信息并不存入构件内,而是存入构件仓库或注册处。这样才能保证构件替换灵活,并很容易利用隐式调用去重新部署构件。由于构件的实现对用户透明,因此也使构件能适应各种不同的个性化要求。为此,构件提供自检和规范化两个机制。自检保证在不了解构件的具体实现时,就能获得构件接口信息。例如,JavaBean提供的自检机制是Reflection和BeanInfo,通过Reflection可直接获得Bean构件的全部方法,通过BeanInfo可直接获得构件的许多复杂信息。规范化允许不访问构件就可以修改它,如JavaBean提供的规范化是property sheet和customizer(定制器)。通过property sheet提供一组简单参数,修改Bean的属性。复杂的修改由用户通过定制器设置参数完成。

2需求分析

2.1任务概述

2.1.1 系统实现目标

本系统是一个基于Visual Studio.Net开发环境的动漫网站管理平台,采用B/S架构,该系统可以与其他ERP模块的管理系统结合成完整的销售流系统。为企业提供一个集中的,方便使用,可靠的,易扩展的销售管理平台。实现了企业在动漫游戏类产品销售方面的信息化,提高了企业的效率。为企业提供了一个比较完整的动漫网站解决方案。

2.1.2 系统用户的特点

动漫网站适用于中小型企业。本系统的主要用户有管理员、高级用户和普通用户。管理员需要具备一定的计算机知识,而且熟练撑握SQL语言,能够对数据库进行维护。而高级用户和普通用户,只需要了解一些计算机的基本操作就可以了。另外,管理员可根据本文档对软件在运行过程中出现的错误进行处理,而且可以基于本软件的基础进行扩展。

2.1.3 假定和约束

动漫网站必须在10月中旬完成,而且包括毕业论文。在开发过程期间,需要与辅导老师进行密切交流。以便对开发过程中遇到的问题能顺利解决。在完成用户的全部需求的前提下,合理对系统进行扩展,使系统更加完善。

2.2需要规定

2.2.1 对功能的规定

(1)商品管理:

    商品基本数据有商品类型、商品信息以及商品供给。对这些数据及时加以维护。功能包括:商品类型管理、商品信息管理、商品供给管理。

(2)新闻管理:

新闻基本数据有新闻类型、新闻信息。对这些数据及时加以维护。功能包括:新闻类型管理和新闻信息管理。

(3)网站管理:

根据商品名称、数量、单价、总额以及下单时间生成动漫网站订单,并经过确认后即可进行订单输出,最后下达给新闻,也可以网上发布订单。对于临时追加的动漫网站任务,可以通过与新闻协商直接下达动漫网站订单。订单下达后,还要经过审核才能发布,未经过审核的订单当作废。功能包括:增加订单和订单管理。

(4)用户管理:

包括管理员管理,主要用户管理管理员信息,添加修改和删除管理员。

(5)系统管理:

包括留言管理,公告管理,添加公告和注册协议和网站logo管理,对网站全局设置。

2.2.2 输人输出要求

对于部份数据类型的数据输入,系统可自动判断其正确性并且给予提示。例如,字符、数值、日期的类型输入错误等等。但对于数据输入的格式,就由用户自行决定。这一方面,系统不作严格要求。

2.3系统运行环境规定

2.3.1 硬件环境

  1.  服务端微型计算机配置:
  1. 操作系统:Windows2000 或 Windows XP ;
  2. CPU::奔腾三 1GMHz或以上
  3. 内存:512MB或以上
  4. 硬盘:80G或以上
  5. 数据库:Microsoft SQL Server 2000或以上
    1.  客户端微型计算机配置:
  1. 操作系统:Windows2000 或 Windows XP ;
  2. CPU::奔腾三 700MHz或以上
  3. 内存:64MB或以上
  4. 硬盘:10G或以上

2.3.2软件环境

  1. 开发软件:Microsoft Visual Studio .Net 2008;
  2. 开发语言:C#;
  3.   数据库软件:Microsoft SQL Server 2000;
  4.   文档编写软件:Microsoft Word

2.3.3 系统用户界面设计

(1)简单明了原则:用户的操作要尽可能以最直接最形象最易于理解的方式呈现在用户面前。对操作接口,直接点击高于右键操作,文字表示高于图标示意,尽可能的符合用户对类似系统的识别习惯。

(2)方便使用原则:符合用户习惯为方便使用的第一原则。其它还包括,实现目标功能的最少操作数原则,鼠标最短距离移动原则等。

(3)用户导向原则:为了方便用户尽快熟悉系统,简化操作,应该尽可能的提供向导性质的操作流程。

(4)实时帮助原则:用户需要能随时响应问题的用户帮助。

(5)提供高级自定义功能:为熟悉计算机及软件系统的高级用户设置自定义功能,可以对已经确定的常规操作以及系统的方方面面进行符合自身习惯的自定义设置。包括常规操作、界面排版、界面样式等种种自定义。

(6)界面色彩要求:计算机屏幕的发光成像和普通视觉成像有很大的不同,应该注意这种差别作出恰当的色彩搭配。对于需用户长时间使用的系统,应当使用户在较长时间使用后不至于过于感到视觉疲劳为宜。例如轻松的淡彩为主配色,灰色系为主配色等等。切忌色彩过多,花哨艳丽,严重妨碍用户视觉交互。

(7)界面平面版式要求:系统样式排版整齐划一,尽可能划分不同的功能区域于固定位置,方便用户导航使用;排版不宜过于密集,避免产生疲劳感。

3 概要设计

3.1 总体设计

3.1.1 需求规定

要求该软件能够对动漫网站管理所需的信息进行维护(包括:增加,修改,删除等)。动漫网站管理所需的信息包括:商品类型、商品信息、商品供给、新闻类型、新闻信息、订单、库存、用户等。具体数据库的设计请参见4数据库设计。另外,还包括一系列运算对一些日常事务进行处理。

3.1.2 N层架构技术

    一个N层的应用程序通常有三层。三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL),如图3-1所示。区分层次的目的即为了“高内聚,低耦合”的思想。

    (1)表现层(UI):表现层用于用户接口的展示,以及用业务层的类和对象来“驱动”这些接口。通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。在ASP.NET中,该层包括aspx页面、用户控制、服务器控制以及某些与安全相关的类和对象。

    (2)业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。业务层用于访问数据层,从数据层取数据、修改数据以及删除数据,并将结果返回给表现层。业务逻辑层在数据访问层之上,也就是说BLL调用DAL的类和对象。DAL访问数据并将其转给BLL。在ASP.NET中,该层包括使用SqlClient或OleDb从SQL Server或SQL SERVER数据库取数据、更新数据及删除数据,把数据通过DataSet 或DataReader的形式给BLL,BLL处理数据给表现层。有的时候,例如直接把DataSet 或DataReader送给表现层的时候,BLL是一个透明层。

返回的数据也许只有一个整型数字,比如一个表的行记录数目,但这也要用数据层的数据进行计算。

    (3)数据访问层(DAL):有时候也称为是持久层,其功能主要是负责数据库的访问,可以访问数据库系统、二进制文件、文本文档或是XML文档。数据层是数据库或者数据源。在.NET中,通常它是一个SQL Server或SQL SERVER数据库,但不仅限于此两种形式,它还可能是Oracle,MySQL,甚至是XML。该层所做事务直接操作数据库,针对数据的增添、删除、修改、更新、查找等。

    另外,需要强调的是,业务逻辑层无疑是系统架构中体现核心价值的部分。它的关注点主要集中在业务规则的制定、业务流程的实现等与业务需求有关的系统设计,也即是说它是与系统所应对的领域(Domain)逻辑有关,很多时候,也将业务逻辑层称为领域层。例如Martin Fowler在《Patterns of Enterprise Application Architecture》一书中,将整个架构分为三个主要的层:表示层、领域层和数据源层。作为领域驱动设计的先驱Eric Evans,对业务逻辑层作了更细致地划分,细分为应用层与领域层,通过分层进一步将领域逻辑与领域逻辑的解决方案分离。

业务逻辑层在体系架构中的位置很关键,它处于数据访问层与表示层中间,起到了数据交换中承上启下的作用。由于层是一种弱耦合结构,层与层之间的依赖是向下的,底层对于上层而言是“无知”的,改变上层的设计对于其调用的底层而言没有任何影响。如果在分层设计时,遵循了面向接口设计的思想,那么这种向下的依赖也应该是一种弱依赖关系。因而在不改变接口定义的前提下,理想的分层式架构,应该是一个支持可抽取、可替换的“抽屉”式架构。正因为如此,业务逻辑层的设计对于一个支持可扩展的架构尤为关键,因为它扮演了两个不同的角色。对于数据访问层而言,它是调用者;对于表示层而言,它却是被调用者。依赖与被依赖的关系都纠结在业务逻辑层上,如何实现依赖关系的解耦,则是除了实现业务逻辑之外留给设计师的任务。

3.2 系统设计

动漫网站是一个典型的网站,由前台浏览和网站后台管理两大部分组成。

(1) 前台功能模块

前台主要包括动漫首页、动漫新闻、动漫杂谈、动漫在线、留言本以及一些热门动漫网站和非动漫网站链接。首页是一个网站的起点,它展示了网站的整体风格,是否能吸引用户首页起着重要的作用。动漫新闻和杂谈模块主要用于显示动漫信息,便于用户浏览。动漫在线是为喜欢看动漫的人准备的,因为现在喜欢观看动漫的人快速增加,这已不再只是年轻人的喜好。留言本让动漫爱好者和动漫专业人员得到更多帮助。

(2) 后台管理模块

    后台主要包括后台登录模块、动漫新闻管理、动漫杂谈管理、动漫在线管理、管理员信息管理、退出后台。后台主要对前台的信息进行管理,管进员可以通过后台对前台的信息进行添加、修改、删除等操作,以便及时更新数据库的内容,从而更新前台信息,让用户能及时了解动漫信息。

4 数据库设计

4.1结构设计

4.1.1 概念结构设计

实体——联系方法(Entity—Relationship Approach)是最常用的表示概念性数据模型的方法。这种方法使用E-R图来描述现实世界中的实体,而不涉及这些实体在系统中的实现方法,即使不熟悉计算机技术的用户也能理解它。

4.1.2 逻辑结构设计

为了编码方便,表名与字段名一律采用英文字符命名。另外,为了提高可扩展性,各表的各字段会因具体需要进行类型与长度的定义。

1)关于整型类型的编号方面的信息,各表将以IDENTITY (1, 1)进行储存。2)关于字符类型的备注方面的信息,各表将以Varchar(32)进行储存;关于其他字符类型的信息,各表将以Varchar(64)进行储存。3)关于其数值类型的信息,各表将以Int进行储存。4)关于其日期类型的信息,各表将以DateTime进行储存。

在数据字典中,定义了各表的基本信息,具体情况可参见附录3数据字典主要内容。

逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图,转换为逻辑结构。

本系统的数据库通过physical design的数据库建模生成sql语句文件,在通过SQL SERVER 的查询分析器运行该文件生成数据库。4.2运用设计

4.2.1 数据字典设计

在表DataDict中储存的各表的基本信息,当中包括表的名称、表的别名、字段的名称、字段的别名、字段是否主键、字段是否外键、字段的数据类型、字段长度、字段的可选项、字段的备注等等。这样能为编码过程中带来极大的方便,使编码工作变得简单。而且,对于语言的扩展也非常方便,只需要通过增加表的别名各字段的别名就可以实现。此数据字典将会放在数据库NickERP中,程序可通过ODBC对此数据字典进行访问。关于数据字典的主要内容,请参见附录1 数据字典主要内容。

4.2.2 安全保密设计

在系统的使用过程中,用户可以对服务器、用户名与密码进行设置,并且可以选择是否保存所设置的信息。系统测试连接成功后就能正常使用系统。数据库维护人员可通过对数据库的用户、密码、访问权限进行设置。还可以进行对数据库的导出、导入,并进行保密设置,具有一定的安全性。

作为一个企业物资动漫网站,其中的产品数据资料属于内部资料,不能被外人所知,也不允许随意更改,系统须有保密措施。系统数据库将设置操作员表,将管理员名称和密码记录在操作员表中,拥有管理员权限的操作员才能操作数据库,非操作人员将则不能。因此,为保证系统正常运行,拥有权限的人员才能进行数据库操作。

对于一个数据库而言,安全性是指保护数据库不被破坏、偷窃和非法使用的性能。一个设计良好的安全模式能使用户的合法操作变得很容易,同时使非法操作和意外破坏很难或不可能发生。

5 实现与调试

5.1主要界面

http://www.xdnf.cn/news/34201.html

相关文章:

  • 嵌入式芯片中的 低功耗模式 内容细讲
  • 【NLP 66、实践 ⑰ 基于Agent + Prompt Engineering文章阅读】
  • linux socket编程之udp(实现客户端和服务端消息的发送和接收)
  • Springboot+vue3开发项目——热点事件
  • [特殊字符] 高质量 Java 综合题 × 10(附应用场景 + 多知识点考核)
  • Spring Boot常用注解全解析:从入门到实战
  • 洛谷P1120 小木棍
  • 《AI大模型应知应会100篇》第26篇:Chain-of-Thought:引导大模型进行步骤推理
  • 94. 二叉树的中序遍历
  • Simulink中建立交流单项永磁同步电机模型教程
  • python——列表和元组
  • 深入剖析 HashMap:内部结构与性能优化
  • Linux——进程概念
  • 网络开发基础(游戏)之 Socket API
  • [Java EE] Spring 配置 和 日志
  • 代码随想录训练营第35天 || 01背包问题 416. 分割等和子集
  • Vue基础(6)_键盘事件
  • 玛哈特整平机:工业制造中的关键设备
  • Java 动态代理实现
  • Python scikit-learn 机器学习算法实践
  • 【每天一个知识点】模式识别
  • MySQL进阶-存储过程-变量语法结构
  • C++用于保留浮点数的两位小数,使用宏定义方法(可兼容低版本Visual Studio)
  • JZ8P1533 充电型数字可编程控制器
  • 200+短剧出海平台:谁能成为“海外红果”?
  • 电脑端移植至手机平板:攻克难题,仙盟架构显神通——仙盟创梦IDE
  • 2025.04.19-阿里淘天春招算法岗笔试-第二题
  • 在RK3588上使用SRS流媒体服务器
  • kafka集群认证
  • NumPy 核心指南:零基础入门与实践