Domanda

Quale sarebbe la scelta migliore per creare un database guidato Applicazione Adobe AIR (desktop)?

  1. Uso di PHP + MySql con AIR
        OR
  2. Uso di SQLite

Se scelgo SQLite, non posso riutilizzare il mio codice per un'applicazione online.

Se scelgo 1, devo bloccare alcuni numeri di porta sul computer dell'utente. Inoltre, sto usando XAMPP per fornire all'utente PHP e MySql, quindi XAMPP apre una finestra di comando finché è in esecuzione. E gli utenti confondersi su che cosa è quella finestra? Rende l'utente finale esperienza leggermente confusa.

È stato utile?

Soluzione

Utilizzerei sicuramente SQLite come incluso in Air.

Posso suggerire; scrivi il tuo codice in due sezioni. L'interfaccia utente che utilizza un feed JSON per popolare se stessa e l'API per fornire i dati JSON. Quando si tratta di trasferire l'applicazione sul Web, è possibile utilizzare la stessa interfaccia utente ma con un'API riscritta.

Altri suggerimenti

Qualunque cosa tu faccia, non aprire una finestra di comando mentre il programma è in esecuzione. Se lo fai, i tuoi clienti disinstalleranno come se non ci fosse un domani.

Per quanto riguarda mysql vs sqlite, l'approccio standard è - se comunica in remoto, sentiti libero di usare mysql, ma se stai installando il db sul client, dovresti usare un db standalone incorporato (sqlite).

Quanto ti aspetti che la tua app sia complessa e che non puoi usare sqlite (oltre a non poter riutilizzare parte del codice che hai citato)?

Se XAMPP è troppo confuso per il tuo client, installa Apache e MySQL come standalones. È essenzialmente la stessa cosa e avrai un maggiore controllo su ciò che è in esecuzione in Apache / MySQL. Inoltre non otterrai una fastidiosa finestra di comando (anche se, a dire il vero, non ricordo una finestra che non potevo minimizzare sul vassoio quando eseguivo XAMMP).

Il mio suggerimento è utilizzare Sqllite come database locale e scrivere un'API di sincronizzazione che sincronizzerà il database sqllite locale con il database lato server-MySql. Quindi secondo il tuo cliente puoi usare il sistema. Se il client è autonomo, Sqllite funzionerà altrimenti MySql funzionerà. L'unica cosa che devi decidere in entrambi è come utilizzare l'API di sincronizzazione.

Basta controllare l'applicazione di esempio

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top