Neutralinojs — альтернатива Electron, потребляющая меньше памяти

в 12:59, , рубрики: electron, hello world, javascript, Neutralinojs

Neutralinojs — фреймворк с открытым исходным кодом для создания кроссплатформенных приложений на HTML/CSS/JS. Отличие от Electron в том, что для запуска приложения на Neutralinojs не нужно устанавливать nodejs и сотни зависимостей, тянущихся из package.json. Давайте сравним Hello World приложение на Neutralinojs и Electron. Приложение на Neutralinojs можно запустить на Windows или Linux (на данный момент MacOS не поддерживается, но это планируется исправить в ближайшем будущем). Я запускал на Ubuntu 17.10.

Hello World на Neutralinojs

  1. Скачиваем архив neutralinojs-v1.1.0.zip (поддержка запуска полностью из командной строки в планах разработки) и распаковываем.

  2. Запускаем:

    ./neutralino

    На Windows:

    neutralino.exe

    Приложение запускается и выглядит вот так:
    Neutralinojs — альтернатива Electron, потребляющая меньше памяти - 1

Оперативная память: один процесс neutralino — 9 mb.
Обьем папки с файлами на диске: 5 mb.

Hello World на Electron

  1. Клонируем репозиторий с файлами и переходим в созданную папку:

    git clone https://github.com/electron/electron-quick-start
    cd electron-quick-start

    Обьем склонированных файлов: 344 kb.

  2. Подтягиваем недостающие пакеты:

    npm install

    Появилась папка node_modules, обьем файлов в папке приложения стал: 218 mb.

  3. Запускаем приложение:

    npm start

    Приложение запускается и выглядит вот так:
    Neutralinojs — альтернатива Electron, потребляющая меньше памяти - 2

Оперативная память: я насчитал шесть процессов (electron-quick-start, три процесса electron, node, npm) — в сумме они занимают 83 mb.

Итог

Приложение Занято на диске (mb) Занято оперативной памяти (mb)
Hello World на Neutralinojs 5 9
Hello World на Electron 218 83

Разница по потреблению памяти, что называется, на лицо.

Подробнее о проекте Neutralinojs можете прочитать здесь.

Автор: Saidai

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js