【问题标题】:Which is better? Native App or hybrid App? [closed]哪个更好?原生应用还是混合应用? [关闭]
【发布时间】:2013-10-21 06:16:11
【问题描述】:

我想为 iOS、Android 和 windows phone 开发一个简单的应用程序。

我只是想知道一个简单的 HTML5、JS 和 CSS 组合可以在所有这些平台上工作。

我想知道哪一种效率更高?

时间和编码都没有问题。但如果我可以用 HTML5-JS 本身实现一切,我会选择 Hybrid 开发。我想通过示例了解Native 和 Hybrid Development 的主要区别(我知道主要区别是 HTML5-JS 支持跨平台)。

注意:我不是在制作游戏应用程序。

【问题讨论】:

标签: android ios windows-phone-7 mobile


【解决方案1】:

根据我的经验,除非您正在开发的应用程序非常简单,否则这些跨平台解决方案(例如 PhoneGap 和其他解决方案)永远不会真正达到预期。即使是像过渡动画和小的 UI 调整这样的基本操作,使用这些工具也将是一场艰苦的战斗。

原生开发可能需要更长的时间(如果您要为超过 1 个平台构建应用程序),但好处是您可以完全控制您正在制作的内容。在性能方面,本机开发仍然并且可能永远远远领先于跨平台开发,这仅仅是因为它没有嵌套在浏览器或任何其他运行时解释平台中的开销。

此外,根据我的经验,能够编写一次代码并立即在所有平台上运行的神话是一种圣杯。许多人声称已经实现了它,但您总是会发现自己正在编写特定于平台的代码(以“if explorer、if safari、if chrome”等形式)。

我的建议是,为您的应用编写可靠的架构。在一个平台上构建应用程序,解决设计中的所有故障,然后将设计复制到其他平台。这将花费您一点时间,但是您的应用程序的强大功能以及在您的应用程序中添加/更改功能和其他小东西的灵活性将是值得的。

以 Facebook 为例。他们以前的应用程序(如果你记得的话)是一个跨平台的应用程序。它很慢,没有响应,会一直崩溃并且几乎无法使用。大约一年多前,在无数次投诉之后,他们发布了原生应用的更新,突然间,所有这些问题都消失了(嗯,至少大部分)。

【讨论】:

  • 我喜欢混合方法的一点是它可以快速获得结果,因为当您的设备我们的模拟器准备好更新更改时无需等待。使用混合版本时,您通常只需在浏览器中按 F5 即可。与ionicframework.com 一样,您也可以在您开发的应用程序的网站版本中重复使用您的移动代码。
  • 但我认为如果应用程序无响应,那么开发混合应用程序就是浪费时间。
【解决方案2】:

主要区别在于 UI 组件,它是应用程序中的主要内容。您无法在混合应用程序中实现与原生对话框、通知和原生动画类似的原生外观。

我想知道哪一个效率高?

效率不是问题,混合应用将是一个支持多个平台的单一应用,具有成本效益和时间效益。

混合应用的优点

  1. 成本效益,将开发单个应用程序,从而节省成本 支付给开发者在不同平台上制作应用程序的费用。
  2. 时间有效,将节省时间用于制作不同的应用程序 不同的平台。
  3. 会更新非常快,不像你从谷歌Playstore更新 应用程序将仅在服务器端更新,您不需要 重新安装。
  4. 尺寸更小。作为用于支持多种资源的资源 屏幕将由 HTML 处理。

混合应用的缺点

  1. 外观和感觉都不像原生应用。
  2. 如果服务器关闭,应用甚至不会显示静态行为。

如果你愿意在 UI 上妥协,那么你应该选择 Hybrid 应用。

【讨论】:

  • 在混合应用程序的缺点中,您说 - 2) 需要为每个平台开发不同的应用程序,这会增加成本。我认为这对您的混合应用程序的 PROS 来说只是一个争议 - 1)成本效益
  • 更新答案,立即查看
  • @Brontok “成本和时间有效”,“体积更小,更新速度快”——关于什么?能否请您更准确一点。需求分析、开发、测试、项目管理、营销、工具以及为特定平台和工具集招聘和培训开发人员的间接成本是有成本的。恕我直言,您所说的优点和缺点是没有意义的。
  • @CouchDeveloper 我想我已经说清楚了。
  • 混合应用程序甚至普通的网络应用程序(使用应用程序缓存)都可以在没有互联网连接的情况下离线使用
猜你喜欢
  • 2020-06-15
  • 2021-06-09
  • 2010-10-12
  • 2011-03-05
  • 2022-01-10
  • 1970-01-01
  • 1970-01-01
  • 2014-12-07
相关资源
最近更新 更多