无忧范文网小编为你整理了多篇《web开发实习报告范本精选》范文,希望对您的工作学习有帮助,你还可以在无忧范文网网可以找到更多《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 (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
2 应用平台,甚至可以通过封装的技术发放到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的实现代码分离,从而使同一个程序可以使用不同的表现
3 形式。比如一批统计数据可以分别用柱状图、饼图来表示。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]
4
框架、设计模式这两个概念总容易被混淆,其实它们之间还是有区别的。框架通常是代码重用,而设计模式是设计重用,架构则介于两者之间,部分代码重用,部分设计重用,有时分析也可重用。在软件生产中有三种级别的重用:内部重用,即在同一应用中能公共使用的抽象块;代码重用,即将通用模块组合成库或工具集,以便在多个应用和领域都能使用;应用框架的重用,即为专用领域提供通用的或现成的基础结构,以获得最高级别的重用性。
框架与设计模式虽然相似,但却有着根本的不同。设计模式是对在某种环境中反复出现的问题以及解决该问题的方案的描述,它比框架更抽象;框架可以用代码表示,也能直接执行或复用,而对模式而言只有实例才能用代码表示;设计模式是比框架更小的元素,一个框架中往往含有一个或多个设计模式,框架总是针对某一特定应用领域,但同一模式却可适用于各种应用。可以说,框架是软件,而设计模式是软件的知识。
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领域有了全新的认识,在实践能力上也得到了提高,真正地做到了学以致用,更学到了很多做人的道理,对我来说受益非浅。除此以外,我还学会了如何更好地与别人沟通,如何更好地去陈述自己的观点,如何说服别人认同自己的观点。这一次亲身感受到理论与实际的相结合,
5 让我大开眼界。也是对以前所学知识的一个初审吧!这次实训对于我以后学习、找工作也真是受益菲浅,在短短的几天中相信这些宝贵 的经验会成为我今后成功的重要的基石。
作为一名大二的学生,经过差不多二年的在校学习,对程序设计有了理性的认识和理解。在校期间,一直忙于理论知识的学习,只能偶尔练习一些小程序,没有机会也没有相应的经验来参与项目的开发。所以在实训之前,软件项目开发对我来说是比较抽象的,一个完整的项目要怎么来分工以及完成该项目所要的基本步骤也不明确。而经过这次实训,让我明白一个完整项目的开发,必须由团队来分工合作,并在每个阶段中进行必要的总结与论证。 一个完整项目的开发它所要经历的阶段包括:规划和用例说明、项目结构和风险评估、业务功能说明书、详细设计说明书、代码实现、测试、操作手册。一个项目的开发所需要的财力、人力都是大量的,如果没有一个好的远景规划,对以后的开发进度会产生很大的影响,严重时导致在预定时间内不能完成该项目或者完成的项目跟原先计划所要实现的项目功能不符合。一份好的项目结构、业务功能和详细设计说明书对一个项目的开发有明确的指引作用,它可以使开发人员对这个项目所要实现的功能在总体上有具体的认识,并能减少在开发过程中出现不必要的脱节。代码的实现是一个项目开发成功与否的关键,可以说,前面所做的事情就是为代码的实现做铺垫。
经过几天的实习,我对开发平台有了更深一步的了解与深入,对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
6
[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
7