我计划创建一个跨平台的移动应用程序,该应用程序具有适用于大多数移动平台的本机版本,可能是Windows Phone,Android,iOS。它应该将数据存储在服务器上的数据库中,移动应用程序主要用于可视化(数字)数据。
在单独设计和编程移动应用程序+ Web服务时,我是一个菜鸟,因此我希望您可以帮助我解决以下问题。我最熟悉的技术:Java EE,Python,HTML / CSS / JS,MySQL,Graphics。也许我应该去PhoneGap?非常感谢!
1)您会推荐哪种跨平台移动技术?
2)什么样的解决方案最适合服务器/应用服务器? (估计代码行<5000)
3)开始学习评分算法的好地方是什么?
如果您对所提出的任何问题有答案,请回复。
编辑:发现了一个类似的问题:Cross-Platform Mobile Application Solution
答案 0 :(得分:2)
根据我的研究和经验,我想推荐以下技术,我们可以在构建移动应用时考虑这些技术。
查看:视图是所有移动应用的重要组成部分。当我们开始构建UI / UX时,我们也考虑了它的平台设计原则。看看这些要点我想推荐React Native。
React Native:它是一个Facebook,Instagram开发的JavaScript库用于创建本机移动应用程序。它允许我们使用JSX(已知的HTML外观代码和JavaScript)编写iOS和Android应用程序。它基于“一次学习,随处写作”的方法。
<强>赞成强>
使用本机行为和互动呈现原生视图......您最终会得到一个真正的原生应用
有一个“一次学习,随处写”的范例,开发人员只需要React和JavaScript为Andoroid,iOS创建更好的应用程序。
使用原生架构和概念
它不需要WebView
CSS Flexbox用于布局设计
缺点
代码抽象会导致错误和内存泄漏
如果没有由React Native提供的API,无法工作,技术上没有像经典混合移动应用程序那样的回退
在创建适当的本机应用程序时,开发人员将有更多关于性能调整的能力和控制
React Native仍然是一个新框架,因此我们无法预测可能的问题和缺点
这些缺点可以忽略不计,特别是如果我们认为React Native每天都在为越来越多的原生应用程序提供支持。
Transit中的数据:如果您的应用程序同步来自Web服务的数据,那么市场上有多个框架可以让我们的工作变得更轻松。请在下面找到一些最流行的JavaScript RESTful框架:
静态数据:您还需要同步数据的离线存储空间。由于我们在JavaScript中没有对原生SQLite的直接支持,因此我们需要使用一些React Native SQLite插件。请在下面找到市场上可用的插件:
almost,andpor,jbrodriguez,ramsundark5,remobile
对于过境数据/静态数据,我想推荐所有主要平台(Android,iOS,Windows)上提供的Siminov Framework。它还支持混合技术,例如React Native,Cordova,Xamarin。
<强>赞成强>
<强>缺点强>
算法:我发现此链接nurlybayevaAMS9与算法有关,希望这对您有所帮助。
答案 1 :(得分:1)
1)从未使用PhoneGap,虽然知道它,但不要忘记考虑一个简单的HTML5应用程序。如果可能的话,这将为您节省大量工作并最大限度地提高兼容性。
2)您可以使用Java EE(请参阅JAX-RS / Spring)和Python(请参阅django)开发出色的RESTful Web服务。选择更多的是个人品味。
答案 2 :(得分:1)
尽量避免编写跨平台应用程序。使用HTML5 + jQuery是可行的。但是你永远无法获得与原生应用相同的外观和感觉。其次,windows,ios和android都有自己的外观和感觉,并会想出自己的元素。你永远不能满足所有三个具有相同代码库的人。更好的是使用本机sdks进行编码。