博客园首页是需要分享干货的地方,今天早上写的《HRMS(人力资源管理系统)-从单机应用到SaaS应用-系统介绍》内容下架了,所以我就按照相关规定,只分享干货,我把之前写完的内容整理发布上来。这次主要分享一下在架构设计过程中涉及的基础知识,主要是涵盖系统架构方法、架构模式及设计模式,便于大家在后续一起探讨HRMS系统的SaaS模式的架构设计。

一、设计模式

大家或多或少的都接触并在实际的开发过程中无形中可能都使用了某种设计模式,可能我们并不知道具体的模式叫什么名字,现在讲设计模式的书、案例分享都有很多,管理理论上的内容我这里就不一一复述,整体来说,设计模式分为3类:创建型、结构型、行为型。常见的有23种设计模式,我之前写过一个系列,我相信大家之前也看过,我这里再贴下链接设计模式-系列索引》,大家感兴趣可以点击查看细节,今天在这里不单独展开设计模式的介绍和说明。

在这里我选取几个实际开发及设计过程中常用的几个设计模式给出理论教程和代码samples:

A、01.C#设计模式-抽象工厂模式  

      PPT-下载      代码Samples下载

B、02.C#设计模式-适配器模式

      PPT-下载      代码Samples下载

C、03.C#设计模式-观察者模式

      PPT-下载      代码Samples下载

D、04.C#设计模式-代理模式

      PPT-下载      代码Samples下载

E、05.C#设计模式-模板方法模式

      PPT-下载      代码Samples下载

F、06.C#设计模式-外观模式

      PPT-下载      

更多内容,请加微信群,我会及时共享到微信群中。

二、系统架构方法

早在2010年始,我便开始筹备并编写了10多篇关于软件架构方面的内容,当时写的深度、理论的完整性及高度,当前来看还差很多,经过这么多年的沉淀,目前我有信心及能力把之前没有写完的系统化的梳理明晰,通过博客的方式呈现出来,在这之前我想还是先把理论的内容给分享出来,便于我们在具体实践的过程中指导具体的设计方法。以便后续更好的推进我们的工作。之前我写过《系统架构师-基础到企业应用架构-系列索引》系列,关于《HRMS(人力资源管理系统)-从单机应用到SaaS应用》系列可以说是架构方法的实践和延续,也请大家持续关注。

A、01系统架构概述

B、02系统架构过程1之架构分析

C、02系统架构过程2之架构分割

D、02系统架构过程3之架构分划

E、02系统架构过程4之非功能目标

F、03系统架构1之层次深入

G、03系统架构2之服务深入(SOA架构)

H、03系统架构3之产品线深入

I、03系统架构4之模式深入

J、04系统架构之六大战术-应对质量属性

K、05系统架构师-十大经验

     (请点击标题下载)

三、架构设计过程实践

理论需要结合实践,才能够真正的掌握架构设计的要领,前面已经在《HRMS(人力资源管理系统)-从单机应用到SaaS应用-系统介绍》开篇中介绍了HRMS系统的行业情况、行业发展趋势及前景、行业内还存在的现状及问题、我们基于这样一个有价值的系统来实践架构设计方式落地。过程中期待大家一起研究交流。

《HRMS(人力资源管理系统)-从单机应用到SaaS应用-架构实践系列》索引

A、HRMS系统介绍

B、系统架构准备阶段(功能性、非功能性、关键约束)

HRMS(人力资源管理系统)-从单机应用到SaaS应用-架构分析(功能性、非功能性、关键约束)-上篇

HRMS(人力资源管理系统)-从单机应用到SaaS应用-架构分析(功能性、非功能性、关键约束)-下篇

C、结合场景分析架构模式(概要架构)

D、确定架构5视图(细化架构)

E、.NET、Java架构落地实践

四、更多的系统架构知识及培训材料

关于更多的系统架构方面的知识,我已建立了交流群,相关资料会第一时间在群里分享,欢迎大家入群互相学习交流:

      微信群:(扫码入群-名额有限)                                               

