孝.悟

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  5 随笔 :: 4 文章 :: 0 评论 :: 0 引用

2010年9月19日 #

Application_Init:在每一个HttpApplication实例初始化的时候执行。
Application_Disposed:在每一个HttpApplication实例被销毁之前执行。
Application_Error:所有没有处理的错误都会导致这个方法的执行。
Application_Start:在程序初始化的时候执行。在Web应用程序的生命周期里就执行一次(自动的重新启动算另外一次生命周期),这里只能放一些公用的信息,比如HttpApplicationState
Application_End:应用程序结束时,在最后一个HttpApplication销毁之后执行。对应Application_Start,在整个生命周期里面也是只执行一次。
下面来看看跟Request有关的,首先我们来看看相应的事件执行顺序:
1.       BeginRequest
2.       AuthenticateRequest
3.       AuthorizeRequest
4.       ResolveRequestCache
5.       AcquireRequestState
6.       PreRequestHandlerExecute
7.       PostRequestHandlerExecute
8.       ReleaseRequestState
9.       UpdateRequestCache
10.   EndRequest
另外还有两个:
1.       PreSendRequestHeaders
2.       PreSendRequestContent
这两个事件的顺序是无法确定的,按照MSDN的说法,它们随时都可能发生。下面就按这个顺序来解释一下它们在Global.asax.cs中相应的事件处理方法的含义。
Application_BeginRequestBeginRequest是在收到Request时第一个触发的事件,这个方法自然就是第一个执行的了。
Application_AuthenticateRequest:当安全模块已经建立了当前用户的标识后执行。
Application_AuthorizeRequest:当安全模块已经验证了当前用户的授权时执行。
Application_ResolveRequestCache:当ASP.NET完成授权事件以使缓存模块从缓存中为请求提供服务时发生,从而跳过处理程序(页面或者是WebService)的执行。这样做可以改善网站的性能,这个事件还可以用来判断正文是不是从Cache中得到的。
Application_AcquireRequestState:当ASP.NET获取当前请求所关联的当前状态(如Session)时执行(真是拗口啊,msdn上就这样写的,我自己想不出什么好句子了)。
Application_PreRequestHandlerExecute:当ASP.Net即将把请求发送到处理程序对象(页面或者是WebService)之前执行。这个时候,Session就可以用了。
Application_PostRequestHandlerExecute当处理程序对象(页面或者是WebService)工作完成之后执行。
Application_ReleaseRequestState:在ASP.NET执行完所有请求处理程序后执行。ReleaseRequestState事件将使当前状态数据被保存。
Application_UpdateRequestCache:在ASP.NET执行完处理程序后,为了后续的请求而更新响应缓存时执行。
Application_EndRequest:同上,EndRequest是在响应Request时最后一个触发的事件,这个方法自然就是最后一个执行的了。
再说这两个无顺序的
Application_PreSendRequestHeaders:向客户端发送Http标头之前执行。
Application_PreSendRequestContent:向客户端发送Http正文之前执行。
 
最后就是两个关于Session的,这就简单咯
Session_Start:会话开始时执行。
Session_End:会话结束或过期时执行。
posted @ 2010-09-19 14:32 fantasy_kli 阅读(38) 评论(0) 编辑

2010年9月17日 #

   循序渐进,四个字的意思真的很简单,现在想想却从来没有读懂过。

  铁杵磨成针、循序渐进的的共同点是磨,区别在序。

  现在能明白这个道理不算晚,心里有想法很重要,说明有序了,但是一定要渐进,才能实现。而且在渐进的时候需要更多的更好的想法。

posted @ 2010-09-17 11:56 fantasy_kli 阅读(9) 评论(0) 编辑

2010年7月2日 #

