智能信息处理实验室.Net小组发展规划
一、 研究方向
智能信息处理实验室.Net小组的主要研究方向是“.Net平台下软件开发技术及相关应用”,其研究内容包括.Net框架、.Net语言、面向对象的设计、软件工程学方法以及以上理论在实际中的应用。
小组将以.Net为开发平台,着眼于软件体系结构,特别是面向对象的软件设计方法,学习软件模块化、系统解耦合和设计模式等相关的理论知识,并结合实验室“Web语义”、“工作流”等已有的课题点,讨论以上技术在实际生产中的应用。
在更高层次上,小组将系统的学习目前较为常见的软件工程学方法,包括瀑布模式、螺旋模式和敏捷模式等。并在项目中尝试采用这些方法,分析这些模式的特点和适用范围,使小组成员掌握基本的软件项目管理能力。
二、 研究阶段
对于.Net下软件的开发的研究分为以下四个阶段:
第一阶段:.Net开发环境的掌握和相关开发技术的学习。这一阶段主要是掌握一门.Net语言(推荐C#);掌握.Net开发的基本技能,包括熟悉.Net框架中的核心类、用于数据访问的ADO.Net和用于Web应用的Asp.Net等;掌握Web开发的相关技术,包括数据库、HTML、JavaScript、CSS和服务器的配置等;熟悉Visual Studio .Net、Visual Source Safe等开发工具。该阶段完成后小组成员将有能力阅读.Net系统的代码,并在已有的基础上进行改善的能力。
第二阶段:掌握基本的面向对象设计。在这一阶段,小组成将继续学习.Net框架的相关知识,了解包括反射、XML、ORM和Ajax等较为深入的内容。同时,应该注重对相关原理的理解,包括IL语言、Asp.Net运行时和Http协议等。在软件结构体系方面,小组成员开始学习使用面向对象的方法进行思考,使用继承、引用和多态等面向对象的思路来描述系统的设计,掌握UML等系统设计工具。这一阶段将加大实践的比例,使小组通过开发实际项目,掌握相关的技术和面向对象设计能力。在这一阶段,随着项目实践的展开,小组成员开始接触软件工程学方法,了解不同的开发模式,掌握团队协作能力和相关协作工具的使用。
第三个阶段:掌握初步系统架构设计。在这一阶段,系统地实现已经不是重点,而该是如何设计出一个良好的系统结构。这要求深入的理解面向对象的思想,并且具有一定的开发经验。在这一阶段,小组将学习软件构架的相关知识,包括系统的模块化、模块间解耦合、面向对象的设计原则、设计模式、测试和重构等,并且学习使用这些知识对不同的系统进行设计,掌握各种模式的特点和使用范围,从而对于给定的系统要求能够设计出较为完善的架构。
第四阶段:掌握完善系统架构设计。这一阶段着眼于如何对系统的需求进行深入的理解,以及此基础上,设计出完善的系统架构。完善的系统架构应该重视并准确的反映系统的业务逻辑,并考虑需求变化的应对,兼顾系统的灵活性、健壮性、复杂度、开发效率和运行效率等诸多方面。小组成员在这一阶段将学习大量现有的优秀系统设计,并结合实验室相关项目,充分理解不同系统所应该采用的构架模式,并尽量能够拥有自己独到的设计见解和设计风格。
附:参考书目
1, 第一阶段:
a) 《C#高级编程》
b) 《Asp.Net高级编程》
c) 《HTML&XHTML权威指南》
d) 《JavaScript权威指南》
e) 《数据系统概论》
2, 第二阶段:
a) 《.Net Framework高级编程》
b) 《Asp.Net 技术内幕》
c) 《C# XML高级编程》
d) 《JavaScript高级编程》
e) 《Ajax基础教程》
f) 《代码大全2》
g) 《面向对象开发实践之路——C#版》
h) UML书籍一本
3, 第三阶段:
a) 《重构——改善既有代码的设计》
b) 《敏捷软件开发——原则、模式及实践》
c) 《Head First Design Patterns》
d) 《设计模式——可复用的面向对象设计》
4, 第四阶段:
a) 《企业应用构架模式》
b) 《测试驱动开发》
c) 《程序员修炼之道》