本课程针对软件团队中的架构师和专业设计人员,全面阐述架构的范围,把握方法,以及关键实践。涉及:应用架构,逻辑架构,实现架构。在课程中,将结合实际案例,讲解架构设计的技术:变化分解,模式,分层,分解,抽象,封装,接口隔离,扩展配置,美学素质等等。在每个技术层面,都将结合案例深入地讲解。同时,结合项目关键风险,讲解如何根据项目目标和环境进行架构的权衡与取舍。
课程还将针对软件开发中的比较常见的通用性的架构机制进行深入实践性的剖析:数据持久化框架的设计,表示层框架设计,控制逻辑层的框架设计。组件、中间件的设计,类库的设计,复杂系统的分包策略,如何对外发布接口。

课程将介绍一些成熟的框架,MFC,Spring。同时介绍一些成熟系统的架构设计实例,介绍如何结合需求搭建系统的应用架构。

课程指南:

培训对象 软件设计师,高级软件开发工程师
学员基础 至少2年以上开发经验,具备面向对象编程基础。有实际项目经验。

培训目标
 
本课程结束后,学员应能够:

了解架构的范围
学习架构描述方法
学习基本的架构模式
学习OOD设计原则
掌握系统分包的基本原则
掌握常用框架模式
层次框架设计基础—表示层设计方法
层次框架设计基础—业务层设计方法
层次框架设计基础—持久层的设计方法
中间件的设计方法
实体对象与数据存储设计与映射
掌握面向方面的设计方法(AOP)
理解组件设计与实现
掌握Framework设计与实现
了解构架设计流程
掌握架构设计文档编写
理解以架构为核心的迭代开发

培训内容 方向
内容
软件架构师简介 基本素质
职责范围
特殊的视角
决策机制
技术支持

架构的范围 什么架构
系统环境
基础设施
通用机制
关键问题与风险

架构技术基础 Web技术
XML简介
J2EE架构简介
.Net架构简介

架构组织方式 基于组件的架构
BPM
SOA架构
分布式

架构应用类别 Web应用
应用程序
实时控制
网络通信

架构描述方法 UML可视化建模
构架视图
用例视图
逻辑视图
组件视图
部署视图
进程视图

OOD设计基本原则 聚合与继承原则
单一职责原则
OCP原则
依赖倒置原则
里氏代换原则
接口隔离原则

分包的基本原则 粒度:重用发布等价原则,共同复用原则,共同封闭原则
稳定性:无环依赖原则,稳定依赖原则,稳定抽象原则

基本架构模式 结构性架构模式

管道和过滤器
黑板
分布式系统架构模式
代理
交互系统架构模式
模型-视图-控制器
表示-抽象-控制
自适应系统
反射
微核

系统常用框架模式 安全
异常处理
日志记录和跟踪
性能优化

常用框架模式 表示层模式
拦截过滤器,前端控制器,Context对象,应用控制器
视图助手,复合视图,服务到工作者,分配器视图
业务层模式
业务代表,服务定位器,会话门面,应用服务,业务对象
复合实体,传输对象,传输对象组装器,值列表处理器
集成层模式
数据访问对象,服务激活器,业务领域存储,WebService中转,Web Worker微架构

层次框架设计基础—表示层设计方法 表示层的范围与作用
表示层和域模型的关系
表示层实现机制
表示层框架模型
如何构建可装配的表示层
表示层项目实例(基于:Struts,MFC,Swing,WinForm,WPF)

层次框架设计基础—业务层设计方法 业务层的范围与作用
业务层和需求的关系
业务层的实现策略
业务层设计原则
业务层实例剖析(基于:Spring,Castle)
如何构建可扩展的业务层

层次框架设计基础—持久层的设计方法 持久层的范围与作用
如何构建可移植的持久层
如何设计适应数据结构变化的持久层
持久层设计原则和模式
持久层项目实例(基于:Hibernate,Websharp)

实体对象与数据存储设计与映射 数据的类型以及适用的存储形式
结构化数据的基本设计原则
基于文本文件的数据存取与解析
基于专有格式文件的数据存取与解析
基于关系数据库的数据存取
基于XML的数据交换与存取
数据在应用程序中的映射-实体对象
数据和对象的映射策略
如何优化数据对象

