Node-webkit:为 Web 和桌面应用程序使用相同的代码库
Node-webkit: using the same codebase for web- and desktop application
我考虑了以下几点:
- 使用 Nodeweb 工具包开发桌面应用程序。
- 还可以使用相同的代码库开发 Web 应用程序。
- 应用程序应该看起来完全相同。
- 两个应用程序必须使用相同的代码库。这样做的原因是为了减少开发费用。
如果由我决定,我什至不会考虑在桌面上使用 node-webkit。 Win 平台有更好的桌面解决方案。对于 Web 应用程序,使用 Node 肯定是可行的。
但是计划该项目的人不知何故认为 Node 是同时适用于这两个应用程序的一种方式。
经过深思熟虑,我得出的结论是,随心所欲只会增加开发和维护成本。
我考虑将 express(甚至 Sails.js)用于 Web 应用程序。我做了一些测试,我在 node-webkit 上使用了 express,它 运行 很好。
当然 NW 是强大的平台(爆米花)。就我而言,我看不出它如何减少开发费用
我反对这个解决方案是否正确?这是一个合理的决定吗?我没有看到其他解决方案?
非常欢迎任何意见
您没有说明您认为 node-webkit 不是桌面应用程序的合适选择的原因。
另一方面,我认为客户认为在 node 和 node-webkit 中开发将能够降低成本的观点并非没有根据。
nw.js(以前的 node-webkit)基本上是一个集成了 node.js 引擎的 Chromium 浏览器。因此,如果您使用 node.js(及其任何框架)开发 Web 应用程序,那么您将能够相当容易地在 nw.js 中重用它。
我实际上就是这样做的,而且效果很好。诀窍是编写一些 Node Webkit 代码,将 "detect" 它 运行 作为桌面应用程序,而不是 Web 应用程序,从而与桌面通知等集成
是的,这比编写 Web 应用程序的工作量更多,但与开发单独的应用程序相比,它的工作量(和维护)也更少。你会使用很多通用代码,因为你已经在浏览器中 运行,我觉得这个项目节省了很多时间。
事实上,我目前正在开发另一个需要一些桌面功能(文件访问、通知)但与 Web 应用程序具有相同功能的应用程序,我建议在 Node Webkit 中进行开发。
对我来说重要的标准是两个应用程序有 90% 相同,桌面只是添加了您通常在 Web 上没有的东西。所以该应用程序的核心是完全相同的 AngularJS 应用程序,其中一些 JavaScript 由 Node Webkit 启动页面注入以添加所需的桌面行为。
我考虑了以下几点:
- 使用 Nodeweb 工具包开发桌面应用程序。
- 还可以使用相同的代码库开发 Web 应用程序。
- 应用程序应该看起来完全相同。
- 两个应用程序必须使用相同的代码库。这样做的原因是为了减少开发费用。
如果由我决定,我什至不会考虑在桌面上使用 node-webkit。 Win 平台有更好的桌面解决方案。对于 Web 应用程序,使用 Node 肯定是可行的。
但是计划该项目的人不知何故认为 Node 是同时适用于这两个应用程序的一种方式。
经过深思熟虑,我得出的结论是,随心所欲只会增加开发和维护成本。
我考虑将 express(甚至 Sails.js)用于 Web 应用程序。我做了一些测试,我在 node-webkit 上使用了 express,它 运行 很好。
当然 NW 是强大的平台(爆米花)。就我而言,我看不出它如何减少开发费用
我反对这个解决方案是否正确?这是一个合理的决定吗?我没有看到其他解决方案?
非常欢迎任何意见
您没有说明您认为 node-webkit 不是桌面应用程序的合适选择的原因。
另一方面,我认为客户认为在 node 和 node-webkit 中开发将能够降低成本的观点并非没有根据。
nw.js(以前的 node-webkit)基本上是一个集成了 node.js 引擎的 Chromium 浏览器。因此,如果您使用 node.js(及其任何框架)开发 Web 应用程序,那么您将能够相当容易地在 nw.js 中重用它。
我实际上就是这样做的,而且效果很好。诀窍是编写一些 Node Webkit 代码,将 "detect" 它 运行 作为桌面应用程序,而不是 Web 应用程序,从而与桌面通知等集成
是的,这比编写 Web 应用程序的工作量更多,但与开发单独的应用程序相比,它的工作量(和维护)也更少。你会使用很多通用代码,因为你已经在浏览器中 运行,我觉得这个项目节省了很多时间。
事实上,我目前正在开发另一个需要一些桌面功能(文件访问、通知)但与 Web 应用程序具有相同功能的应用程序,我建议在 Node Webkit 中进行开发。
对我来说重要的标准是两个应用程序有 90% 相同,桌面只是添加了您通常在 Web 上没有的东西。所以该应用程序的核心是完全相同的 AngularJS 应用程序,其中一些 JavaScript 由 Node Webkit 启动页面注入以添加所需的桌面行为。