atitit.软件设计模式大的总结attialx总结

1. 设计模式的历史3

2. 设计模式的数量(253个)3

3. 设计模式的结构4

3.1. 应用场景and条件Context4

3.2. Problem4

3.3. 解决4

3.4. 不适合领域4

3.5. 优缺点4

4. 软件模式并非仅限于设计模式,还包括架构模式、分析模式和过程模式 5

5. 具体的设计模式5

5.1. Gof 23个模式5

5.2. Api映射法取代 warp法。5

5.3. async异步模式6

5.4. AOP 6

5.5. Abstract 优对于  interface6

5.6. Ast模式6

5.7. Auto type convert自动进行类型转换 6

5.8. biz业务化模块6

5.9. Compiler as a Service 6

5.10. Chain mode6

5.11. Confirm模式(解除页面跳转的问题)6

5.12. closure闭包模式6

5.13. components组件化7

5.14. DSL7

5.15. Dwr vs AJAX 7

5.16. DSLparser7

5.17. eventDriver事件驱动模式7

5.18. Code behind7

5.19. Cfg2ui (attilax 创建7

5.20. Biz_index业务索引模式(attilax 创建,解7

5.21. dispater分发器模式7

5.22. filter过滤器模式7

5.23. Engeen+script引擎+脚本模式(托管)7

5.24. frmwk框架化7

5.25. generic泛型模式7

5.26. -------------------h----n7

5.27. Html5 ui7

5.28. Hybrid化7

5.29. immediately 即时更新(热部署)快速迭代 持续交付 8

5.30. 8

5.31. Ioc/di8

5.32. Lazy load延迟初始化 cfg8

5.33. Linq8

5.34. microcore微内核8

5.35. msg消息化8

5.36. Mvc9

5.37. ----o-------t10

5.38. Orm10

5.39. Pipe10

5.40. Pipe 管道模式、流式,链式10

5.41. platform10

5.42. plugin插件模式10

5.43. Reflection 10

5.44. refresh刷新模式(解决缓存and静态的变量的值及时修改跟个读取问题)10

5.45. refresh刷新按钮模式...解决若干页面不料条件..and 分页..10

5.46. propCopy数据转换器..propCopy10

5.47. pool池模式10

5.48. Retry(attilax 创建,提升稳定性)10

5.49. Stream10

5.50. Self contain自包含,容器化隔离。。11

5.51. seri串口模式(attilax 创建,解除接口麻烦的)11

5.52. spa ajax化11

5.53. Try catch11

5.54. 决缓存不及时的问题)11

5.55. Theardlocal模式11

5.56. trigger触发器模式(attilax 创建)11

5.57. SOA 11

5.58. single单例文件夹模式(解决模块复制问题,提取问题)11

5.59. 11

5.60. Timer 模式...解决同步问题两个控件11

5.61. Theardlocal模式11

5.62. ----u----z11

5.63. uapi12

5.64. Vm模式12

5.65. visual12

5.66. webService/HttpService12

5.67. workflow工作流12

5.68. Winform12

5.69. Webform12

5.70. Weak/Soft references 12

6. 反模式12

6.1. Reset web12

1. 设计模式的历史

软件模式是在软件开发中某些可重现问题的一些有效解决方法

有若干通用性的solu

2. 设计模式的数量(253个)

与很多软件工程技术一样,模式起源于建筑领域,毕竟与只有几十年历史的软件工程相比,已经拥有几千年沉淀的建筑工程有太多值得学习和借鉴的地方。

那么模式是如何诞生的?让我们先来认识一个人——Christopher Alexander(克里斯托弗.亚历山大),哈佛大学建筑学博士、美国加州大学伯克利分校建筑学教授、加州大学伯克利分校环境结构研究所所长、美国艺术和科学院院士……头衔真多,

1990年,软件工程界开始关注ChristopherAlexander等在这一住宅、公共建筑与城市规划领域的重大突破。最早将模式的思想引入软件工程方法学的是1991-1992年以“四人组(Gang of Four,简称GoF,分别是Erich Gamma, Richard Helm, Ralph Johnson和John Vlissides)”自称的四位著名软件工程学者,他们在1994年归纳发表了23种在软件开发中使用频率较高的设计模式,旨在用模式来统一沟通面向对象方法在分析、设计和实现间的鸿沟

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://www.cnblogs.com/attilax/

3. 设计模式的结构

3.1. 应用场景and条件Context

3.2. Problem

3.3. 解决

3.4. 不适合领域

3.5. 优缺点

软件模式是在软件开发中某些可重现问题的一些有效解决方法,软件模式的基础结构主要由四部分构成,包括问题描述【待解决的问题是什么】、前提条件【在何种环境或约束条件下使用】、解法【如何解决】和效果【有哪些优缺点】,如图1-1所示:

图1-1 软件模式基本结构

软件模式与具体的应用领域无关,也就是说无论你从事的是移动应用

4. 软件模式并非仅限于设计模式,还包括架构模式、分析模式和过程模式

GoF将模式的概念引入软件工程领域,这标志着软件模式的诞生。软件模式(Software Patterns)是将模式的一般概念应用于软件开发领域,即软件开发的总体指导思路或参照样板。软件模式并非仅限于设计模式,还包括架构模式、分析模式和过程模式等,实际上,在软件开发生命周期的每一个阶段都存在着一些被认同的模式。

5. 具体的设计模式

5.1. Gof 23个模式

5.2. Api映射法取代 warp法。

类似于hbuilder,将native api映射为我们的api,

5.3. async异步模式

5.4. AOP

5.5. Abstract 优对于  interface

5.6. Ast模式

5.7. Auto type convert自动进行类型转换

Script

Jsp EL

Sql  str>>num

5.8. biz业务化模块

业务化的业务模块,框架,类库,模版,api

5.9. Compiler as a Service

5.10. Chain mode

5.11. Confirm模式(解除页面跳转的问题)

5.12. closure闭包模式

5.13.  components组件化

5.14. DSL

5.15. Dwr vs AJAX

5.16. DSLparser

5.17. eventDriver事件驱动模式

5.18. Code behind

5.19. Cfg2ui (attilax 创建

5.20. Biz_index业务索引模式(attilax 创建,解

5.21. dispater分发器模式

5.22. filter过滤器模式

5.23. Engeen+script引擎+脚本模式(托管)

5.24. frmwk框架化

5.25. generic泛型模式

5.26. -------------------h----n

5.27. Html5 ui

5.28. Hybrid化

5.29. immediately 即时更新(热部署)快速迭代 持续交付

(script+engine)模式

使用原生开发,从招聘、开发、上线各个环节的效率都慢一倍以上,而且参与的人越多,沟通效率往往拖慢不止一倍。

配置也应该使用dev模式,立即更新..可以..不需要重启app

5.30. 

5.31. Ioc/di

5.32. Lazy load延迟初始化 cfg

5.33. Linq

允许编写C#或者Visual Basic代码以查询数据库相同的方式操作内存数据。

5.34. microcore微内核

5.35. msg消息化

这个图,是改用消息模式结果,用户注册功能模块,跟接收到消息处理各个任务直接,代码没有直接关联。如果需要增加一个接收注册消息,给其它人通知一下,只需要新增一个模块,订制注册消息,然后处理一个新流程即可。

目前各类开源项目里面,消息机制已经变得非常常见了。 但在wordpress这个blog框架,它的消息主题非常完善。几乎任何动作都有消息主题发送消息。 这样让开发者,只要订制相关主题,就可以,增加自己额外处理功能。 例如: 用户发一个帖子后。检测下用户是不是有广告信息,只要订制:发帖消息,然后,增加新功能,检测内容。发现不满足,直接屏蔽帖子。

有人估计要说,这类功能,现在很多框架有类似东西,例如,页面开始有个start事件,结束有个end事件。 确实,消息概念在很多框架里面确实有用。 但是,没有这么完毕的消息主题抛出。 几乎做到整个系统任何操作,都能有消息,这样没有什么功能不能进行扩展了。

5.36. Mvc

5.37. ----o-------t

5.38. Orm

5.39. Pipe

5.40. Pipe 管道模式、流式,链式

5.41. platform

5.42. plugin插件模式

5.43.  Reflection

5.44. refresh刷新模式(解决缓存and静态的变量的值及时修改跟个读取问题)

5.45. refresh刷新按钮模式...解决若干页面不料条件..and 分页..

5.46. propCopy数据转换器..propCopy

5.47.  pool池模式

5.48. Retry(attilax 创建,提升稳定性)

5.49. Stream

5.50. Self contain自包含,容器化隔离。。

iframe

5.51. seri串口模式(attilax 创建,解除接口麻烦的)

5.52. spa ajax化

5.53. Try catch

5.54. 决缓存不及时的问题)

5.55. Theardlocal模式

5.56. trigger触发器模式(attilax 创建)

5.57. SOA

5.58. single单例文件夹模式(解决模块复制问题,提取问题)

5.59. 

5.60. Timer 模式...解决同步问题两个控件

控件的onchange事件不能生效..

5.61. Theardlocal模式

5.62. ----u----z

5.63. uapi

5.64. Vm模式

5.65. visual

5.66. webService/HttpService

5.67. workflow工作流

5.68. Winform

5.69. Webform

5.70. Weak/Soft references

6. 反模式

6.1. Reset web

atitit.软件设计模式大的总结attialx总结的更多相关文章

  1. atitit.软件与sql设计模式原理与本质 大总结attialx总结v6 qc26.docx

    atitit.软件与sql设计模式原理与本质 大总结attialx总结v6 qc26.docx 1.1. 版本历史2 2. 设计模式是什么2 2.1. 模式就是在一种场合下对某个问题的一个解决方案.& ...

  2. Atitit.软件开发的几大规则,法则,与原则Principle v3

    Atitit.软件开发的几大规则,法则,与原则Principle  v31.1. 修改历史22. 设计模式六大原则22.1. 设计模式六大原则(1):单一职责原则22.2. 设计模式六大原则(2):里 ...

  3. Atitit.软件的建模种类and 建模语言选型and UML???

    Atitit.软件的建模种类and  建模语言选型and UML??? 1. 4大的建模种类:ui建模,业务流程建模 , 业务对象建模, 数据库建模 1 2. 文本还是图片化(推荐)的建模 1 3.  ...

  4. Atitit 图像处理类库大总结attilax qc20

    Atitit 图像处理类库大总结attilax qc20 1.1. 选择与组合不同的图像处理类库1 1.2. Halcon 貌似商业工具,功能强大.1 1.3. Openvc  Openvc功能也是比 ...

  5. Atitit 软件国际化原理与概论

    Atitit 软件国际化原理与概论 语言和文化习俗因地域不同而差别很大.对某一特定的地域的 语言环境称为"locale".它不仅包括语言和货币单位,而且还包括 数字标示格式, 日期 ...

  6. Atitit.软件中见算法 程序设计五大种类算法

    Atitit.软件中见算法 程序设计五大种类算法 1. 算法的定义1 2. 算法的复杂度1 2.1. Algo cate2 3. 分治法2 4. 动态规划法2 5. 贪心算法3 6. 回溯法3 7. ...

  7. 软件设计模式 B卷

            软件设计模式 试 卷(作业考核 线上)  B  卷   学习中心:            院校学号:             姓名                (共        页 ...

  8. Atitit.软件仪表盘(2)--vm子系统--资源占用监測

    Atitit.软件仪表盘(2)--vm子系统--资源占用监測 1.  Jvisualvm.exe 2. jprofile 3. Heap //permgen   monitor 作者::老哇的爪子At ...

  9. Atitit.软件GUIbutton与仪表盘--db数据库区--导入mysql sql错误的解决之道

    Atitit.软件GUIbutton与仪表盘--db数据库区--导入mysql sql错误的解决之道 Keyword::截取文本文件后部分 查看提示max_allowed_packet限制 Targe ...

随机推荐

  1. 【shiro】2.spring整合shiro,注解控制shiro用户/角色/权限And/OR,没有权限跳转到固定页面

    这几天粗浅的把shiro整合到spring中,并且注解控制shiro用户/角色/权限And/OR 步骤: 1.首先maven搭建web项目 2.创建数据库 user/role/authority 其中 ...

  2. Windows Server 2008 远程桌面连接拒绝

    (1)远程连接的时候在本地用户名添加域名 现象:在Windows2008R2配置成域控制器前,还没有安装AD,管理员Admistrator以及新创建的用户(创建的时候将该用户加入远程桌面管理组),发现 ...

  3. Screen多视窗远程控制管理服务

    Screen是一款由GNU开源计划开发的多视窗远程控制管理服务,简单来说就是为了解决上述情况中网络异常中断或同时控制多个远程窗口而设计的程序. Screen服务程序不仅能够解决上述问题,而且用户在使用 ...

  4. linux系统下mysql跳过密码验证登录和创建新用户

    修改MySQL的登录设置: # vi /etc/my.cnf 在[mysqld]的段中加上一句:skip-grant-tables 例如: [mysqld] datadir=/var/lib/mysq ...

  5. Index 和 Type 的区别

    原文: Index vs. Type By Adrien Grand 译者: fengchang 对于 ES 的新用户来说,有一个常见的问题:要存储一批新的数据时,应该在已有 index 里新建一个 ...

  6. 阿里巴巴Android开发手册(规约)

    阿里巴巴Android开发手册(规约) 学习了:https://www.cnblogs.com/jb2011/p/8487889.html  这个猛 https://blog.csdn.net/ali ...

  7. android开发笔记之Volley (1)

    1. volley的简介 Volley is an HTTP library that makes networking for Android apps easier and most import ...

  8. Groovy(java)+Spock+IDEA+maven+Jenkins+SVN+maven-surefire-plugin+maven-surefire-report-plugin/maven-antrun-extended-plugin集成接口测试框架

    文章为原创,未经本人授权禁止转载. 一.spock框架环境搭建. 二.基于spock框架的脚本开发. 三.基于spock框架的用例执行并生成HTML报告. 四.集成jenkins生成HTML报告. 五 ...

  9. 云计算之路-试用Azure:搭建自己的内网DNS服务器

    之前我们写过一篇博文谈到Azure内置的内网DNS服务器不能跨Cloud Service,而我们的虚拟机部署场景恰恰需要跨多个Cloud Service,所以目前只能选择用Azure虚拟机搭建自己的内 ...

  10. Android RxJava/RxAndroid结合Retrofit使用

    概述 RxJava是一个在 Java VM 上使用可观測的序列来组成异步的.基于事件的程序的库.更重要的是:使用RxJava在代码逻辑上会非常简洁明了,尤其是在复杂的逻辑上.告别迷之缩进. RxAnd ...