系统架构-设计模式(适配器、观察者、代理、抽象工厂等)及架构模式(C/S、B/S、分布式、SOA、SaaS)(干货)的更多相关文章

  1. Java设计模式(三) 抽象工厂模式

    原创文章,同步发自作者个人博客,转载请注明出处 http://www.jasongj.com/design_pattern/abstract_factory/ 抽象工厂模式解决的问题 上文<工厂 ...

  2. 设计模式02: Abstract Factory 抽象工厂(创建型模式)

    Abstract Factory 抽象工厂(创建型模式) 常见的对象创建方法:    //创建一个Road对象    Road road=new Road();    new的问题:    -实现依赖 ...

  3. PHP设计模式(三)抽象工厂模式(Abstract Factory)

    一.什么是抽象工厂模式 抽象工厂模式的用意为:给客户端提供一个接口,可以创建多个产品族中的产品对象 ,而且使用抽象工厂模式还要满足以下条件: 系统中有多个产品族,而系统一次只可能消费其中一族产品. 同 ...

  4. .NET设计模式(2):1.2 抽象工厂模式(Abstract Factory)

    概述 抽象工厂模式(Abstract Factory)是所有形态的工厂模式中最为抽象和最具一般性的一种形态.抽象工厂模式是指当有多个抽象角色时,使用的一种工厂模式.抽象工厂模式可以向客户端提供一个接口 ...

  5. 设计模式的征途—3.抽象工厂(Abstract Factory)模式

    上一篇的工厂方法模式引入了工厂等级结构,解决了在原来简单工厂模式中工厂类职责太重的原则,但是由于工厂方法模式的每个工厂只生产一类产品,可能会导致系统中存在大量的工厂类,从而增加系统开销.那么,我们应该 ...

  6. 设计模式的征途—4.抽象工厂(Abstract Factory)模式

    上一篇的工厂方法模式引入了工厂等级结构,解决了在原来简单工厂模式中工厂类职责太重的原则,但是由于工厂方法模式的每个工厂只生产一类产品,可能会导致系统中存在大量的工厂类,从而增加系统开销.那么,我们应该 ...

  7. Java设计模式学习笔记(四) 抽象工厂模式

    前言 本篇是设计模式学习笔记的其中一篇文章,如对其他模式有兴趣,可从该地址查找设计模式学习笔记汇总地址 1. 抽象工厂模式概述 工厂方法模式通过引入工厂等级结构,解决了简单工厂模式中工厂类职责太重的问 ...

  8. PHP设计模式(三)抽象工厂模式(Abstract Factory For PHP)

    一.什么是抽象工厂模式 抽象工厂模式的用意为:给客户端提供一个接口,可以创建多个产品族中的产品对象 ,而且使用抽象工厂模式还要满足以下条件: 系统中有多个产品族,而系统一次只可能消费其中一族产品. 同 ...

  9. 设计模式(四)抽象工厂模式(Abstract Factory Pattern)

    一.引言 在上一专题中介绍了工厂方法模式,工厂方法模式是为了克服简单工厂模式的缺点而设计出来的,简单工厂模式的工厂类随着产品类的增加需要增加额外的代码,而工厂方法模式每个具体工厂类只完成单个实例的创建 ...

随机推荐

  1. RocketMQ 启动停止命令

    1.rocketmq的启动   进入rocketMQ解压目录下的bin文件夹 启动namesrv服务:nohup sh bin/mqnamesrv &  日志目录:{rocketMQ解压目录} ...

  2. vue $mount 和 el的区别

    两者在使用效果上没有任何区别,都是为了将实例化后的vue挂载到指定的dom元素中. 如果在实例化vue的时候指定el,则该vue将会渲染在此el对应的dom中,反之,若没有指定el,则vue实例会处于 ...

  3. BZOJ1975 [Sdoi2010]魔法猪学院 k短路

    欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1975 题意概括 给出一个无向图,让你走不同的路径,从1到n,路径长度之和不超过E,求最大路径条数. ...

  4. 场景/故事/story——寻物者发布消息场景、寻失主发布消息场景、消息展示场景、登录网站场景

    1.背景:(1)典型用户:吴昭[主要]  尤迅[次要] 王丛[次要] 佑豪[次要](2)用户的需求/迫切需要解决的问题a.吴昭:经常在校园各个地方各个时间段,丢失物品需要寻找.b.吴昭:偶尔浏览一下最 ...

  5. 搭建本地maven库(nexus服务器)

    第一步,下载https://www.sonatype.com/download-oss-sonatype 别下3.x版本,下2.x版本 第二步,解压,在bin目录下执行cmd命令,nexus inst ...

  6. 给力的移动 FZU - 2287

    你的弟弟给你安排了一个任务,他给了你1到N个数字的乱序排列,现在你想给你的弟弟秀一波操作,操作最少的次数把序列变成1到N的顺序排列,每次操作你可以选择序列中的一个数字并把它移动到序列的头部或尾部. I ...

  7. CSS-选择器权重计算

    权重计算规则 内联样式,如: style=" ",权值为1000. ID选择器,如:#content,权值为0100. 类,伪类和属性选择器,如.content,权值为0010. ...

  8. web前端知识大纲:系列三 html篇

    web前端庞大而复杂的知识体系的组成:html.css和 javascript 三.HTML 1.BOM BOM 是 Browser Object Model的缩写,即浏览器对象模型,当一个浏览器页面 ...

  9. AE插入音乐

    将音乐文件(如MP3文件)直接拖拽到工程里就可以. 然后添加到合成里. 点击内容预览 ,就自动播放了. 在合成窗口里面,我们可以对于音频文件进行拖动,以及裁剪等操作,但是需要注意的是AE里面不能预览声 ...

  10. Maya插件开发的几种方式归纳

    目前仅仅是一时兴趣,想要探索一下Maya插件开发的具体方法,但因为没有时间所以只起了个头 首先来到Autodesk Developer Network http://usa.autodesk.com/ ...