摘要: 今天想起了接口。工作三年,自己没有写过。不知道是不是太晚了?  我想应该这么用接口:打个比方,我们要去仓库取东西,就去跟仓库管理员张三说,张三,你去帮我取一个Iphone,张三就取了给你。过段时间,张三辞职了,李四是仓库管理员,那么你就说:李四,帮我取个Iphone。  这个过程中,不变的是你对仓库管理员(Interface)发布了指令,但是仓库管理员是谁变了(Object)。  所以我们写程序的...阅读全文
posted @ 2010-07-02 14:42 fantasy_kli 阅读(17) 评论(0) 编辑

2010年2月21日 #

如今,软件开发越来越复杂,软件功能也越来越丰富。而几乎所有成熟的商业软件,都是靠一个开发团队齐心协力的血汗结晶。“罗马不是一天建成的!”,当我们震撼于Microsoft Windows的惊世巨著的同时,也道听途说了微软公司软件工程是如何的完善规范。的确,集数百名员工几年的共同努力之大成,软件项目管理的成败是控制开发成本的关键环节。这里面,少不了贯穿其中的重要步骤----软件文档。

  软件文档可以分为开发文档和产品文档两大类。

  开发文档包括:《功能要求》、《投标方案》、《需求分析》、《技术分析》、《系统分析》、《数据库文档》、《功能函数文档》、《界面文档》、《编译手册》、《QA文档》、《项目总结》等。

  产品文档包括:《产品简介》、《产品演示》、《疑问解答》、《功能介绍》、 《技术白皮书》、《评测报告》、《安装手册》、《使用手册》、《维护手册》、 《用户报告》、《销售培训》等。

一、开发文档

  1. 《功能要求》--来源于客户要求和市场调查,是软件开发中最早期的一个环节。客户提出一个模糊的功能概念,或者要求解决一个实际问题,或者参照同类软件的一个功能。有软件经验的客户还会提供比较详细的技术规范书,把他们的要求全部列表书写在文档中,必要时加以图表解说。这份文档是需求分析的基础。

  2. 《投标方案》--根据用户的功能要求,经过与招标方沟通和确认,技术人员开始书写《投标方案》,方案书一般包括以下几个重要的章节:

  前言--项目背景、公司背景和业务、技术人员结构、公司的成功案例介绍等。

  需求分析--项目要求、软件结构、功能列表、功能描述、注意事项等。

  技术方案--总体要求和指导思想、技术解决方案、软件开发平台、网络结构体系等。

  项目管理--描述公司的软件开发流程、工程实施服务、组织和人员分工、开发进度控制、软件质量保证、项目验收和人员培训、软件资料文档等。

  技术支持--公司的技术支持和服务介绍、服务宗旨和目标、服务级别和响应时间、技术服务区域、技术服务期限、授权用户联系人等。

  系统报价--软、硬件平台报价列表、软件开发费用、系统维护费用等。

  项目进度--整个项目的进度计划,包括签署合同、项目启动、需求分析、系统分析、程序开发、测试维护、系统集成、用户验收、用户培训等步骤的时间规划。

  3. 《需求分析》--包括产品概述、主要概念、操作流程、功能列表和解说、注意事项、系统环境等。以《功能要求》为基础,进行详细的功能分析(包括客户提出的要求和根据开发经验建议的功能),列出本产品是什么,有什么特殊的概念,包括那些功能分类,需要具备什么功能,该功能的操作如何,实现的时候该注意什么细节,客户有什么要求,系统运行环境的要求等。这里的功能描述跟以后的使用手册是一致的。

  4. 《技术分析》--包括技术选型、技术比较、开发人员、关键技术问题的解决、技术风险、技术升级方向、技术方案评价,竞争对手技术分析等。以《需求分析》为基础,进行详细的技术分析(产品的性能和实现方法),列出本项目需要使用什么技术方案,为什么,有哪些技术问题要解决 ,估计开发期间会碰到什么困难,技术方案以后如何升级,对本项目的技术有什么评价等。

  5. 《系统分析》--包括功能实现、模块组成、功能流程图、函数接口、数据字典、软件开发需要考虑的各种问题等。以《需求分析》为基础,进行详细的系统分析(产品的开发和实现方法),估计开发期间需要把什么问题说明白,程序员根据《系统分析》,开始在项目主管的带领下进行编码。

  6. 《数据库文档》--包括数据库名称、表名、字段名、字段类型、字段说明、备注、字段数值计算公式等。以《系统分析》为基础,进行详细的数据库设计。必要时可以用图表解说,特别是关系数据库。

  7. 《功能函数文档》--包括变量名、变量初植、功能,函数名,参数,如何调用、备注、注意事项等。以《系统分析》为基础,进行详细的说明,列出哪个功能涉及多少个函数,以便以后程序员修改、接手和扩展。

  8. 《界面文档》--包括软件外观、界面素材、编辑工具、文件名、菜单、按钮和其它界面部件的要求,这里与软件完成后的运行界面是一致的。

  9. 《编译手册》--包括服务器编译环境、操作系统、编译工具、GNU的C++编译器版本信息、目录说明、程序生成、源程序文件列表、Makefile配置及其相关程序的对应关系列表。客户端的编译过程、编译结果、编译示例、编译环境、操作系统、编译工具、源文件列表和制作安装程序的过程。

  10. 《QA文档》--包括产品简介、产品原理、产品功能列表、功能描述、功能流程、执行结果、数据库结构、测试要求等,提供给软件测试人员使用。

  11. 《项目总结》--包括项目简介、项目参与人员和开发时间、项目风险管理过程、项目功能列表、项目结构特点、技术特点、对项目的升级建议、对以后的项目的建议、人员素质情况等。

