我目前在一家 VoIP 公司作为实习生开发软件。我正在使用 MVC 模式为 iOS 创建一个 VoIP 客户端。
我对 MVC 有很好的了解,而且我知道这个问题被问了一百万次,但我对我的示例中的“智能”应该去哪里感到困惑。
示例:应用程序要求用户凭据,将这些存储在模型中,比如说 (bool)setUsername(string usr)。模型将用户名保存到 NSUserDefaults,密码保存到 Keychain。控制器不会被模型保存此数据的位置所困扰。控制器充当 View 和 Model 的锁存器并且还处理输入事件(例如按钮按下)。现在,使用此信息,应用程序希望在服务器上注册,并在一段时间后拨打电话。
这个功能( registerUser(), makeCall() )在 MVC 中的哪个位置?我的猜测是控制器,因为模型是用于持久化和计算数据而不是任何其他智能行为,但我仍然有疑问。