第一篇:基于web开发实习报告
基于web开发技术实
习报告
一、Web开发前端技术总结
什么是前端技术:
前端技术包括JavaScript、jquery、html5等“传统”技术与Adobe RIA、Google Gears,以及概念性较强的交互式设计,艺术性较强的视觉设计等等。
JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。基本特点:
是一种解释性脚本语言(代码不进行预编译)。
主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。[4] 跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行(如Windows、Linux、Mac、Android、iOS等)。
Javascript脚本语言同其他语言一样,有它自身的基本数据类型,表达式和算术运算符及程序的基本程序框架。Javascript提供了四种基本的数据类型和两种特殊数据类型用来处理数据和文字。而变量提供存放信息的地方,表达式则可以完成较复杂的信息处理。
日常用途:
1、嵌入动态文本于HTML页面。
2、对浏览器事件做出响应。
3、读写HTML元素。
4、在数据被提交到服务器之前验证数据。
5、检测访客的浏览器信息。
6、控制cookies,包括创建和修改等。
7、基于Node.js技术进行服务器端编程。特性
JavaScript脚本语言具有以下特点:(1)脚本语言。JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释。
(2)基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。
(3)简单。JavaScript语言中采用的是弱类型的变量类型,对使用的数据类型未做出严格的要求,是基于Java基本语句和控制的脚本语言,其设计简单紧凑。
(4)动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。在访问一个网页时,鼠标在网页中进行鼠标点击或上下移、窗口移动等操作JavaScript都可直接对这些事件给出相应的响应。
(5)跨平台性。JavaScript脚本语言不依赖于操作系统,仅需要浏览器的支持。因此一个JavaScript脚本在编写后可以带到任意机器上使用,前提上机器上的浏览器支 持JavaScript脚本语言,目前JavaScript已被大多数的浏览器所支持。
不同于服务器端脚本语言,例如PHP与ASP,JavaScript主要被作为客户端脚本语言在用户的浏览器上运行,不需要服务器的支持。所以在早期程序员比较青睐于JavaScript以减少对服务器的负担,而与此同时也带来另一个问题:安全性。
而随着服务器的强壮,虽然程序员更喜欢运行于服务端的脚本以保证安全,但JavaScript仍然以其跨平台、容易上手等优势大行其道。同时,有些特殊功能(如AJAX)必须依赖Javascript在客户端进行支持。随着引擎如V8和框架如Node.js的发展,及其事件驱动及异步IO等特性,JavaScript逐渐被用来编写服务器端程序。
Html5:万维网的核心语言、标准通用标记语言下的一个应用超文本标记语言(HTML)的第五次重大修改。许多业内人士表示,HTML将会最终代替多媒体框架,如Adobe的Flash,但是短期看来还不是时候。HTML5估计到2014年才能逐步成熟,而且将现有应用Flash的网络开发完全转向HTML5还需要一段时间。尽管HTML5提出了许多优点,但是还可能有某些应用更适合于更灵活的框架。一些主流的大公司都逐步转向使用HTML5,谷歌于2015年2月26日开始自动将Flash广告转换为HTML5格式,这可能会加速HTML5替代Flash的进程,但是这个转变的过程也不是一蹴而就的。
优点缺点 网络标准
HTML5本身是由W3C推荐出来的,它的开发是通过谷歌、苹果,诺基亚、中国移动等几百公司一起酝酿的技术,这个技术最大的好处在于它是一个公开的技术。换句话说,每一个公开的标准都可以根据W3C的资料库找寻根源。另一方面,W3C通过的HTML5标准也就意味着每一个浏览器或每一个平台都会去实现。
多设备跨平台
用HTML5的优点主要在于,这个技术可以进行跨平台的使用。比如你开发了一款HTML5的游戏,你可以很轻易地移植到UC的开放平台、Opera的游戏中心、Facebook 应用平台,甚至可以通过封装的技术发放到App Store或Google Play上,所以它的跨平台性非常强大,这也是大多数人对HTML5有兴趣的主要原因。
自适应网页设计
很早就有人设想,能不能“一次设计,普遍适用”,让同一张网页自动适应不同大小的屏幕,根据屏幕宽度,自动调整布局(layout)。
2010年,Ethan Marcotte提出了”自适应网页设计“这个名词,指可以自动识别屏幕宽度、并做出相应调整的网页设计。
这就解决了传统的一种局面——网站为不同的设备提供不同的网页,比如专门提供一个mobile版本,或者iPhone / iPad版本。这样做固然保证了效果,但是比较麻烦,同时要维护好几个版本,而且如果一个网站有多个portal(入口),会大大增加架构设计的复杂度。
jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。
JQuery Mobile 1.2是JQuery运行在手机和平板设备上的版本。JQuery Mobile 1.2给主流移动平台提供了JQuery的核心库,发布了一个完整统一的JQuery移动UI设计框架,在不同的智能手机和桌面电脑的web浏览器上形成统一的用户UI。支持全球主流的移动平台,对每个平台的支持分为三个等级:A、B、C,实现了对Android 2.1-2.3、3.2、4.0、4.1、windows Phone 7-7.5,Palm WebOS 1.4-2.0、3.0、Firefox Mobile 15,Opera Mobile 11.5-12等平台的A级支持。JQuery Mobile 1.2的核心使得基本的HTML标签在所有的浏览器中生效,并且对网页的行为和效果均进行了增强,让网页在等级较高的浏览器中能获得优秀的体验,在较差的浏览器中也能正常的使用。
二、Web开发后台技术总结
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现 形式。比如一批统计数据可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。
模型-视图-控制器(MVC)是Xerox PARC在二十世纪八十年代为编程语言Smalltalk-80发明的一种软件设计模式,已被广泛使用。后来被推荐为Oracle旗下Sun公司Java EE平台的设计模式,并且受到越来越多的使用ColdFusion和PHP的开发者的欢迎。模型-视图-控制器模式是一个有用的工具箱,它有很多好处,但也有一些缺点。
Struts
Struts是Apache软件基金下Jakarta项目的一部分。Struts框架的主要架构设计和开发者是Craig R.McClanahan。Struts 是Java Web MVC框架中不争的王者。经过长达九年的发展,Struts已经逐渐成长为一个稳定、成熟的框架,并且占有了MVC框架中最大的市场份额。但是Struts某些技术特性上已经落后于新兴的MVC框架。面对Spring MVC、Webwork2这些设计更精密,扩展性更强的框架,Struts受到了前所未有的挑战。但站在产品开发的角度而言,Struts仍然是最稳妥的选择。
Struts有一组相互协作的类(组件)、Servlet以及jsp tag lib组成。基于struts构架的web应用程序基本上符合JSP Model2的设计标准,可以说是MVC设计模式的一种变化类型。根据上面对framework的描述,很容易理解为什么说Struts是一个web framework,而不仅仅是一些标记库的组合。但 Struts 也包含了丰富的标记库和独立于该框架工作的实用程序类。Struts有其自己的控制器(Controller),同时整合了其他的一些技术去实现模型层(Model)和视图层(View)。在模型层,Struts可以很容易的与数据访问技术相结合,包括EJB,JDBC和Object Relation Bridge。在视图层,Struts能够与JSP, Velocity Templates,XSL等等这些表示层组件相结合。
MVC框架Spring
Spring实际上是Expert One-on-One J2EE Design and Development 一书中所阐述的设计思想的具体实现。在One-on-One 一书中,Rod Johnson倡导J2EE实用主义的设计思想,并随书提供了一个初步的开发框架实现(interface21 开发包)。而Spring 正是这一思想的更全面和具体的体现。Rod Johnson 在interface21 开发包的基础之上,进行了进一步的改造和扩充,使其发展为一个更加开放、清晰、全面、高效的开发框架。
框架和设计模式的区别
有很多程序员往往把框架模式和设计模式混淆,认为MVC是一种设计模式。实际上它们完全是不同的概念。
[7]
框架、设计模式这两个概念总容易被混淆,其实它们之间还是有区别的。框架通常是代码重用,而设计模式是设计重用,架构则介于两者之间,部分代码重用,部分设计重用,有时分析也可重用。在软件生产中有三种级别的重用:内部重用,即在同一应用中能公共使用的抽象块;代码重用,即将通用模块组合成库或工具集,以便在多个应用和领域都能使用;应用框架的重用,即为专用领域提供通用的或现成的基础结构,以获得最高级别的重用性。
框架与设计模式虽然相似,但却有着根本的不同。设计模式是对在某种环境中反复出现的问题以及解决该问题的方案的描述,它比框架更抽象;框架可以用代码表示,也能直接执行或复用,而对模式而言只有实例才能用代码表示;设计模式是比框架更小的元素,一个框架中往往含有一个或多个设计模式,框架总是针对某一特定应用领域,但同一模式却可适用于各种应用。可以说,框架是软件,而设计模式是软件的知识。
MVC控件
在ASP.NET MVC框架中没有了自己的控件,页面显示完全就回到了写html代码的年代。还好在 asp.net mvc框架中也有自带的HtmlHelper和UrlHelper两个帮助类。另外在MvcContrib扩展项目中也有扩展一些帮助类,这样我们就不光只能使用完整的html来编写了需要显示的页面了,就可以使用这些帮助类来完成,但最后运行时都还是要生成html代码的。
HtmlHelper类
HtmlHelper类位于System.Web.MVC.Html命名空间下。主要包括FormExtensions,InputExtensions,LinkExtensions,SelectExtensions,TextAreaExtensions,ValidationExtensions,RenderPartialExtensions等7个静态类,他们全部是是采用拓展方法来实现的。
InputExtensions类:主要有5种类型的扩展方法,分别用于CheckBox控件、Hidden控件、Pass控件、RadionButton控件和TextBox控件
LinkExtensions类:该类主要用于生成相关链接,主要扩展了ActionLink和RouteLink方法。
ActionLink:扩展方法主要实现一个连接,共有十个重载方法。
三、实习心得
实训期间,让我学到了很多东西,不仅使我在理论上对 IT领域有了全新的认识,在实践能力上也得到了提高,真正地做到了学以致用,更学到了很多做人的道理,对我来说受益非浅。除此以外,我还学会了如何更好地与别人沟通,如何更好地去陈述自己的观点,如何说服别人认同自己的观点。这一次亲身感受到理论与实际的相结合,让我大开眼界。也是对以前所学知识的一个初审吧!这次实训对于我以后学习、找工作也真是受益菲浅,在短短的几天中相信这些宝贵 的经验会成为我今后成功的重要的基石。
作为一名大二的学生,经过差不多二年的在校学习,对程序设计有了理性的认识和理解。在校期间,一直忙于理论知识的学习,只能偶尔练习一些小程序,没有机会也没有相应的经验来参与项目的开发。所以在实训之前,软件项目开发对我来说是比较抽象的,一个完整的项目要怎么来分工以及完成该项目所要的基本步骤也不明确。而经过这次实训,让我明白一个完整项目的开发,必须由团队来分工合作,并在每个阶段中进行必要的总结与论证。一个完整项目的开发它所要经历的阶段包括:规划和用例说明、项目结构和风险评估、业务功能说明书、详细设计说明书、代码实现、测试、操作手册。一个项目的开发所需要的财力、人力都是大量的,如果没有一个好的远景规划,对以后的开发进度会产生很大的影响,严重时导致在预定时间内不能完成该项目或者完成的项目跟原先计划所要实现的项目功能不符合。一份好的项目结构、业务功能和详细设计说明书对一个项目的开发有明确的指引作用,它可以使开发人员对这个项目所要实现的功能在总体上有具体的认识,并能减少在开发过程中出现不必要的脱节。代码的实现是一个项目开发成功与否的关键,可以说,前面所做的事情就是为代码的实现做铺垫。
经过几天的实习,我对开发平台有了更深一步的了解与深入,对MyEclipse 认识与使用也有了大大的提高。听课的时候不太明白这是怎样的一种设计模式,随着慢慢的深入开发,通过解决各种问题,体会到了这两个设计模式的一些要领。虽然后面和数据库连接时成功,但是却没有在数据库看到应该增加进去的内容,调试了很久还是没有成功,由于时间问题最后只好作罢。但是我有决心会去弄明白它。
四、参考文献
[1] Bruce Eckel.Thinking in Java[M].Upper Saddle River, New Jersey, USA: Prentice Hall, 2006
[2] 陈道鑫,宋绍云,袁中旺,等.ExtJS框架在Web软件开发中的应用[J].电脑知 识与技 术 2011, 07(9): 2044-2047
[3] 林信良.Spring2.0技术手册[M].北京:电子工业出版社,2005
[4](美)威尔德,斯尼德等著,赵利通译.SpringFramework 2入门经典[M].北 京:清 华大学出版社,2009
[5] 林寒超,张南平.Hibernate技术的研究[J].计算机技术与发展,2006, 16(11): 112-113,116
[6] 田珂,谢世波,方马.J2EE数据持久层的解决方案[J].计算机工程,2003, 29(22): 93-95
[7] 谭怀远.让Oracle跑得更快:Oracle 10g性能分析与优化思路[M].北京:电子 工业出版社,2011
[8] RFC2256: A Summary of the X.500(96)User Schaema for user with LADPv3 [J/OL]
[9] 王倩宜, 李润娥, 李庭晏.统一用户管理和身份认证服务的设计与实现[J].实验技 术与管理 2004,30(3): 236~239
[10] 李席广.基于LDAP的统一身份认证管理系统的设计与实现[J].科技信息(学术研 究), 2007,(19): 99-101
[11] 刘京华.Java Web整合开发王者归来[M].北京:清华大学出版社,2010
[12] 刘春晓,孟祥福,李昕.基于Jboss的数据库连接池研究与实现[J].微处理机: 2008, 29(1): 86-88
[13] Craig Walls, Ryan BreidenBach.Spring In Action[M].Manning Publications.2006
[14] 张孝祥.深入Java Web开发内幕——核心基础[M].北京:电子工业出版社.2006
[15] Joshua Bloch.Effective Java[M].Piscataway, N.J: IEEE Press, 2009
第二篇:web开发实习报告范本
web开发实习报告范本
一、实习目的
·让学生了解网站的制作流程和基本技法。.Dreamweaver的使用
·掌握利用IIS完成站点创建,学会站点的规划与创建,能自己创建个人网站和简单的企业网站。
·掌握利用SQL Server的企业管理器建立数据库和数据库表,巩固数据库基本命令的使用。
·掌握利用ASP访问与操作数据库的各种常用的功能及实现方法。·了解动态网页的制作技术,掌握与数据库的链接及简单的数据处理。·培训学生的动手能力、综合应用能力和团队合作能力。
二、实习要求
·按时、按地参加实习,遵守实习纪律,遵守实习场地的制度; ·爱护实习场地的所有实习设备,讲究公共卫生;
·做好实习笔记和实习记载,实掌握实习的每项内容;
·认真填写好实习报告、实习总结,实习完成统一交实习老师。
三、实习形式
·前一周完成ASP、SQL Server(或Access)以及DeramweacerMXXX的学习,要及时完成学习任务。
·后一两周进行网站综合开发实训,可分组进行。
四、实验内容
1.网站结构示意图
打开我的首页,然后点击zhufu按钮进入按钮界面,所示
newyears/
进入页面后有一首欢快的背景音乐,在祝福页面里,你可以向你的好友发表你的祝福,你可以对祝福查看和修改,并且还可以看到历史记录,页面右上角可以返回首页。
liuyan1/
回到主页再点击留言按钮,进入下一页面,你可以发表留言,不需要审核也能发表。
由于时间仓促,网站暂时到此,网站还在积极开设建设中,敬请期待你的到来
五、实训结果
实验基本成功
实训是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,通过上机练习来培养我们自身实践能力,这次网页布局训练就是其中之一。
这次的网页设计与制作让我收获颇丰。的确,从听老师解说到开始自己制作,从理论到实践,在这几节课的实操时间里,过程中不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。使我懂得了理论与实际相结合是很重要的,只有从理论中得出结论,才能真正为掌握技术,从而提高自己的实际动手能力和独立思考的能力。只有把布局的基础打好,才能设计出成功的网页
六,实训心得
首先我要做的就是要选择好题目和网站的风格,之后我就分步骤准备在制作网站前所要做好的准备工作。我浏览了日照职业技术学院以及相关网站的一些特点,借鉴这些网站的优秀之处,不好的地方在自己的网站上加以改良,从而使自己的网站更加美观。
回顾这次课程设计,至今我仍感慨颇多。的却。从选题到开始制作,从理论到实践,在实训机房日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。
在选择好题目和网站的风格之后,我就开始了实训项目的进程,按照实训方案的规定,先是将网站的总体策划以书面的形式展现出来,通过老师审核之后,在相应的时间段找相关的素材,搜集与主题相关的文字、图像等。再是设计网站的内容结构、目录结构和链接结构,设计首页及其页面的版式结构。然后创建本地网站,建立网站的目录结构。制作首页、二级子页、内容页,创建超级链接。最后就是测试与浏览网页,如果还有什么不理想的地方再改进再预览,如此反复,最后达到最好效果!
第三篇:ASPNET与Web程序开发实习报告
天津农学院
《ASP.NET与Web程序开发》
教学实习报告
题目:XXXXXXXXXXXXXXXXXXXXXXXXXX
学号:姓名:系别__________________专业:__________________班级:___________成绩:
(报告正文部分,文稿中将此段文字删除):
(要求:正文部分一律用小四号字,宋体,1.5倍行距。一级大标题靠左,加粗。二级,三级标题靠左,不加粗。文稿中将此段文字删除)背景与目的开发环境与开发工具主要功能设计与实现
4.1 数据库设计与实现
4.2 系统设计与实现讨论
参考文献
[1]
[2] …………………………………………………………………………..报告书写要求正文
1.1 标题层次的划分,一般为3~4级。第一级标题1;第二级标题1.1;第三级标题1.1.1;第四级标题1.1.1.1,依此类推。各级标题序号均用阿拉伯数字左起顶格书写,除结论 部分外,第一、二级层次要有标题。有标题时,在编号后空一格写标题,另起一行(缩两格)写具体内容。标题应简短明确,以不超过15字为宜,题末不用标点符号。
1.2 图:图上符号要清晰注出,所视部位与背景对比度要大。图上符号与正文完全一致,函数图的纵横坐标所代表的物理量要注出其中文名称、代表符号及法定计量单位(与坐标位置平行写出)。例如:重量m/kg
图纸不要贴在稿纸上,所有的图必须在文稿中留出相应的位置,并写出图号(全文连续编号)、图题和图注,图题要有自明性。例:“试验安排”应具体写为“×××××试验安排”。
1.3 表:务必使表格科学、简洁、自明,按国际要求采用三线表,表头不允许有斜线。物理量的中文名称、代表符号及法定计量单位三项要著录齐全,如:压力P/Pa。
参考文献的要求
正文中引用参考文献的序号按先后连续编码,并置于方括号([ ])中作为右上角码注出。a.译著
[1]□主要责任者.文献题名[文献类型标识].出版地:出版者,出版年.起止页码(任选).(中译本前要加国别)例如:
[1] [英]M奥康诺尔著,王耀先译.科技书刊的编译工作[M].北京:人民教育出版社,1982.56-57.b.专著
[2]□作者姓名.书名[M].出版地:出版社,年份.引用部分起页-止页.“-.” 都是半角。例如:
[2] 刘国钧,王连成.图书馆史研究[M].北京:高等教育出版社,1979.15-18.c.论文集
[3]□作者姓名.论文题名.论文集名[C].出版地:出版社,年份.引用部分起页-止页.“-.” 都是半角。例如:
[3] 王承绪,徐辉.发展战略:经费、教学科研、质量――中英高等教育学术讨论会论文集[C].杭州:杭州大学出版社,1993.120-150.d.学位论文
[4]□作者姓名.题名[D].出版地:出版者.年份.例如:
[4] 胡刚.蛋白质深度分析以及基因的进化模型[D].天津:南开大学,2005.e.报告
[5]□作者姓名.题目[R].地名:单位,年份.例如:
[5] 冯西桥.核反应堆压力管道与压力容器的LBB分析[R].北京:清华大学核能技术设计研究院,1997.f.期刊文章
[6]□作者姓名.论文题目[J].刊物名,年份,卷号(期号);引用部分起页-止页.“-.”都是半角。例如:
[6] 金显贺,王昌长,王忠东等.一种用于在线检测局部放电的数字滤波技术[J].清华大学学 报(自然科学版),1993,33(4):62-67.g.报纸文章
[7]□主要责任者.文献题名[N].报纸名,出版日期(版次).例如:
[7] 谢希德.创造学习的新思路[N].人民日报,1998-12-25(10).h.国际、国家标准
[8]□标准编号,标准名称[S].例如:
[8] GB/T16159-1996,汉语拼音正词法基本规则[S].j.专利
[9]□专利所有者.专利题名[P].专利国别:专利号,出版日期.例如:
[9] 姜锡洲.一种温热外敷药制备方案[P].中国专利:881056073,1989-07-26.k.电子文献
[10]□主要责任者.电子文献题名[电子文献及载体类型标识].电子文献的出处或可获得地址,发表或更新日期/引用日期(任选).例如:
[10] 王明亮.关于中国学术期刊标准化数据库系统工程的进展[EB/OL].,1998-08-16/1998-10-04.l.各种未定义类型的文献
第四篇:Web开发流程
Web开发的分散性和交互性,决定了Web开发必须遵从一定的开发规范和技术约定,只有每个开发人员都按照一个共同的规范去设计、沟通、开发、测试、部署,才能保证整个开发团队协调一致的工作,从而提高开发工作效率,提升工程项目质量。
一、项目的角色划分
如果不包括前、后期的市场推广和产品销售人员,开发团队一般可以划分为项目负责人、程序员、美工三个角色。
项目负责人在我们中国习惯称为“项目经理”,负责项目的人事协调、时间进度等安排,以及处理一些与项目相关的其它事宜。程序员主要负责项目的需求分析、策划、设计、代码编写、网站整合、测试、部署等环节的工作。美工负责网站的界面设计、版面规划,把握网站的整体风格。如果项目比较大,可以按照三种角色把人员进行分组。
角色划分是Web项目技术分散性甚至地理分散性特点的客观要求,分工的结果还可以明确工作责任,最终保证了项目的质量。分工带来的负效应就是增加了团队沟通、协调的成本,给项目带来一定的风险。所以项目经理的协调能力显得十分重要,程序开发人员和美工在项目开发的初期和后期,都必须有充分的交流,共同完成项目的规划和测试、验收。
二、开发工具的选取
不象C/S结构程序开发,可以一门语言从头到尾,你用Delphi,就是Delphi程序员,你用VC++,你就是VC程序员。B/S结构的Web开发工作,工具的选择是一件痛苦的事情。从Windows到Linux,从IIS到Apache,从J2EE到.NET,从COM到.NET到EJB组件……还有Asp、Asp.net、Jsp、Php、Perl、Javascript、Vbscript……
美工也轻松不了多少,什么“网页三剑客”“新网页三剑客”、FrontPage、Photoshop、CorelDraw……谁都说自己是最强大的!
我们的经验是,选用工具时最好是统一的,比如美工统一用DreamwaverMX制作网页,程序员全部用文本编辑器书写代码。统一工具的好处是可以保持同一个项目文档的一致性,便于开发人员的交流和文档的保存。
但是也不必刻意强求一致,比如美工可以使用任何自己熟悉的图形处理软件,只要最后能生成浏览器支持的图片就可以了。正是Web开发工具的多样性,才成就了今天互联网多姿多彩的局面。
只要程序员的纯Html和Javascript代码的功夫足够过硬,就能胜任最后的网站整合工作。
三、项目开发流程
如果项目真正谈下来了,就需要正式确定前阶段的需求分析,该补充的步骤必须补上。然后进行详细的总体设计,其实也基本是前阶段工作的重复和完善。
产生各栏目文件夹的结构图(一些公共文件夹如images、scripts、styles等需要固定存放,共同调用)。
然后由美工根据内容表现的需要,设计静态网页和其它动态页面界面框架,该切分的图片要根据尺寸切割开来。给需要程序动态实现的页面预留页面空间。制定字体、字号、超级链接等CSS样式等。
在美工设计页面的同时,程序员着手开发后台程序代码,做一些必要的测试。美工界面完成后,由程序员添加程序代码,整合网站。
由项目组共同联调测试,发现bug,完善一些具体的细节。
制作帮助文档、用户操作手册。向用户交付必要的产品设计文档。
然后进行网站部署、客户培训。
最后进入网站维护阶段。这一阶段也可以不包括在该项目中,而作为公司的服务内容。以上的每一部都会产生一些阶段性成果,项目经理需要及时进行监督、审核,发现问题及时纠正。
为了控制项目的进度,应当实施填写“项目进度表”制度,即每天填写工作日志,记录当天的工作细目和工作量,以及需要解决和已经解决的问题。
四、一些技术规则
1,数据库命名约定(参考了“匈牙利命名法”)
数据库(Database):格式[db]_[desc]。
表(Table):格式[tab]_[desc]。表名长度不能超过30个字符,单词首写字母大写,多个单词间不用连接符号。
字段(FieldorColumn):格式f_[type]_[desc]。f:表明这是一个字段名称;type:可选,表明字段类型,字符型为c,整型为i,逻辑型为b,货币类型为m,浮点型为f,日期型为d,时间型为t,二进制为bl。如果类型为字符型,可以省略。desc:对字段属性的有意义的描述,可以用英语单词、单词缩写、汉语拼音、字段实际含义的拼音缩写等,单词之间可以用单词首字母大写软分割(推荐),也可以用“_”隔开。举例:
f_name(姓名)
f_c_UserInfo或f_c_User_Info
f_xm(姓名)
f_grp_id(组标识)
索引(Index):格式[idx]_[desc]。
视图(View):格式[View]_[表A]_[表B]_[表C]…,其中View表示“视图”。这个视图由几个表产生就用连字符“_”连接几个表的名,如果表过多可以将表名适当简化。存储过程:格式[sp]_[表名]_[存取过程名(缩写)],比如sp_User_Delete。
触发器(Trigger):格式[trg]_[d][i[[u]_[desc]。trg代表触发器;d,i,u表明触发器类型(Delete,Insert,Update)定义,书写顺序为d、i、u;desc是表的名称,表明触发器所在的表。
数据库设备(DatabaseDevice):格式[dev]_[desc]。
约束(Constraint):格式[cns]_[desc]。
2,SQL语句书写规范
SQL语句中,SQL关键字全部大写,其它的遵照“数据库命名约定”。例如:SELECT*FROMtabNewsInfoWHEREf_UserName=’’ORDERBYf_i_autoid
3,文件夹命名约定
公共文件夹:
/images公共图片
/styles样式表
/scripts脚本
/ftps下载
/doc网站相关素材、文档
/readme.txt网站说明文档
/helps.htm网站帮助文档
/mylogs.txt网站维护记录
其它栏目的命名,可以用拼音首字母简称,也可以用英文单词。全部文件夹的含义在readme.txt文件中说明。
4,对象及变量命名约定
每个变量名必须先定义,再使用。在ASP文件的最开头添加语句<%OptionExplicit%>可以强制变量定义。代码块必须采用缩进格式。每个函数前必须标明函数的功能、输入参数、返回值的相关信息。
变量类型缩写前缀
Stringstr或s
IntegerInt
DateDt
Objectobj或o
Booleanbol或b
ByteByt
DoubleDbl
ErrorErr
LongLng
SingleSng
5,图形对象约定
图片的格式:最后生成jpg,gif,png,swf格式的图形文件
图片的字节大小:最大不能超过30k
图片的尺寸:根据需要确定,最好使用小图片,大的图片必须切割成小图片使用。图片的留白:图片的边界不能留白,图片只包含有效的色彩元素
6,媒体对象约定
流媒体的格式:asf,wmv,wma,rm,不建议使用avi格式的动画文件
7,页面布局的基本约定
中文段落必须有2个汉字的缩进。字间距采用默认大小。行间距为16pt~20pt。文字布局必须留有“天”“地”“左”“右”,不能把版面占满。
页面布局必须保持色彩平衡。注意上下、左右的呼应。注意页面的整体协调。提倡画面和文字的融合,而不是画面和文字的明显分离。
要按照设计广告的要求来设计网页页面-特别是一些产品展示性的页面。
五、一些经验和教训
1,能用静态网页表现的内容,尽量不用程序代码动态实现。
2,设计阶段,必须和用户进行充分的交流,完全、准确的了解用户的需求。既不能歪曲用户的意思,也不能一味迎合用户的非正当需求,也不能对自己没有把握的技术甚至不可能实现的技术夸下海口。需求分析是一个沟通、交流、引导、教育、斗争、妥协的过程。需求分析结果要有文字资料存档。
3,技术参数必须了解准确。比如用户的软件平台是linux系列,那你的系统就要考虑用Java或者Php加MySQL开发了,这时候你的ASP.NET技术就用不上了。
4,最好让用户对已经确定的需求内容签字,盖章。
5,任何交流,必须有书面记录。对一些喜欢“健忘”-实际上是懒惰的开发人员,要求他必须每天花10分钟写工作日志。
6,每个项目的有关文档,全部、统一集中归档。
第五篇:web项目开发总结报告
唐诗宋词学习网站项目总结
1引言
当下人们生活节奏飞快,能够在紧张的工作之余细细品读几首唐诗宋词,亦不失为一件美事。作为一个具有特色的学习网站,网站提供了颇具特色的唐诗宋词的学习功能,使用户能够在轻松的状态中学习。
1.1编写目的
本次项目总结主要是对唐诗宋词网站项目的总结,希望通过总结我们在开发过程中遇到的问题和采取的方法,对以后的项目开发起到一定的指导性的意义。从而提高我们组以后开发项目的效率和规范我们的过程。从客户的需求中提取项目应该实现的功能要求,为后期的构建提供指导。
1.2背景
鉴于当前互联网的快速发展,以及国家对中国传统文化的提倡,希望建设一个学习唐诗宋词的网站,帮助推动对传统文化的传播和继承。
2实际开发结果
2.1产品
唐诗宋词学习网站
2.2主要功能和性能
● 普通的游客,以未登录的状态浏览网站的网页,本网站只提供搜索和在线阅读功能;
● 诗词搜索:用户可以根据诗名、词名、词牌名、内容关键字等词条进行搜索;
● 作者搜索:用户根据喜爱的诗人或者词人的名字进行搜索; ● 用户根据以上的搜索的结果,选择查看;
本网站为注册的会员提供了除以上的服务外,更具有吸引力的功能:
收藏列表:
● Favorite list:用户可以将自己喜爱的诗和词加入到Favorite list 中;
● New poem list:用户可以将自己喜爱的新诗词加入此列表,此表中的诗词是以后在线学习和复习的内容;
● 在线学习,并完成测试的诗词会被自动加入到Favorite list中; 收藏列表的管理:用户拥有对自己列表自主管理的权利,如增加新的诗词、删除等操作 ● 分享到微博:用户可以将喜爱的时、词分享到微博,推荐给好友阅读;
● 在线学习:用户通过在线学习的板块可以记忆自己喜爱的诗词。
学习分为三个难度等级:初等、中等、高等。网站同时为在线用户提供记忆提醒,为用户推荐最佳的复习时间、安排复习的内容。
2.3基本流程
同概要设计流程
2.4进度
系统规划阶段 需求分析阶段 项目功能实现 系统测试阶段 系统界面美化 项目验收阶段
标志性事件 开始到完成
系统需求说明书完成 11.20-11.30 基本代码的生成 测试文档产生 接受公开的测试 对项目功能的演示
12.1-12.16 12.17-12.23 12.24-12.30 12.31-1.5 3开发工作评价
3.1对生产效率的评价
本次项目中,由于组员之前缺少默契,对项目的了解程度不是很 好。所以前期的时候,小组的效率非常低,对自己能力的高估和对项目的工作量不清楚是造成效率低的主要原因。同时,随着项目的进展,采用的结对编程使组员之间形成了一种默契。鉴于对以前SSH框架的初步了解和对项目的深入理解,中后期的生产效率还是有一定的提高。但是与程序员的真实水平相差很远。
3.2对产品质量的评价
1.对于网站初期的规划的唐诗宋词的增删改查功能。2.诗词作者信息的增删改查功能。
3.收藏列表的增删改查和添加删除诗词功能。4.生诗词库的建立和考核测评功能。5.用户的注册登陆功能。
上述的各项基本功能均已经实现,可以总体运行。但是每一个功能还有很多工作要做,完善。各项功能还是有些bug,完善这些功能还需要一部分时间。同时由于我们组员对用户的需求认识不足,造成了很多反复,导致生产率效率低下。
3.3对技术方法的评价
1、使用数据库建模工具:PowerDesigner 工具来建立系统数据库模型,以方便程序员很好的理解业务流和掌握系统架构者的架构思想,更好的满足客户的功能需求。在今后的项目开发中,我们要更好的来完成系统的前期数据库模型的建立,最大的来优化系统功能。
2、系统开发框架:此系统的框架使用的是SSH结构,此框架在开发一些中小软件是比较实用的。使得程序员能够随心所欲的使用对象编程思维来操纵数据库。但是我们要是可以开发出自己的框架,把一些通用的功能开发到框架中。这样以来,在以后的系统开发中,针对系统中一些通用的功能就不需要再开发,从而也可以很好的提高我们的开发效率;减少很多维护费用。使我们的技术不断的更加成熟。
3.4出错原因的分析
主要有以下几个方面的原因需要我们可以以后注意:
1、对软件开发的流程不是很熟悉。因为这方面知识的获取只是停留在理论层面,缺乏理论经验。
2、组员之间的交流还有待提高。因为在最后的一段时间,由于课程学习和复习的原因,大家能够集中在一块进行编程的时间不多。对项目的关注程度有所降低。
3、对web开发技术了解面不够,目前只是会对SSH框架熟悉。而且其中的框架使用细节流程也不是很清楚。
4经验与教训
项目历时两个月时间,在这两个月的时间里,使我们组对于项目有了更深刻的理解。
首先是对软件工程课程的更进一步学习,理解。此次的综合训练是紧跟课程同时进行的。在课程进行的同时,老师对其用到的知识进 行了详细的讲述。包括团队的建立,题目的选择,团队中各个组员之间的关系和整个项目选择的过程模型等。
第一阶段:需求分析阶段。只有充分了解了用户的需求才能开发功能完整、性能良好的项目。在这个阶段,我们小组听取了梁丹同学对于这个网站各个功能模块的描述,并做详细的记录,这个为我们后面项目的度量提供了可靠的材料。
第二阶段:项目分析设计阶段。整个项目在这个阶段的工作要多一点,它直接关系到后一阶段的编码,所以它起到了承上启下的作用。这一阶段的主要任务包括分析项目中对象,再根据对象设计数据库,在此包括其建模设计,在完成数据库后就是数据流程图了,它大体上描述了程序走的流程,以及大体的一个架构。完成上述工作后就是类的设计了,它是根据数据流图的设计来设计的,写好每个模块的每一个类,为下一阶段做好准备。在此,我们就完成了整个系统的一个架构。
第三阶段:编码阶段。在整个项目周期中只占到了1/4的时间,用代码将整个系统的业务逻辑表达出来。其中和遇到好多问题:对java中的好多现有的类不熟悉,使得编写的代码质量不高,代码的复用性不高,好多问题还都没有解决。
第四阶段:测试和发布。这一阶段是我们项目的最后一个阶段了,主要是对项目所涉及的功能进行功能测试。发现问题及时解决。
同时鉴于我们采用的是Scrum敏捷开发模型,并采用了结对编程。下边介绍下关于团队建设方面的总结。团队的个体成员为实现一个共同目标而协同工作。团队工作就是团队成员为实现这一共同目标而共同努力。项目团队工作是否有成效会直接影响项目的成败,尽管计划以及项目经理的工作技能是必要的,但人员——项目经理和项目团队——才是项目成功的关键。项目成功需要一个有效的项目团队。
我们组每位成员都精心付出了自己的努力,相互依赖,齐心协力地进行工作,已保证项目目标的成功实施.同时我们组也做到了以下的关键几点:
1、对项目目标的清晰理解。
2、对每位成员角色和职责的明确期望。
3、目标导向。
4、高度的合作互助。
5、高度信任。
这些都是以后我们在做项目设计时候必须借鉴的。一个绩效良好的项目团队很有必要管理好时间,为有效管理时间,团队成员要明确每周的目标,每天制定一个做事表,集中精力完成当天的做事表。要控制干扰,谢绝参加那些对实现目标没有意义的活动。团队成员也要有效利用等待的时间,一次性处理好文件工作,并要为实现目标奖励自己。我们组的每位成员都尽心尽力地为这个项目付出,期待项目最后成功的实施。
通过此次项目的学习和实践,使得我们组对于软件过程和项目管理这门课程有了更深入的了解,对其中所涉及的方法和工具有新的认 识,我们组会在以后的学习中继续摸索,灵活运用各种方法,熟练对各种工具的掌握,努力提高我们组的知识水平和业务能力!同时也认识到我们组在实际的代码编写阶段出现了许多无法解决的bug,需要我们利用下来的时间进行完善,真正做到学习无止境。也使我们认清了我们现在的编程水平还很低下,对知识的掌握还不够。距成为一名合格的软件工程师还有很长的一段距离。