二、产品文档

  1. 《产品简介》--包括公司背景、产品概念、适用范围、产品功能、功能特点、运行要求和公司联系地址。

  2. 《产品演示》--包括公司简介、产品背景、产品描述、产品特点、产品作用、适用范围、使用分析、功能模块、解决问题、合作伙伴、成功案例等。一般用Power
point或者VCD录制软件实现。

  3. 《疑问解答》--列出用户关心的问题和处理方法。用于解答软件的操作功能和解决用户的疑难问题。

  4. 《功能介绍》--以《需求分析》为书写基础,包括软件介绍、软件结构、功能列表、功能描述和公司联系地址。

  5. 《技术白皮书》--以《技术分析》为书写基础,包括功能实现、技术选型、关键技术问题的解决、技术方案特点、技术升级方向等。

  6. 《评测报告》--第三方权威评测报告。包括评测目的、评测范围、评测环境、评测内容、实测数据、性能表现、结果分析和评测总结等。

  7. 《安装手册》--包括系统环境、运行平台、产品安装过程、初始环境设置、安装记录等。

  8. 《使用手册》--包括产品简介、功能列表、功能描述和解释、功能操作、客户服务和联系方式等。

  9. 《维护手册》--包括产品简介、系统须知、初始环境设置、系统配置、数据管理和备份、技术问题解答和联系方式等。

  10. 《用户报告》--包括产品简介、购买时间、使用目的、使用时间、使用地点、实施过程、出现问题和解决、产品总结和建议等。

  11.《销售培训》--包括项目简介、产品功能、产品特点、商业优势、系统运行环境、适用范围、目标客户等。

posted @ 2010-02-21 09:56 fantasy_kli 阅读(26) 评论(0) 编辑

摘要: 软件文档编写向导文档分类 -- 转自borcala项目包括如下几类文档;项目管理文档。包括:《软件项目计划》、《项目进度报告》、《项目开发总结报告》软件开发文档。包括:《需求规格说明》、《概要设计说明》、《详细设计说明》。软件测试文档。包括:《测试计划》、《软件测试分析报告》。产品资料。包括:《用户操作手册》。文档的版本号 本项目文档的版本号由以圆点隔开的两个数字组成,第一个数字表示出版号,第二个...阅读全文
posted @ 2010-02-21 09:47 fantasy_kli 阅读(86) 评论(0) 编辑