我在最近几天开始学习MVP,我发现这个有趣的tutorial。我一步步跟着代码在我的应用中实现登录功能。但是,我仍然难以理解输入验证应该在哪里!在登录方法内的LoginInteractorImpl
类中的教程(一种方法中有2个功能!)。我的问题是,为什么我必须联系Interactor类来验证凭据?为什么不验证Presenter
类中的输入,如果输入正确,我将它传递给Interactor?Android MVP:登录凭证验证
2
A
回答
2
presenter
是您的views
和您的models
之间的胶水,它所做的只是交换两者之间的信息。它不应该做任何一种逻辑,只有它是指定的任务。阅读关于Seperation of Concerns。
如果您需要实现另一个登录屏幕,并且想要使用LoginInteractor
中的相同逻辑,会发生什么情况?您必须为新的演示者添加验证逻辑。或者如果你改变你的验证技术呢?
更改逻辑不应该影响演示者,反之亦然。主讲人只关心传递信息。
1
输入验证可能在视图或演示者内部,但不是主意。这个想法是让所有的“商业逻辑”在交互者内部,而活动是尽可能的“笨拙”,并且主持人是这两者之间的联系。
相关问题
- 1. 商店登录凭证android
- 2. Android登录验证
- 3. 登录验证和凭据使用angularjs
- 4. 登录使用Gmail凭证
- 5. 使用凭证在Android登录
- 6. android junit取决于登录凭证
- 7. 失败登录验证Android
- 8. Android登录验证 - 图片
- 9. Android中的登录验证
- 10. 关于登录凭证
- 11. LWP :: UserAgent和登录凭证
- 12. Symfony2登录 - 不良凭证
- 13. LDAP无效登录凭证
- 14. 登录Yammer Embed - Pass凭证?
- 15. 保存登录凭证Xcode
- 16. Windows系统登录凭证
- 17. SQLServer服务登录凭证
- 18. 登录验证
- 19. 验证登录
- 20. 登录验证
- 21. 登录验证?
- 22. 验证登录
- 23. 验证外部网站的登录凭证
- 24. 从joomla验证登录凭证!核心结构
- 25. IIS请求在Windows身份验证上登录凭证
- 26. 从本地存储器验证登录凭证Sencha
- 27. 使用Windows登录凭证进行LDAP身份验证
- 28. 如何在登录时验证用户凭证?
- 29. 如何在Framework 7中验证登录凭证
- 30. 验证FTP凭证
谢谢!这完全是关于可重用性的。 –