层次框架设计进阶—应用层 应用层的范围与作用
如何从系统中划分应用层
应用层和需求的关系
应用层的实现策略
应用层的设计原则
应用层实例解析
如何构建可适应的应用层

层次框架设计进阶—通用层的设计方法 什么是通用层
如何从具体应用中提取通用层
通用层的范围与深度
如何使通用层使用需求的变化
如何扩展通用层
通过实例项目了解通用层的设计方法

面向方面的设计方法(AOP) AOP于横切关注点
AOP基本原理
AOP和过滤器
AOP技术应用范围
使用AOP实现松散耦合
使用AOP组合两个业务逻辑
IAspect接口与AspectProxy类
配置文件

组件设计与实现 组件的接口
组件接口设计
组件的打包策略
组件内部实现策略
组件实例

子系统设计与实现 子系统划分
子系统接口设计
子系统连接交互设计
子系统部署设计
子系统消息通讯机制

中间件的设计方法 中间件的用途与范围
如何从应用中提取中间层
中间层和应用层和底层的关系
中间层到中间件的封装方法
中间件实例解析

Framework设计与实现 什么事Framework
如何实现framework的可扩展性
如何实现framework 的可适应性
如何实现framework的可复用性
Framework 接口设计
Framework 的实现设计
Framework 类的层次设计策略与方法
典型的framework设计
WinForm
Spring
GDI+
ADO.Net

实例工程项目架构演练 项目简介
架构的策略
教练计划

构架设计流程 需求定义细化
架构分析
确定设计机制
确定设计元素
说明运行时架构
说明分布
用例分析
子系统设计
子系统接口设计

架构设计文档编写 构架表示方式
构架目标和约束
用例视图
逻辑视图
进程视图
部署视图
实施视图
数据视图
大小和性能
质量

以架构为核心的迭代开发 架构师项目职责明确
架构师需要的准备工作
实例项目迭代开发计划
项目人员任务与责任分配

初始阶段 确定需求范围
发现项目风险
确定被选架构

细化阶段 细化需求
设计架构
实施架构
验证架构
风险处理
建立架构基线

构造阶段 实现并行开发的架构
开发中的架构管理
架构重构
架构集成

提交阶段 提炼系统架构
架构资产化重构
架构规格

标注:采用实际案例教学,授课过程中可以针对实际问题提供技术性指导

课程特点 1、 资深专家授课、互动式案例教学、实战模拟项目运作

2、 理论与实践相结合,注重案例的讲解

3、 有深刻的理论深度,准确把握先进工作理念

4、 全真案例讲解,学员边做边学,具体、深刻

5、 咨询学员提出的案例,指导实际项目应用

[@more@]

