Sto cercando di capire come funziona Electron (precedentemente Atom Shell).Qual è il modello Client/Server quando si utilizza Electron (Atom Shell)?
vengo da una tradizionale applicazione web in stile MVC in cui un browser chiede un'azione controller attraverso un sistema di routing , il controller poi recupera i dati da un sistema di negozio (File, Data Base,. ..) e visualizza Visualizza, che viene rinviato al browser. Alcune azioni potrebbero invece rimandare JSON, poiché vengono chiamate tramite JavaScript/AJAX anziché il browser che effettivamente sta navigando verso di loro.
Voglio creare ciò, ma come un'applicazione desktop multipiattaforma. So che Atom Shell combina sia un browser Chromium che un runtime Node.js/v8, ma non sono sicuro di come comunicherebbero.
Credo di poter eseguire un server Web completo (in pratica, alcuni middleware Node.js HTTP come Express), ma questo crea un server raggiungibile dalla rete (che potrebbe anche far scattare i firewall) - uno dei motivi per cui voglio fare un'app desktop è proprio per evitare l'esecuzione di un vero server. Fondamentalmente come il pattern MVP/MVVM in un'app desktop "normale".
Qualcuno può darmi alcuni punti di partenza per quello che sto cercando di fare? In che modo il browser parla al runtime del nodo (il "Client" come lo chiamano?) Per dirgli "Ehi, prendi il mio record con ID 12345" e il client restituirà HTML reso, o il browser otterrebbe solo un blob di JSON indietro e renderlo attraverso un motore di template JavaScript?
Solo una nota, e' Non è esattamente "Github" Atom Shell, il codice è appena ospitato su Github :) – apparatix
@apparatix Atom è un progetto della società Github :) –
Ottima domanda. Questo link dovrebbe essere pubblicato sulla pagina di avvio di Electron (qui ci atterro un anno dopo non ne ho più avuto bisogno ... sarebbe stato bello avere davanti!) – jleach