我正在编写一个简单的测量应用程序,它将使用蓝牙与设备通信。
我的问题是在哪里放置蓝牙连接初始化代码?模型或控制器?
根据我对MVC的理解,Model就是一个应用程序 - 数据模型和适用于数据的所有逻辑。 Controller是Model和View之间的某种粘合剂。
但对我来说似乎最好将连接代码放到Controller中,因为可能在未来会有新版本的设备将使用USB或其他东西。
您认为在我的案例中哪种更适合?
最诚挚的问候, 马尔钦
答案 0 :(得分:1)
取决于环境,但我们遵循“瘦控制器,厚模型”原则。话虽如此,连接函数库都不适合。
在我工作的环境中,设备连接功能最适合于库(然后您可以拥有多个库,涵盖您将来可能要使用的所有连接类型,因为它们已经开发),然后用于适当的地方。
如果需要,这还允许在不同项目/软件的后期重复使用。
理想情况下,库应该具有泛型函数(例如connectToDevice()和getFile()而不是getApplicationSpecificPhotosFromDevice),控制器和使用库检索或提交数据的底层模型中会发生特定于应用程序的内容。