架构师培训入门知识体系树相关推荐

  1. 架构师培训入门知识体系树--转载

    原文:http://javatar.iteye.com/blog/109730 在网上偶然看到的一个架构师培训课程的介绍,呵,从整个大纲上没看到什么亮点,但也算个知识体系树,可以参考下. 课程简介: ...

  2. 架构师入门知识体系树

    在网上看到的一个架构师培训课程的知识体系树,参考下. 课程简介: 本课程针对软件团队中的架构师和专业设计人员,全面阐述架构的范围,把握方法,以及关键实践.涉及:应用架构,逻辑架构,实现架构.在课程中, ...

  3. 大数据运维架构师培训(1):Zookeeper,Hadoop(HDFS,MR,Yarn)

    一.风哥大数据运维架构师实战培训专题2.0介绍 课程背景: 为满足想学习和掌握大数据运维与体系架构的学员,风哥特别设计的一套比较系统的大数据库运维培训课程. 课程目标: 本套风哥大数据运维架构师实战培 ...

  4. 架构师培训:aop是什么

    那些研究过Spring的人都知道Spring的核心功能是Ioc和Aop. Ioc的主要功能是应用程序对象之间的解耦,而Aop可以实现跨领域代码(例如权限,日志等)以将它们绑定到特定对象之间. 对于用户 ...

  5. 高级系统架构师培训公开课举行

    众所周知,系统架构师的职责是在项目开发过程中,制定这个项目的总体脚骨,指导整个开发团队完成这个计划,他必须对开发技术非常了解,并且需要良好的组织管理能力,可以这样说,一个架构师的好坏决定了整个项目的成 ...

  6. java架构师培训:java最佳测试框架JBehave的基本介绍

    我们都知道行为驱动开发(BDD).此类测试以对业务用户透明的方式描述了验收测试.JBehave是另一个用于BDD测试的Java测试框架,主要与SeleniumWebDriverforJava一起使用. ...

  7. 最全Java架构师课程体系表! Java 架构师要学习的知识这里全都有!

    想成为java架构师,首先你自身得是一个高级java攻城狮,会使用各种框架并且很熟练,且知晓框架实现的原理. 比如,你要知道,jvm虚拟机原理.调优:懂得jvm能让你写出的代码性能更优化:还有池技术: ...

  8. Java架构师需要哪些知识?

    如何才能达到Java架构师技术要求标准?Java架构师需要熟练掌握复杂的数据结构和算法.熟练使用linux操作系统,Linux线上排除故障.熟悉tcp协议.系统集群.[负载均衡].反向代理.动静分离, ...

  9. 机器学习入门知识体系

    IT派 - {技术青年圈} 持续关注互联网.大数据.人工智能领域 关注 往期精彩回顾 重大改变!Excel即将接入Python!办公软件也要革命 入门十大Python机器学习算法(附代码) 女博士实名 ...

  10. 成为一个Java的架构师要学习哪些知识?

    既然java架构师,首先你要是一个高级java攻城尸,熟练使用各种框架,并知道它们实现的原理.jvm虚拟机原理.调优,懂得jvm能让你写出性能更好的代码:池技术,什么对象池,连接池,线程池...:;j ...

最新文章

  1. C++中关于[]静态数组和new分配的动态数组的区别分析
  2. 支付宝接口调用问题快速通道
  3. 简述http 和 https区别
  4. SpringBoot获取ApplicationContext
  5. Ioc Autofac心得
  6. 单列表_使用Excel中的quot;记录单quot;功能快速录入数据
  7. Ubuntu开发环境搭建
  8. 如何将lnmp 0.5里面的php5.2.14升级到php 5.3.3???
  9. 【NOIP2006】【Luogu1060】开心的金明(01背包模板)
  10. AS 中强制类型转换
  11. 借助Squid代理服务器,建立灵活的访问控制系统
  12. Sql Server2005创建数据库
  13. SSL基础:5:openssl常用选项说明
  14. ie11兼容性视图设置_IE11打开某些网站,F12仿真模式中文档模式默认为IE7?
  15. 后台管理导航菜单及模板
  16. JVM -- JVM内存结构:程序计数器、虚拟机栈、本地方法栈、堆、方法区(二)
  17. ROS操作系统快速入门
  18. 【MCAL_CANDriver】-2.1-硬件过滤(Hardware Filter)详述及配置
  19. 新概念英语(第四册,旧版)复习(原文及全文翻译)——Lesson 1 - Finding Fossil Man(寻找化石人)
  20. ros移动机器人,激光雷达里程计rf2o_laser_odometry的使用与分析

热门文章

  1. 步步高彭雄:弄潮“互联网+零售”从端到端流程开始
  2. 迪士尼电影经过多年的
  3. 怎么让抖音视频当做铃声android,抖音短视频设置手机铃声教程_苹果手机怎么设置抖音手机铃声_3DM手游...
  4. spark mlib系列2
  5. Terminal Emulator for Android(安卓终端模拟器)的使用
  6. mysql 检索结果排序方式_MySQL--排序检索数据(ORDER BY)
  7. requestLayout() improperly called by android.widget.GridView{43cefbd VFED.VC.. .F...... 0,0-2190,319
  8. Ubuntu Firefox浏览器安装Flash插件
  9. Prime Number
  10. 原生JS判断两个元素是否为兄弟节点