MVP是Model-View-Presenter的缩写,它的作用是将业务逻辑与界面分离,并解决了传统MVC模式中的一些问题。
而FMVP是在MVP基础上进行了改进,将View的逻辑交给了Fragment或Activity来处理,而Presenter则负责数据的处理和业务逻辑,Model负责数据的存取。
区别方面,MVP与FMVP最主要的区别在于View的角色。
在MVP中,View只负责界面展示和用户交互,业务逻辑交由Presenter来处理。
而在FMVP中,View的逻辑由Fragment或Activity处理,从而使得View更加轻量化,Presenter则专注于业务逻辑的处理。
总的来说,FMVP是对传统MVP模式的一种改进,并且更加适用于一些复杂的界面逻辑。
它能够使得代码结构更加清晰,降低耦合度,提高项目的可维护性和可测试性。