web-dev-qa-db-fra.com

Alternatives au nœud webkit? (taille de fichier d'importance)

Alors que node-webkit est Nice, les binaires sur mac et linux sont plus de 70 Mo pour une application hello world. Inacceptable.

Existe-t-il une bibliothèque multiplateforme qui utilise simplement le navigateur par défaut du système? Je ne me soucie pas vraiment si c'est IE, ou webkit, ou ...? Je suppose que de cette façon, le binaire serait beaucoup plus petit.

Ou existe-t-il un langage multiplateforme qui peut facilement intégrer une vue de navigateur (système)?

Merci.

22
Wesley

EXTRAIT de votre question: " peu m'importe si c'est IE"

https://code.google.com/p/phpdesktop/

Vous pouvez essayer le PHP Desktop MSIE à partir du lien ci-dessus, dont la version minifiée est seulement 5.823 MB

4
Shourya Sharma

Il y a AppJs , mais je ne pense pas qu'il puisse occuper beaucoup moins d'espace.

Dans tous les cas, un runtime similaire à node-webkit va toujours prendre de la place car il doit inclure au moins un moteur de rendu webkit et un moteur Javascript, et ce sont de grandes applications.

node-webkit peut être partagé entre plusieurs applications node-webkit, il n'est donc pas nécessaire d'installer 70 Mo à chaque fois, jetez un œil à cela documentation pour plus de détails:

enter image description here

La taille de node-webkit est en fait assez raisonnable par rapport à d'autres runtimes tels que la JVM qui prend plusieurs centaines de mégaoctets, et 70 Mo comme taille de disque de nos jours est petite (en comparaison, c'est la taille de 10/20 images).

Concernant l'une de vos questions, node-webkit ne peut pas réutiliser le Chrome Chrome déjà installé car il est basé sur Chromium qui est un navigateur différent.

De plus, il ne lui est pas possible d'exploiter ou de réutiliser les moteurs Webkit existants dans les navigateurs déjà installés, car les versions peuvent être différentes, pour des raisons de sécurité, etc.

Le webkit dans node-webkit est également modifié pour permettre par exemple à l'utilisateur d'accéder au système de fichiers, d'ouvrir les connexions à la base de données et toutes les fonctionnalités attendues d'une application de bureau non basée sur un navigateur, c'est donc une autre raison pour laquelle la réutilisation des navigateurs installés n'est pas possible.

10
Angular University

Je pense que TiDeSDK pourrait répondre à vos besoins.

Il est conçu pour créer des applications de bureau, basées sur un nœud et un kit Web. Selon son site Web, l'application Wunderlist est développée avec TiDesdk et sa taille est d'environ 30 Mo basée sur la page Mac App Store: https://iTunes.Apple.com/us/app/wunderlist-to-do-task -list/id410628904? mt = 12

Cependant, si la taille est vraiment importante pour vous, vous pourriez peut-être envisager de développer un Chrome ou Firefox extension, qui générerait le plus petit fichier à distribuer.

EDIT: Il semble que les personnes qui travaillaient dans TideSDK ont commencé un nouveau projet, TideKit , avec des fonctionnalités clés similaires et comprenant plates-formes mobiles, il est expliqué ici

7
Roberto

Sencha Desktop Manager vise à déployer l'application web sur le bureau:

https://www.sencha.com/blog/whats-new-in-sencha-desktop-packager-1-2/

Cependant, je ne sais même pas si l'outil est toujours pris en charge. D'après ce que j'ai entendu, cela fait partie de Sencha Complete, ce qui est cher. De plus, l'API semble limitée par rapport à ce que NW fournit - un outil construit sur Nodejs.

Vous avez dit que les fichiers binaires dépassaient 70 Mo. Cela dépend de ce que vous pensez être vital: est-ce la taille de votre fichier de livraison ou la taille de votre application une fois installée? Une fois installée, l'application peut atteindre 70 Mo.

Cependant, votre application nw doit être compressée si vous souhaitez la distribuer. J'ai développé une application nw avec plus de 200 fichiers Javascript. Une fois compressé, le package est 30 Mo (MAC OS X) et 28,5 Mo (Les fenêtres). Je viens de le vérifier.

Le temps d'exécution est lourd, mais le reste de l'application est léger: uniquement des fichiers Javascript, des images et d'autres types de fichiers. Il n'y a donc pas beaucoup de différence énorme entre une application Hello World et une application non triviale (bien que les images et autres ressources puissent être lourdes).

2
roland