我正在开发一个原型app / website作为项目可行性研究的“尖峰”。我们需要一个网站和一个应用程序。
我来自具有相当数量的sql经验的web表单/ c#背景..并且已经达到了陡峭的学习曲线以掌握MVC,实体框架等。
我已经开发了一个MVC应用程序,它首先使用OAuth并使用Asp.Identity(和角色 - 我不敢畏惧:)。
这使用Azure网站和Webjobs来处理其他任务。我非常喜欢不必管理整个服务器的想法。
在看似移动应用程序的逻辑步骤后,我还添加了Web Api ..并且已经做了一些成功的检查,它在那里并使用fiddler等工作。
我现在需要'Spike'这个的移动元素并且非常支持Cordova方法,因为没有真正的性能要求,看起来像AngularJS等可以产生很好的收益。所以我已经将Cordova工具添加到我的开发环境并完成了几个教程,并在我的Android手机上成功安装了一个应用程序..到目前为止一直很好。
所以看看Azure Mobile服务,这似乎为我们的应用程序提供了一些不错的设施..然而,我意识到它仍然是新的,但它确实适合于使用Node-JS'服务器端'应用程序,如果使用科尔多瓦..这是固定的还是我可以使用C#? 但我也觉得我可能通过添加WebApi来规避对移动服务部分的需求..
从表面上看,移动服务看起来像是一种很棒的“云服务”模式,仅适用于简单的应用程序要求。或者我错了..我是否应该在我的网站上使用它...
APP和网站将使用相同的数据库,身份验证等。这将我带到数据库..这不是一个真正的“现有数据库”(移动服务的所有教程似乎都在这里) ..如果需要,我可以重新开始..但当然它是用代码建立的第一个EF模型。
我是否应该转移使用移动服务的能量,或者,正如我怀疑的那样,继续开发我自己的RESTful apis添加到我的网站上。?
我想我正在寻找一些最佳实践指导。
答案 0 :(得分:1)
关于移动服务的一个重要注意事项是,它是一个收集服务,而不仅仅是数据存储的后端。
您在大多数移动平台的后端和相应的客户端库上都有身份验证,推送通知,离线支持,混合连接等等(请注意,因为它基于REST,所以不会停止您从非移动平台(如WPF,ASP.NET MVC等)使用相同的服务。)
所以问题是,您实际需要多少其他功能,以及您自己编写多少功能而不是在移动服务中消费/配置它们。
答案 1 :(得分:-2)
我将用一个过于简单的答案来回答您过于复杂的问题:移动服务是专为移动开发人员设计的,他们没有或很少有经验开发后端使用后端为其移动应用程序提供服务。如果您是经验丰富的后端开发人员,您可以从头开始。