`
fujohnwang
  • 浏览: 156918 次
社区版块
存档分类
最新评论

一副示意图的构思过程

阅读更多
俗话说得好,"一图胜千言"(A picture is better than a thousand words), 当你看到一幅好的示意图的时候,可否想过要产生这么一副图片背后的艰辛?!呵呵,今天上午折腾了"一上午"才弄出最后觉得还算满意的图片...


初稿第一版和第二版构思


初稿第三版和第四版构思


最终决定
  • 大小: 49.6 KB
  • 大小: 43.2 KB
  • 大小: 35.2 KB
分享到:
评论
9 楼 fujohnwang 2008-03-31  
呵呵,等我把SpringMVC一章写完了你就会发现那两幅图的奥妙了,
其实我是为了简化概念,采用第一步先只关注处理流程中的主要角色,然后再添加附加角色的处理方式,至于可选以及默认配置,好像在图里面不好表达吧,呵呵,这些当然会在内容部分提及啦。

PS. 所谓忆苦思甜,那段所谓的"彪悍"的日子还是比较怀念的,呵呵,起码对本人来说是这个样子。

8 楼 tedeyang 2008-03-31  
fujohnwang 写道
tedeyang 写道
good!楼主追求完美的心态和我一样。
不过为了工作效率,该放手时还是要放手。图片确实具有极其丰富的表达能力,但也不需要完全摒弃文字。像第一幅图,适当加点文字说明就可以弥补构图的缺陷了,能省不少时间;而最后一幅图也有缺点,还无法表达spring mvc的完整概念。


不妨谈谈还缺什么概念才是你所指的完整表达的springMVC,呵呵
以免我误导人啊

我的意思就是大多数图形如果缺乏文字说明是较难清晰自我描述的。
我摘抄一段MVC的官方说明:
引用
当DispatcherServlet配置好以后,DispatcherServlet接收到与其对应的请求之时,处理就开始了。下面的列表描述了DispatcherServlet处理请求的全过程:

找到WebApplicationContext并将其绑定到请求的一个属性上,以便控制器和处理链上的其它处理器能使用WebApplicationContext。默认的属性名为DispatcherServlet.WEB_APPLICATION_CONTEXT_ATTRIBUTE。

将本地化解析器(localResolver)绑定到请求上,这样使得处理链上的处理器在处理请求(准备数据、显示视图等等)时能进行本地化处理。若不使用本地化解析器,也不会有任何副作用,因此如果不需要本地化解析,忽略它就可以了。

将主题解析器绑定到请求上,这样视图可以决定使用哪个主题。如果你不需要主题,可以忽略它。

如果上传文件解析器被指定,Spring会检查每个接收到的请求是否存在上传文件,如果是,这个请求将被封装成MultipartHttpServletRequest以便被处理链中的其它处理器使用。(关于文件上传的更多内容请参考第 13.8.2 节 “使用MultipartResolver”。)

找到合适的处理器,执行和这个处理器相关的执行链(预处理器,后处理器,控制器),以便为视图准备模型数据。

如果模型数据被返回,就使用配置在WebApplicationContext中的视图解析器显示视图,否则视图不会被显示。有多种原因可以导致返回的数据模型为空,比如预处理器或后处理器可能截取了请求,这可能是出于安全原因,也可能是请求已经被处理过,没有必要再处理一次。

在请求处理过程中抛出的异常,可以被任何定义在WebApplicationContext中的异常解析器所获取。使用这些异常解析器,你可以在异常抛出时根据需要定义特定行为。

Spring的DispatcherServlet也支持返回Servlet API定义的last-modification-date。决定某个请求最后修改的日期很简单:DispatcherServlet会首先寻找一个合适的handler mapping,检查从中取得指定的处理器是否实现了LastModified接口,如果是,将调用long getLastModified(request)方法,并将结果返回给客户端。

引用
This servlet is very flexible: It can be used with just about any workflow, with the installation of the appropriate adapter classes. It offers the following functionality that distinguishes it from other request-driven web MVC frameworks:

  • It is based around a JavaBeans configuration mechanism.
  • It can use any HandlerMapping implementation - pre-built or provided as part of an application - to control the routing of requests to handler objects. Default is BeanNameUrlHandlerMapping. HandlerMapping objects can be defined as beans in the servlet's application context, implementing the HandlerMapping interface, overriding the default HandlerMapping if present. HandlerMappings can be given any bean name (they are tested by type).
  • It can use any HandlerAdapter; this allows to use any handler interface. Default adapters are HttpRequestHandlerAdapter, SimpleControllerHandlerAdapter and ThrowawayControllerHandlerAdapter, for Spring's HttpRequestHandler, Controller and ThrowawayController interfaces, respectively. HandlerAdapter objects can be added as beans in the application context, overriding the default HandlerAdapters. Like HandlerMappings, HandlerAdapters can be given any bean name (they are tested by type).
  • The dispatcher's exception resolution strategy can be specified via a HandlerExceptionResolver, for example mapping certain exceptions to error pages. Default is none. Additional HandlerExceptionResolvers can be added through the application context. HandlerExceptionResolver can be given any bean name (they are tested by type).
  • Its view resolution strategy can be specified via a ViewResolver implementation, resolving symbolic view names into View objects. Default is InternalResourceViewResolver. ViewResolver objects can be added as beans in the application context, overriding the default ViewResolver. ViewResolvers can be given any bean name (they are tested by type).
  • If a View or view name is not supplied by the user, then the configured RequestToViewNameTranslator will translate the current request into a view name. The corresponding bean name is "viewNameTranslator"; the default is DefaultRequestToViewNameTranslator.
  • The dispatcher's strategy for resolving multipart requests is determined by a MultipartResolver implementation. Implementations for Jakarta Commons FileUpload and Jason Hunter's COS are included; the typical choise is CommonsMultipartResolver. The MultipartResolver bean name is "multipartResolver"; default is none.
  • Its locale resolution strategy is determined by a LocaleResolver. Out-of-the-box implementations work via HTTP accept header, cookie, or session. The LocaleResolver bean name is "localeResolver"; default is AcceptHeaderLocaleResolver.
  • Its theme resolution strategy is determined by a ThemeResolver. Implementations for a fixed theme and for cookie and session storage are included. The ThemeResolver bean name is "themeResolver"; default is FixedThemeResolver.


流程上有不少策略,窃以为仅凭借图不足以完整描述。
譬如spring的mvc处理流程中存在这很多可选和默认配置,这里没有体现。
还有中间那个大箭头是什么意思?两幅图的关系没能说明清楚。

不过既然在写书,那肯定是图文并茂。呵呵

ps:度假回来收到楼主的pm,顺便参观了楼主的blog。楼主有段时间过的生活那叫一个惨烈,真是很彪悍!呵呵,2004年我还在哈尔滨呢,还没回常州。
7 楼 fujohnwang 2008-03-28  
我素描功底不行,呵呵,怕画出来的东西有碍观瞻,hoho
6 楼 抛出异常的爱 2008-03-28  
下回先用纸与笔画下来
再用照片方式.就不会被MS告了.
PS:我喜欢纸笔画出来的东西
5 楼 laiseeme 2008-03-27  
A picture is better than a thousand words
4 楼 fujohnwang 2008-03-25  
henven 写道
用什么工具画的?漂亮啊

不好意思,用visio画的,用的是盗版,不要告诉微软哈,不然我可惨了 :-)
3 楼 fujohnwang 2008-03-25  
tedeyang 写道
good!楼主追求完美的心态和我一样。
不过为了工作效率,该放手时还是要放手。图片确实具有极其丰富的表达能力,但也不需要完全摒弃文字。像第一幅图,适当加点文字说明就可以弥补构图的缺陷了,能省不少时间;而最后一幅图也有缺点,还无法表达spring mvc的完整概念。


不妨谈谈还缺什么概念才是你所指的完整表达的springMVC,呵呵
以免我误导人啊
2 楼 tedeyang 2008-03-25  
good!楼主追求完美的心态和我一样。
不过为了工作效率,该放手时还是要放手。图片确实具有极其丰富的表达能力,但也不需要完全摒弃文字。像第一幅图,适当加点文字说明就可以弥补构图的缺陷了,能省不少时间;而最后一幅图也有缺点,还无法表达spring mvc的完整概念。
1 楼 henven 2008-03-25  
用什么工具画的?漂亮啊

相关推荐

    图文转换之框架构思图公开课用PPT教案.pptx

    这类题型提供一个框架示意图,要求将其转换为文字,需注意的是,构思框架图通常表示的是尚未执行或完成的事件。解题的关键步骤包括:审题理解要求、分析框架结构和关键词关系、选用合适的过渡词汇以及确定文字表述的...

    图文转换之框架构思图公开课PPT教案.pptx

    而构思框架图型题目则是一种新兴的题型,它要求考生将示意图转化为连贯、完整、准确的文字描述,这对学生的语言组织能力提出了更高的要求。该类型题目自2014年起出现在高考试卷中,考生需要在限定的字数内,用恰当的...

    编讲故事构思全过程.rar

    总的来说,《编讲故事构思全过程》这个资源会详尽地指导读者如何从零开始构思一个完整的故事,涵盖了故事主题、角色设定、情节设计、结构平衡、叙述视角和语言风格等多个方面。通过学习和实践,读者可以提升自己的...

    图文转换——构思框架图流程图方位图 张 .pptx

    构思框架图常用于展示事件、活动或计划的组织结构和流程,而流程图则常用于表示一个过程的步骤,方位图则多用于指示地理位置或空间布局。 从提供的文件内容来看,试题主要涉及以下几点: 1. **考情分析**:历年...

    机构设计实用构思图册

    机构设计是一个复杂的过程,它需要设计者在充分理解机械原理的基础上,结合创新思维来设计出能满足特定功能需求的机械装置。《机构设计实用构思图册》一书,是机械设计领域内一本具有极高实用价值的参考资料,它不仅...

    怎样建立一个好企业构思.ppt

    为了指导广大创业者和企业家如何建立一个好企业构思,我们将详细探讨企业类型、微小企业成功的要素、如何挖掘和验证企业构思,以及将企业构思转化为创业计划的全过程。 首先,了解企业类型是构建企业构思的基础。...

    工艺动作过程构思与运动协调新设计.ppt

    《工艺动作过程构思与运动协调新设计》 在机械设计领域,工艺动作过程构思与运动协调是至关重要的环节,它们决定了设备的效率、精度和可靠性。本设计主要涉及工作原理设计、工艺动作设计以及工艺过程和运动规划的...

    构思编辑器教程

    构思编辑器教程,关于微信编辑器的使用操作方法

    css 模板 含构思图,源代码,图片

    构思图是设计过程中的重要部分,它以图形的方式展示了网站的布局和结构。在压缩包中包含的构思图,可以帮助你直观地理解模板的视觉设计,包括各个元素的位置、大小和层次关系。你可以根据这些图进行调整,或者作为...

    图文转换之构思框架图用PPT学习教案.pptx

    在PPT学习教案中,"图文转换之构思框架图"是一项重要的技能。构思框架图通常用于表示一个尚未执行或完成的事件的规划,它可以帮助我们清晰地展示事件的各个阶段和组成部分。这种题型在高考中相对较新,首次出现在...

    Unity 3D虚拟现实游戏开发:场景构思.doc

    动画场景的创意构思是整部动画片创意的一部分。设计动画场景前先要熟悉剧本,掌握整部影片的艺术风格,充分了解故事发生的时代背景、发展脉络、地域特征,分清主要场景与次要场景关系。 二、树立整体造型意识 树立...

    家具设计创新构思方法培训课件.pptx

    家具设计作为一门艺术与技术相结合的学科,在推动人类居住环境进步上扮演着重要角色。...在这个过程中,每一次创新都可能成为推动家具设计向前发展的关键点,每一次构思都可能成为引领时代潮流的风向标。

    网上购书uml用例图时序图

    **用例图** 是一种UML(统一建模语言)工具,用于描述系统中不同的角色(参与者)以及它们与系统提供的服务之间的关系。在这个网上书店系统中,参与者包括管理员、员工、会员和游客。用例图中的主要用例有: 1. **...

    开课图文转换之构思框架图PPT课件.pptx

    8. **实践应用**:例如,2014年全国新课标卷I的构思框架图要求考生将瑶族村考察活动的构思框架转化为一段话,考生需要理清“瑶族村3日行”这一主线,以及“准备”和“实施”两个主要阶段,再细分各个步骤,最后连贯...

    智慧公安发展构思及建设解决方案.pptx

    在这一过程中,要构建起以大数据为基础的智能化警务工作合成化体系。 为了实现上述目标,智慧公安的建设思路应当明确。总体建设思路可概括为“1张网 + 1朵云 + 1个中心 + 5个平台 + N个应用”,旨在形成“人在干、...

    机器人项目整体构思

    提供了一份机器人项目软硬件结合的构思,希望与有相关项目人士共同学习

    网上书店时序图和协作图建模

    在IT行业中,UML(统一建模语言)是一种标准的建模工具,用于软件开发的可视化表示,它包括多种图表,如类图、时序图和协作图等。本实验重点在于理解和应用时序图与协作图进行系统分析,这两种图在描述系统动态行为...

    如何构思PPT--PPT菜鸟到高手之路

    在构建PPT的过程中,从一个新手成长为一个高手的旅程涵盖了多个关键步骤和技巧。下面将详细探讨这个过程中涉及的重要知识点: 1. **了解PPT的目的**:任何PPT的起点都应该是明确的目标。你需要知道你的PPT是用来...

    油画创作的构思到成稿-一稿.doc

    草图设计是将构思转化为可视图像的过程,它是整个创作过程中最核心的部分之一。艺术家需要通过绘制一系列的素描草稿和小色稿来不断探索和完善作品的构图、色彩搭配等方面。这个阶段可能会经历多次修改甚至是推翻重来...

    高中通用技术苏教版必修技术与设计4.2任务一进行设计分析,构思设计方案.pdf

    高中通用技术苏教版必修技术与设计4.2任务一进行设计分析,构思设计方案.pdf

Global site tag (gtag.js) - Google Analytics