PDA

Visualizza la versione completa : Sviluppare con Electron: alcuni chiarimenti


zacca94
12-10-2017, 15:49
Ciao ragazzi,

attualmente sviluppo principalmente in Python/JS per le desktop app tramite il motore di rendering webkit.

Mi sono messo a leggere un pò di documentazione su electron e ho sviluppato una prima app semplice giusto per vedere il funzionamento (senza però le API che eseguissero alcunchè sull'OS, quindi semplici window che comunicano fra loro) e ho notato che effettivamente velocizza il processo lavorativo.

Ora ho diverse domande:
1) Posso utilizzare le API dell'OS senza utilizzare un wrapper? Da quanto ho capito devo comunque creare qualcosa in qualche linguaggio di scripting/programmazione per la parte applicativa del software;
2) Come faccio se voglio estendere il software per mobile/desktop/web? Di norma creo tutto ciò che può essere creato con node.js sul web, però poi è inevitabile che le parti che devono interagire con i relativi os, no?
3) Non ho mai utilizzato react (vedo che va molto di moda la combinazione react+node.js+electron), mi spiegate qual'è il pro in confronto ad altri frameworks JS?

Grazie in anticipo

zacca94
13-10-2017, 23:08
UP

zacca94
16-10-2017, 19:51
up, possibile che nessuno utilizza electron?

fermat
16-10-2017, 22:01
ciao!

electron si basa su node.js.
quindi puoi usare tutti i suoi moduli per interagire col il sistema su cui gira il programma.

react è una libreria, creata da facebook, per lo sviluppo di interfacce grafice usando javascript.
penso tu possa paragonarla ad angularjs, ma sinceramente non saprei dirti quali pro / contro abbia.

zacca94
16-10-2017, 23:44
ciao!

electron si basa su node.js.
quindi puoi usare tutti i suoi moduli per interagire col il sistema su cui gira il programma.

react è una libreria, creata da facebook, per lo sviluppo di interfacce grafice usando javascript.
penso tu possa paragonarla ad angularjs, ma sinceramente non saprei dirti quali pro / contro abbia.

Ciao Fermat!

Perdonami ma node.js non viene utilizzato come architettura REST?

Vedendo su google puoi anche includere moduli per eseguire processi, che mi fa anche pensare.
Ma se butti tutto insieme poi non mi sembra tanto REST...

Però ok figo, un problema è risolto.

Ora rimane la domanda: come sviluppo per mobile/desktop/linux/windows senza modifiche al codice (o con modifiche parziali come può essere per JAVA o Python) se poi il sistema deve interagire con l'os?

fermat
17-10-2017, 09:00
no!

node.js è un framework per javascript lato server.
che poi viene utlizzato per tante altre cose, come appunto electron.
ma non serve solo per creare servizi REST!
infatti, se non hai node.js installato, non puoi installare electron:


npm -g install electron


quindi, per accedere al sistema, puoi usare tutti i suoi moduli standard, più tutti che ti possono servire che trovi in giro.

per quanto riguarda l'altra domanda.
electron nasce per scrivere programmi desktop multi-piattaforma usando javascript / html /css.
quindi non nasce per il mobile.
volendo puoi usare framework come apache cordova, a riutilizzare parte del tuo codice javascript / html / css.
ma non puoi ovviamente usarlo per intero.

al momento le soluzioni più all-in-one che mi vengono in mente sono:
- Qt, che è in grado di compilare anche per ios e android (installando l'ndk di android, o configurando xcode su apple).
- c# con xamarin
- haxe (https://haxe.org/) che però non ho mai usato

zacca94
17-10-2017, 19:32
no!

node.js è un framework per javascript lato server.
che poi viene utlizzato per tante altre cose, come appunto electron.
ma non serve solo per creare servizi REST!
infatti, se non hai node.js installato, non puoi installare electron:


npm -g install electron


quindi, per accedere al sistema, puoi usare tutti i suoi moduli standard, più tutti che ti possono servire che trovi in giro.

per quanto riguarda l'altra domanda.
electron nasce per scrivere programmi desktop multi-piattaforma usando javascript / html /css.
quindi non nasce per il mobile.
volendo puoi usare framework come apache cordova, a riutilizzare parte del tuo codice javascript / html / css.
ma non puoi ovviamente usarlo per intero.

al momento le soluzioni più all-in-one che mi vengono in mente sono:
- Qt, che è in grado di compilare anche per ios e android (installando l'ndk di android, o configurando xcode su apple).
- c# con xamarin
- haxe (https://haxe.org/) che però non ho mai usato

perfetto, grazie ;)

Loading