30-架构设计

作者: zysmoon | 来源:发表于2020-02-11 13:44 被阅读0次
一 面试题
1 讲讲 MVC、MVVM、MVP,以及你在项目里具体是怎么写的?
  • 详情见下文及项目连接地址
2 你自己用过哪些设计模式?
  • 创建型模式:单例模式工厂方法模式
  • 结构型模式:代理模式适配器模式组合模式装饰模式
  • 行为型模式:观察者模式命令模式责任链模式
3 一般开始做一个项目,你的架构是如何思考的?
  • 详情见下文及项目连接地址
二 何为架构?
  1. 架构(Architecture)
  • 软件开发中的设计方案
  • 类与类之间的关系、模块与模块之间的关系、客户端与服务端的关系
  1. 经常听到的架构名词
  • MVCMVPMVVMVIPERCDD
  • 三层架构、四层架构
  • ......
三 MVC
3.1MVC - Apple版
image.png
  • 优点:View、Model可以重复利用,可以独立使用
  • 缺点:Controller的代码过于臃肿

项目连接地址 - Architecture-MVC-Apple

3.2 MVC – 变种
image.png
  • 优点:对Controller进行瘦身,将View内部的细节封装起来了,外界不知道View内部的具体实现
  • 缺点:View依赖于Model

项目连接地址 - Architecture_MVC_Mutation

3.3 MVP
image.png

项目连接地址 - Architecture-MVP

3.4 MVVM
image.png

项目连接地址 - Architecture_MVVM
项目连接地址 - Architecture_MVVM_2

四 层级结构
image.png
五 设计模式
  1. 设计模式(Design Pattern
  • 是一套被反复使用、代码设计经验的总结
  • 使用设计模式的好处是:可重用代码、让代码更容易被他人理解、保证代码可靠性
  • 一般与编程语言无关,是一套比较成熟的编程思想
  1. 设计模式可以分为三大类

2.1 创建型模式:对象实例化的模式,用于解耦对象的实例化过程

  • 单例模式、工厂方法模式,等等

2.2 结构型模式:把类或对象结合在一起形成一个更大的结构

  • 代理模式、适配器模式、组合模式、装饰模式,等等

2.3 行为型模式:类或对象之间如何交互,及划分责任和算法

  • 观察者模式、命令模式、责任链模式,等等

本文参考:
路飞_Luck (https://www.jianshu.com/p/07f7b96bb03f)
以及借鉴MJ的教程视频
非常感谢.


项目连接地址 - Architecture-MVC-Apple
项目连接地址 - Architecture_MVC_Mutation
项目连接地址 - Architecture-MVP
项目连接地址 - Architecture_MVVM
项目连接地址 - Architecture_MVVM_2

相关文章

网友评论

    本文标题:30-架构设计

    本文链接:https://www.haomeiwen.com/subject/brwefqtx.html