App架构学习笔记

本文介绍了APP架构设计的三个核心要点:层次化、模块化和控件化,并详细探讨了页面架构中的MVC、MVP和MVVM模式。此外,文章深入讲解了软件架构设计中的SOLID原则,包括单一功能原则、开闭原则、里氏替换原则、接口隔离原则和依赖反转原则,强调这些原则在确保系统扩展性和维护性方面的重要性。

1,APP架构设计

      层次化(上层依赖下层,下层不能依赖上层。要分层次,参照android系统架构是怎样分层次的) ;  模块化(例如网络请求模块);   控件化(具有特定功能可以封装成一个控件)

2,页面架构MVC MVP  MVVM

       类型创建过程Activity/Fragment特点缺点
 MVCC-->M+V(c层创建了M层和V层)作为C层分离了Model和Controller逻辑增多,C层越来越复杂
MVPV-->P-->M作为V层在MVC的基础上彻底分离了View和Model。V调用P中的方法,P通过接口回调Vpresenter到View的交互会琐碎而复杂
MVVMV-->VM-->M作为V层在MVP的基础上增加DataBinding,代码量更小XML中包含代码

3,  搭建软件架构要具备:扩展性好   维护方便,那么就要遵循SOLID设计原则。什么是SOLID设计原则?

       SOLID指的是 单一功能  开闭原则  里氏替换   接口隔离  依赖反转,指代了面向对象编程和面向对象设计的五个基本原则。它可以让我们更容易开发出一个容易维护和扩展的系统。

   [S]单一功能原则 :单一功能原则 认为对象应该仅具有一种单一功能的概念

   [o]开闭原则(ocp) 认为“软件体应该是对于扩展开放的,但是对于修改封闭的”的概念。   对扩展开放,意味着有新的需求或变化时,可以对现有代码进行扩展,以适应新的情况。对修改封闭,意味着类一旦设计完成,就可以独立完成其工作,而不要对类进行任何修改。也可以用变化和不变来说:封装不变的部分,开放变化的部分。一般用接口 继承的方式实现“开放”应对变化。用接口抽象你的职责,变化越多 那么实现接口的类越多  继承的子类越多。

   [L]里氏替换原则 :里氏替换原则 认为“程序中的对象应该是可以在不改变程序正确性的前提下被它的子类所替换的”

   [I]依赖反转原则 :认为一个方法应该遵从“依赖于抽象而不是一个实例” 。抽象是抽象类或者接口 定义了功能。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值