• Тормозит css анимация в node-webkit. Есть способ ускорить?

    @killer112 Автор вопроса
    Друзья!

    Напишу здесь решение проблемы. Может быть, кому-то пригодится.

    Помогло копирование файлов d3dcompiler_43.dll и d3dx9_43.dll из папки с установленным google chrome в папку с node-webkit!
    Ответ написан
    Комментировать
  • Разработка приложений под node-webkit

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Два приложения ушло в продакшен: раз, два. Обе программы работают с девайсами через ком-порт. В первом случае в ноде-вебкит оболочку не паковал, а использовал локальный-веб сервер, где и размещалась основная логика и он динамически генерировал GUI на хтмл и там еще пара аякс-скриптов. Это связано с тем, что изначально все планировал в браузере сделать, а уже потом узнал про вебкит и его заюзал. Так сказать проба пера — имеет ли смысл переходить на веб-GUI.
    Второй вариант пошел чуть другим путем: разделил логику программы и GUI, соответственно вся логика GUI на JS с менюшечками, драг энд дропом и другими плюшками, вся логика работы с девайсом в отдельном приложении с вебсокет-сервером.
    Надо сказать, что вебсокеты довольно удобный механизм взаимодействия с браузером. GUI прицепил к экзешнику ноде-вебкит, защиту не применял пока, но планирую. Чтобы хоть что-то было, ибо оно все равно распаковывается в TEMP и там все лежит/остается лежать в открытом виде. В идеале хотелось бы сделать несколько иной механизм работы: чтобы не распаковывалось на диск, а сразу использовалось бы из памяти. Но все равно, кому надо — просто сделает дамп памяти процесса и вытащит все, что ему надо. Время задержки на локалхосте в среднем 1-2 мс, что очень даже хорошо. Единственная особенность: веб-сокет сервер надо делать с несколькими потоками для приема данных, иначе пакеты теряются при непрерывном потоке от браузера. Т.е в цикле с браузера идут мессаги на сервер, а в силу особенности данных все сообщения надо обрабатывать по-очереди в одном потоке: просто запись трех чисел в переменную(т.е. ресурсоемкости никакой), так все равно большая часть мессаг не доходит. Поэтому просто сделал очередь на JS и месагe о приеме от сервера.
    В общем, на данный момент могу точно сказать, что опыт в целом положительный, GUI меняется и переделывается очень легко, независимо от сложности. Опять же, глюки/ошибки в GUI не приводят к крешу всего приложения и пользовательских данных.
    Ответ написан
    Комментировать