理论课和理论(含实践)课教学内容
发布时间: 2010-04-26 浏览次数: 215

 

理论课和理论(含实践)课教学内容
1课程在本专业的定位与课程目标
 
专业定位:

高级Web技术目前面向本科大学三年级下学期开设,是专业必修课,学分4分。在该课程之前,学生在相关课程中掌握了程序设计能力(Java课程)、以HTML为中心的Web基础课程,对面向对象知识有一定了解,掌握了计算机学科的一些核心课程,如数据结构、操作系统、数据库。本课程的安排学期,也是学生即将进入实习和工作的时间,所以课程也担负着面向实际应用的知识储备功能。
 
课程目标:
 
通过本课程的学习,使得学生掌握以XML技术为基础和核心的基于Web的企业级分布式应用的基本概念和基本架构;掌握XML,Web services, J2EE的核心内容;初步掌握采用Java进行 Web服务开发的知识;学会设计、开发、部署、维护基于J2EE的企业级应用程序;并对企业应用的相关知识以及高级Web领域的最新技术发展及趋势有所了解,从而为今后研究和应用开发打下扎实基础。从学习的过程中,最终了解Web技术的本质是一种分布式计算,通过学习其发展历程和趋势,了解与计算机其他知识之间的关系,从而融会贯通。
 
 
2知识模块顺序及对应的学时
 
1、Web发展概述以及应用背景 (14学时)
 
1.1 Web的核心概念,架构演变以及典型应用
1.2企业应用集成(EAI)
1.3分布式计算以及标准概述
1.4典型中间件介绍,Corba,Agent
 
2、Web上的数据标准:XML概念,规范以及应用 (14学时)
 
2.1 XML的应用背景和特点,基本语法规则
2.2 XML验证标准DTD,Schema
2.3 XML标准 XSL (XSLT, XSL-FO, XPath)
2.4 XML标准 XLL   (XPointer)
2.5 Java开发XML : Dom, Sax, Jdom
2.6 XML的应用和主流工具的简介
2.7 XML应用示例&Web3D: VRML,X3D,Web上的分布式虚拟环境构建
 
3、Application Web: 以J2EE平台为例讲解(14学时)
 
3.1 J2EE概述
3.2 Web层:Servlet, JSP
3.3 EJB层
3.4 J2EE API:RMI,Corba,JNDI,Javamail,JMS…
3.5J2EE MVC模式和框架简介 (Struts, Spring, Hibernate)
 
4Service Web: Web services (16学时)
 
4.1 SOA简介
4.2 web service概述
4.3 Web Service核心规范(SOAP,WSDL,UDDI)
4.4 REST化Web Services
4.5 Web Services开发:JWSDP简介(JAXM,JAX-RPC(JAX-WS),JAXR)
4.6 工作流与Web Services:BEPEL流程描述语言
4.7 Web Services的一些应用示例
 
5、其他Web相关内容 (6学时)

5.1语义Web简介(RDF,Ontology))
5.2 其他相关技术简介:AOP,搜索引擎, Portal, RIA ,离线Web技术,云计算…等
 
6Presentation,讨论,考试等(8学时)
3课程的重点、难点及解决办法
课程重点:
遵循前面对课程理念的确定,本课程作为综合运用学生之前所学知识,如程序设计、设计模式、面向对象分析、数据库等,以及过渡到下一步的科研和工作的桥梁,重点是能够从宏观上把握Web技术的本质,以及发展历程和趋势,了解其中知识之间的关系,从而融会贯通,对层出不穷的新技术和概念容易接收和理解,并且善于动手实践。重点内容分为Web的核心概念和典型应用技术、XML、J2EE和Web Services技术。后三者分别代表了Web上的数据,Application Web,Services Web等三个发展阶段。
课程难点和解决方法:
1)    难点1:相关概念过多,内容容量很大,新技术和概念层出不穷,内容不断要更新。课程无经典教材,并且国内外无内容完全一致的课程。

