创建使用更少资源的Slake应用程序

2020-10-11 16:30:26

我最近创建了一款名为Slake Lite的MacOS应用程序,它在几个性能轴上击败了Slake的桌面应用程序。Sack Lite使用的是Sack的官方用户界面,因此它在视觉上与官方客户端没有什么区别。即便如此,Slake Lite使用的线程减少了5倍,启动时间减少了3.5倍,内存减少了1.2倍,CPU也明显减少了。在下面的活动监视器屏幕截图中,您可以看到原始数字(Slake Lite的进程突出显示):

现在是澄清的时候了:这篇文章中描述的性能差异并不是Slake Lite所固有的。我猜想你可以通过在任何基于电子产品的MacOS应用程序上应用这种Slake Lite方法来获得类似的数字。Sack Lite是一款多应用程序,这意味着它在幕后使用WebKit WebView。最终,上面的数字代表了Chrome与Safari的对比。

我既不是一名性能工程师,也不是一名桌面应用程序工程师,但Slake Lite方法对我来说就是合适的。如果我的操作系统中已经内置了浏览器引擎,为什么应用程序开发人员要提供一个不同的浏览器引擎来与他们的本机应用程序一起使用呢?特别是如果该应用程序是现有Web应用程序的最小包装器。我知道答案围绕着开发人员的生产力,但对我来说,最先进的状态仍然让我感觉不对劲。我也知道其他人也在考虑这种紧张关系!以下是Twitter通过@nateparrott发布的一段简洁的演示:

这是我们在@Browsercompany:";Launcher上进行的另一个实验。我使用的应用程序中,一半是网络应用程序,另一半是MacOS应用程序。如果他们的行为是一样的呢?(1/5)。

也许这个实验最令人兴奋的部分是我在30秒内创建了Slake Lite。正如我在上面提到的,Slake Lite是一个多应用程序。我专门为这个用例构建了Multi:从任何一组网站快速创建一个轻量级的MacOS应用程序。如果您觉得这种方法也是对的,我希望您花点时间尝试一下Multi,它是开源的,可以在GitHub:github.com/kofigumbs/multi上找到。