Web应用程序+移动应用程序的技术堆栈

我正在构建一个Web应用程序+移动应用程序(Android和iPhone开始)。 我知道function,可以编写function规范。 我还没有决定是否应该构建本机应用程序或移动Web应用程序。

由于我将拥有可重用的function(由Web应用程序和移动应用程序使用),我应该将核心function作为Web服务公开并从视图中使用它(移动,Web UI等)

我的目标是加快建设速度。 应用程序/平台将来应该会很好地扩展。 我的预算很低,所以我正在寻找开源或低许可费用堆栈(Java,LAMP,开源等)。

我需要关于技术堆栈的建议。 如果您有类似的经历,请告诉我您的经历。

谢谢你们。

我致力于类似的解决方案,即。 网络应用+ API +移动应用和使用:

  • 服务器端 :Python + Django + Piston(用于制作REST API)。
  • 客户端 :原生iPhone应用程序(未来的Android)

我对自己的选择很满意。 Django允许快速发展。 Python非常具有表现力并且非常快(就动态语言而言)。 Piston允许您轻松创建REST API。 当然,所有这些都是免费的。

考虑到iPhone – 本机应用程序是一项要求,因此我没有考虑构建移动Web应用程序。

这在很大程度上取决于您所谈论的应用程序类型。 根据我公司的经验和听取他人的意见,选择使用原生应用程序,Web应用程序还是混合应用程序,在很大程度上取决于您需要包含的function。

一件事是逻辑,另一件是演示。

逻辑通常可以驻留在服务器上,但是如果您需要脱机工作,那么至少有一部分必须在客户端上完成。 然后,即使它是离线的 – 您应该决定它是Web应用程序还是本机逻辑,但是开发一个跨平台的Web浏览器复杂离线逻辑有时可能比在本地写两次更困难。 真的……所以如果需要离线,我仍然倾向于原生逻辑。 否则你可能会想到appcelerator,但是如果你习惯了web开发,你会有很大的学习曲线。 他们说他们是html + javascript但只是语法 – 你必须要学习整个堆栈。

演示文稿 – 如果你需要简单的列表显示而不是很多图形效果,不是很多很多图片可以通过简单的几个按钮,标签,网页浏览 – jquerymobile,phonegap是你的朋友 – phonegap特别是如果你需要访问相机或联系人等手机function。 但是如果你需要至少某种程度的平滑性,良好的用户体验以及对用户有“哇哇”的效果,除了纯粹的本机应用程序之外别无他法 – 由加入的多平台团队开发的android和ios(共享概念是比共享代码更重要IMHO)。

对于后端 – 这可能几乎所有东西,也取决于function – 它应该集成多少其他系统,有多少用户,需要什么硬件基础设施,是否考虑某些云方法(google appengine,amazon)等等等