2013-11-14 66 views
2

在Web开发中,数据库(例如mySQL),后端(Python)和前端(HTML,CSS,JS)之间似乎存在明显的区别)。在应用程序开发中,它似乎更加模糊。前端后端通信iOS应用

如果我有一个数据库托管在像AWS或GAE这样的服务上,那将是我的数据库。而且,我对移动应用本身的看法将是前端。

后端代码在哪里?是否在应用程序本身上使用Objective-C编写的视图控制器?是否应该在DB所在的服务器上写入逻辑,并且这将是后端代码?

我想我真正要问的是 - 典型的沟通渠道如何与原生移动应用程序一起工作?我对应用程序的唯一体验是创建可在本地工作的应用程序以及与BaaS提供者(如Parse.com)一起工作的应用程序。

我想在服务器上设置一个远程数据库,就像上面描述的那样,然后从应用程序的视图控制器发出简单的请求?我是否需要更进一步并创建一个移动应用程序呈现的整个Web应用程序?如果可能的话,我希望尽可能在Objective-C中执行尽可能多的代码(这是我最舒服的地方),但我愿意学习新技术来提高我的工作质量。

谢谢

回答

1

iOS应用使用MVC(Model-View-Controller pattern),如果你不熟悉它,我会建议您花一些时间来学习它的基本功能。

回答你的第一个问题:控制器是应用程序的“后端”,但它也可以调用其他对象和类来为它工作。因此,与Web服务通信的代码不必驻留在viewController本身中,但它必须调用包含该功能的对象。

至于你关于与网络服务交流的问题,我建议你看看AFNEtworking。这是在iOS应用程序中实现网络服务通信的更简单的框架之一,这里是a decent tutorial on implementing it。但是,我想指出的是,如果不需要客户端 - 服务器通信(如果应用程序的数据仅用于本地),那么实现SQLite数据库或CoreData将更容易该应用程序,而不是在服务器上。

希望有帮助!