Mih*_*hai 25 javascript c# wpf node.js electron
最近,我一直在阅读关于Electron的内容,与建立Windows 7桌面应用程序市场(即WPF)已经建立的东西相比,我对它的潜力感到好奇.
到目前为止,我注意到那些倾向于Electron的人讨论了它提供的事实:
HTML5,CSS3,JS,有的Node.js被全部设置为直接跳转至构建桌面应用程序.Chromium并且Node.js跨平台,应用程序可以在支持这两者的任何地方运行.GUI设计:结合HTML5,CSS3并JS证明了多年来能够实现的目标.谈到WPF,它的支持者讨论了以下有利的论点:
.NET框架,使开发人员可以访问所有本机Windows功能.XAML标记语言:有人认为,它XAML允许有效地呈现复杂的UI元素,支持双向数据绑定,并且知道它在其他环境中可能是有用的(即,通过适当的调整,例如,Android开发).JIT特性.如果我们单独讨论这些论点,我们可以同意这两种技术都是可敬的.但是,当您要求开发人员帮助为您的项目选择正确的框架时,事情就会有些偏颇.我认为这种偏见可能是因为问题太不明确,或者是因为有些人比其他人更熟悉一个框架,因此舒适区就会开始.
因此,请记住,两者只是达到目的的手段,而不是生活哲学,相比之下,它通常归结为以下观点.请注意,这些不是我的想法,而是我从网络上的各个讨论组收集的内容.
DOM操作是一种昂贵的操作,而XAML渲染速度非常快.OS通过它访问一些本机功能APIs,而WPF可以让您访问所有功能,因为它存在于.NET.JS被解释,而C#编译则是.MVVM模式很好地配合,而类似的东西在Electron中更难实现..NET.不确定Xamarin/ .NET Core是否考虑到了.Chromium并Node.js实现其目标.一方面,似乎软件工程师(尤其是那些在企业界工作的人)倾向于支持WPF.另一方面,Web开发人员对Electron带来什么感到兴奋.在我看来,这是偏见,而且你使用技术比使用其他技术更多的事实并没有说明技术本身的适用性.
因此,为了避免这种偏见,或许还有其他唠叨的答案,我想为您提供以下案例研究.
让我们说有人对Windows 7使用Electron构建桌面应用程序感兴趣.该应用程序的目标是允许用户在大XLSX文件(即1e5行)上配置和运行极其计算密集的统计分析.总之,用户填写的表单,生成特殊的语法文件(即,json,xml,或txt),应用程序读取该文件,并执行与指定的存在的参数的分析.最后,pdf向用户提供具有图形和表格的文件.现在,让我们假设以下关于这个项目:
DOM不直接操纵.相反,Vue.js或者React因为它们实现DOM更快的虚拟而被使用.OS功能.应用程序只需要将文件读/写到磁盘,或许可以发送一些通知.JS运行统计分析太慢,所以编写和调用C++基于Node.js插件的插件JS.在幕后,C++代码构造对象并进行计算.最后,得到的矩阵和向量将暴露于JS.Vue.js或者React可以使用的部件.~50MBChromium和包装中添加的附加尺寸没有问题Node.js.记住这些假设,我的问题是:
C++或C#打包的.dll?如果是,导致这些差异的原因是什么?XAML渲染互动更有效UI相比元素Vue.js或React与组合HTML5和CSS3?免责声明:我偏向电子,因为我认为它使我能够GUI更快地建立电子XAML.我可能错了,因为我并不完全熟悉所提供的东西XAML.
注意:请不要将此问题标记为不当.它具有足够的特殊性并且有很好的文档记录,可能有助于其他人面临同样的决定.
编辑1.请提供下注/标记关闭问题的参数.也许,如果你提供一些建设性的反馈,那么问题就可以得到改善.
| 归档时间: |
|
| 查看次数: |
8836 次 |
| 最近记录: |