zoukankan      html  css  js  c++  java
  • 为什么要架构?当架构走火入魔时怎么办

    为什么要架构,我来说说原因

    当你希望把复杂问题清晰化时,而不是简单化,这时需要架构

    当你希望把代码的重复利用率提高时,需要架构

    当你希望对团队整个进行把控时,需要架构

    以上只是我简单的总结,下面说说架构之“走火入魔”篇

    我很喜欢看武侠电影,喜欢邵氏,邵氏经典,必属佳片说的一点不错,在我看大部分武侠剧时,很多情节都是大反派练某种神功,走火入魔的情景,他们为何会走火入魔呢?在我看来是他们对自己当前的情况及当前武功的程次判断不够清楚,所以会走火入魔。

    那么当我们在架构设计中走火入魔了,应该如何去魔爪中走出来呢,在我看来,有以下几点

    1 对自己项目要有清晰的认识,选择适合本项目的架构方式

    2 对项目成员要了解,如果整个基础不是很扎实,应该用比较容易的架构方式

    3 对项目的变化度有一个把控,如果项目经理要变,那需要在适当的时候,适应的模块中引入设计模式及IOC等技术

    以下图中有我用的两个项目方案:

    第一种,少代码,少耦合,适用于变化度小的场合,对于变化高的模块,也可以采用局部的IOC,本项目IOC都采用Unity

    image

    在业务层使用了通用数据层引用和个性化的数据层引用

    image 

    第二种是变化度大,它会提供整个层的IOC注入,通过配置文件动态反射出来类对象

    image

    数据层,首先定义接口,然后可以根据不同的数据库进行不同的实现,本实现是SQL数据库的实现

    image

    WEBUI层将页面与页面的Controller建立在不同的项目中,使结构上更清晰,业务上,可以实现一个controller对应多套VIEW模版

    image

    呵呵,人在江湖,身不由已,做项目也是一样,不是我喜欢采用某种架构,而是因为它适合于这个项目,或者它适合于这个团队!

  • 相关阅读:
    Oracle 11g学习笔记(3)
    模式识别,图像处理工程师的要求
    vc++17 进程间的通信
    vc++学习笔记16 线程同步,异步套接字
    类型转换 float与int ,(int&)a,(int)&a
    vc++学习笔记16 线程同步,异步套接字
    vc++学习之15 多线程与聊天室程序的创建
    testl指令的问题
    C语言的几种位运算
    C语言的几种位运算
  • 原文地址:https://www.cnblogs.com/lori/p/2392604.html
Copyright © 2011-2022 走看看