解决方法:经过多年的教学实践和相关调研,以及对课程建设的思考,将课程内容主要划分为几个相互关联的模块,给出了一条主线,从第一次上课就开章明义的给学生,从而理清上课思路,如前文提到,此处不再赘述。另外,通过给学生布置homework和presentation,让学生根据老师的指引学习一些新的方法和技术,并且分组上来共享知识,同时锻炼了学生的组织、合作、表达、资料准备和制作、DEMO系统开发等能力,最主要的是培养了学生自主获取新的知识的能力。将一些新的技术通过presentation和作业的形式组织学习,也达到教学相长,有助于增加课程素材和知识的积累。
 
2)    难点2: 如何真的做到产学研结合。学生学习一个知识的动力来源于兴趣以及该知识是否有用。高级Web课程的内容非常贴近今后同学们工作中实际要遇到的许多问题,许多同学实习和工作后还联系我并且询问相关问题,可以清楚的看到这点。但是在学校里目前开设的许多课程,学生只是为了拿学分,看不到这些课程对今后的工作和生活有什么作用。

解决方法:花大力气进行示例素材的积累,并且精心设计与课程内容融合。在介绍一部分知识的同时,能结合实际的系统演示,项目文档,以及平时大家熟悉的应用等来进行讲解,同时还可以将一些相关的论文展示给大家看,比如录像中,展示了体现社会化网络中“6度分割”理论的论文,以及IBM Mashup Center的视频,又如结合Web2.0应用中大家在豆瓣网等系统上经常使用到的推荐商品功能,提到个性化推荐系统以及协同过滤等相关研究,这些都体现了Web2.0的个性化特征。另外,设计project的时候,我们都取材于真实的产学研结合的项目需求,而且通过精心设计,具有趣味性和实用性,让同学们了解所学知识的应用背景,而且在学校里面就有一定的实践经验,为今后的工作和进一步深造打下了很好的基础。
 
4实践教学的设计思想与效果(不含实践内容的课程不填)
 
“高级web技术”是一门实践性很强的课程。从前面“综述近五年来教学改革、教学研究成果及其解决的问题”部分,我们已经强调了课程注重学生的主动实践,这些从作业、presentation和
project的布置和设计上可以看出来。如一次作业的示例:
 
  每学期我们还布置一次presentation,列出几十个左右的选题,同学们也可以经过老师的同意,选择其它和课程相关的题目。要求学生选取一些流行的技术进行自学,分组讨论和实践,制作ppt和Demo,然后到课堂上进行15-20分钟左右讲解,老师和课程助教根据各个方面进行评分。同时下面的同学都可以进行提问讨论,老师进行一定的讲解和总结。如presentation要求和一个topic(每次给出20-30个左右的topic,每个topic一页ppt,给出简要介绍和参考资料URL)的示例:
 
 
 
 

Project的设计,如前文所述,非常贴近产业界的实际系统,并且其中有加分部分,具有一定科研性质。比如这次的project设计“基于web的网络决策支持系统”,其背景就来自于我们产学研的人民书店个性化推荐系统项目;内容紧跟前沿发展趋势,具有一定前瞻性。Project设计给出30页左右的详细项目文档。历年来我们精心设计了“Web Analytics 系统”,“Web3D-Based Online Customization Platform”,“教 学 互 动 系 统”,“通用博客系统”,“电子商务决策支持系统”等project。
从整个课程给学生的评分体系来看,淡化了笔试,强调了平时的学习和动手实践,如下是关于课程和考试的说明ppt:
 
 

实践性的教学效果很好,从下文学生的评价可以看出,仅列一位同学的评价:
“…而授课的方式也不局限于老师的讲授,通过presentation和开放性课题让学生选择自己感兴趣的领域与大家分享自己的收获和感悟。此外,每次安排的project不但融合了课程涉及的知识点,同时也调动了大家灵活处理和自主学习的积极性,正所谓授人以鱼不如授之以渔。…”