RISOLTO Miglior IDE per sviluppare app mobile

Pubblicità
Stato
Discussione chiusa ad ulteriori risposte.
Dipende quali file vai ad includere.
Intendo che da questo codice html presente nella pagina che mi hai indicato:
HTML:
<link rel="stylesheet" href="https://unpkg.com/onsenui/css/onsenui.css">
<link rel="stylesheet" href="https://unpkg.com/onsenui/css/onsen-css-components.min.css">
<script src="https://unpkg.com/onsenui/js/onsenui.min.js"></script>
Prendo i 3 files, li salvo nella stessa cartella del "sito" che andrò a fare, e li includo nelle mie pagine html.

Serve fare altro?

Grazie
 
Intendo che da questo codice html presente nella pagina che mi hai indicato:
HTML:
<link rel="stylesheet" href="https://unpkg.com/onsenui/css/onsenui.css">
<link rel="stylesheet" href="https://unpkg.com/onsenui/css/onsen-css-components.min.css">
<script src="https://unpkg.com/onsenui/js/onsenui.min.js"></script>
Prendo i 3 files, li salvo nella stessa cartella del "sito" che andrò a fare, e li includo nelle mie pagine html.

Serve fare altro?

Grazie

Nient'altro. L'importante è che però i link e il tag contenga il percorso effettivo dove quei file si trovano. Quello che hai postato, è un esempio che linka i file direttamente da un server remoto e quindi il pc dev'essere connesso ad internet, altrimenti non può scaricarli.

Quando vai ad aggiungerli alle tue pagine html, s'intende che dovrai aggiungere i 3 file che hai salvato in locale.
 
Ricontrollando meglio, mi sa che ho sbagliato.
Devo includere nel progetto l'intera raccolta contenuta nell'archivio zip che ho scaricato da github, perché quei 3 files richiamano altri files a loro volta.
Appena inizio a programmare l'app, di sicuro avrò altri problemi, e scriverò qui.
 
Dato che stiamo in questa discussione, ho una curiosità: volendo fare l'app che ho in mente non in cordova ma in nativo, posso usare VS2017? E quali linguaggi devo usare?

Grazie
 
Per farle native, dipende che linguaggio vuoi usare.
Se vuoi usare java, android studio è fatto apposta, oltre ad essere fatto meglio
 
Nient'altro. L'importante è che però i link e il tag contenga il percorso effettivo dove quei file si trovano. Quello che hai postato, è un esempio che linka i file direttamente da un server remoto e quindi il pc dev'essere connesso ad internet, altrimenti non può scaricarli.

Quando vai ad aggiungerli alle tue pagine html, s'intende che dovrai aggiungere i 3 file che hai salvato in locale.
Ho copiato l'intera cartella contenuta nello zip che ho scaricato da github nel mio server in LAN, così non uso la connessione ad internet per questo progetto.
Ho creato il primo progetto in VS2017 con cordova e il codice è questo:
vs2017-2.png
Praticamente ho creato il progetto e aggiunto le 3 linee di codice come suggerito in "Onsen UI CDN" per aggiungere onsenui al mio progetto cordova. Devo fare altro?
Inoltre vorrei sapere se dopo aver compilato l'app, serve ancora la connessione al mio server.
Per farle native, dipende che linguaggio vuoi usare.
Se vuoi usare java, android studio è fatto apposta, oltre ad essere fatto meglio
Non è il linguaggio java che voglio usare, ma quelli che conosco (html, php, css, js, sql, htaccess). Vorrei sapere se è possibile creare un'app nativa per android e ios con i linguaggi che conosco.
Per ora parto con una semplice in cordova, anche per prendere pratica, poi in futuro voglio migliorare.

Grazie
 
Non è il linguaggio java che voglio usare, ma quelli che conosco (html, php, css, js, sql, htaccess).
Allora scordati le app native: per quelle ci vogliono Java, Kotlin oppure C/C++/C# (con Visual Studio per stare comodi) se sviluppi per Android, Objective C o meglio Swift per Apple iOS.

Vorrei sapere se è possibile creare un'app nativa per android e ios con i linguaggi che conosco.
NO
al massimo hybrid app
 
html, php, css, js, sql, htaccess
Hybrid come dice @BAT00cent quindi, il nativo scordatelo proprio!
Con HTML ci fai la struttura visica
Con CSS di fai i dettagli belli
Con JS ci fai la struttura di GET/POST per interagire con eventuali DB tramite API PHP su un server, eventuali sistemi grafici ( animazioni o altro )
Con PHP ci costruisci le API su un server ( PHP non gira su Cordova, perchè vorrebbe dire avere installato PHP ed impostare un qualche tipo di server http sopra ) per poi comunicare con il DB
 
Devo fare altro?

Perchè http://192.168.1.2?? Considera che tu quel file dovrai distribuirlo come parte del tuo programma. Quando il programma si troverà a girare sullo smartphone dell'utente, 192.168.1.2 non sarà il tuo server, dove ci sono i file di Onsen.

Semplicemente copia i file di Onsen in una sottodirectory del tuo progetto e poi li includi come file locali, cioè

JavaScript:
<script src="sottodirectory/onsenui.min.js"></script>

Inoltre vorrei sapere se dopo aver compilato l'app, serve ancora la connessione al mio server.

Per come avevi scritto tu, richiamava un host, che però era in rete locale....insomma non avrebbe funzionato lo stesso.

possibile creare un'app nativa per android e ios con i linguaggi che conosco.

Beh ovviamente no. Se per nativi intendi usare solo le API messe a disposizione dal sistema operativo.

Realisticamente, se hai conoscenza di js e html, la scelta più ovvia per realizzare app native è Flutter. Siccome è basato sul linguaggio Dart che, nelle intenzioni di Google, avrebbe dovuto sostituire Javascript, è chiaramente facile da imparare per chi conosce JS.

Per quanto soluzioni come Cordova siano passabili ( ma nessuno di noi qui ha parlato dell'alternativa rappresentata da React Native ), non sono nè native nè particolarmente performanti. La ragione per cui esistono, è di prendere codice preesistente, creato mentre si realizzava un sito web o qualcosa di simile, e sfruttarlo per creare un'app mobile. Oppure sfruttare i programmatori di cui già si dispone e che conoscono tutte le tecnologie tipiche del webdev.

Ma per un progetto da realizzare ex novo, con la possibilità di perdere un pò di tempo ad imparare cose nuove, non ha molto senso impelagarsi in app ibride, webview e quant'altro.
 
Perchè http://192.168.1.2?? Considera che tu quel file dovrai distribuirlo come parte del tuo programma. Quando il programma si troverà a girare sullo smartphone dell'utente, 192.168.1.2 non sarà il tuo server, dove ci sono i file di Onsen.

Semplicemente copia i file di Onsen in una sottodirectory del tuo progetto e poi li includi come file locali, cioè

JavaScript:
<script src="sottodirectory/onsenui.min.js"></script>



Per come avevi scritto tu, richiamava un host, che però era in rete locale....insomma non avrebbe funzionato lo stesso.
Quindi mi basta includere nella cartella del progetto e poi una volta compilata può funzionare anche senza connessione LAN o internet?

Realisticamente, se hai conoscenza di js e html, la scelta più ovvia per realizzare app native è Flutter. Siccome è basato sul linguaggio Dart che, nelle intenzioni di Google, avrebbe dovuto sostituire Javascript, è chiaramente facile da imparare per chi conosce JS.

Per quanto soluzioni come Cordova siano passabili ( ma nessuno di noi qui ha parlato dell'alternativa rappresentata da React Native ), non sono nè native nè particolarmente performanti. La ragione per cui esistono, è di prendere codice preesistente, creato mentre si realizzava un sito web o qualcosa di simile, e sfruttarlo per creare un'app mobile. Oppure sfruttare i programmatori di cui già si dispone e che conoscono tutte le tecnologie tipiche del webdev.

Ma per un progetto da realizzare ex novo, con la possibilità di perdere un pò di tempo ad imparare cose nuove, non ha molto senso impelagarsi in app ibride, webview e quant'altro.
In effetti un po' di tempo ce l'ho, quindi posso studiare qualcosa di nuovo. Anche perché, da quello che vedo nelle documentazioni di facebook e google, per usare le loro api (in futuro), non posso usare cordova. Ovviamente, come scritto all'inizio di questa discussione, vorrei scrivere l'app solo una volta e compilarla per android e ios (posso avere un mac solo per compilare).
Date le mie conoscenze dei linguaggi, a questo punto vorrei un editor visuale, perché in altri linguaggi non so nemmeno fare una semplice schermata. Almeno per iniziare. A questo punto mi andrebbe bene anche programmare in java, anche se non so niente. Devo imparare.
Prendendo in considerazione le alternative citate in questa discussione: flutter, react native e android studio, quale mi consigli per ora e per il futuro quando imparerò qualcosa?

Grazie
 
Quindi mi basta includere nella cartella del progetto e poi una volta compilata può funzionare anche senza connessione LAN o internet?

Ohi ohi che domanda. Avendo usato Javascript molto a lungo, credo tu sappia come funzionano i tag link e script. Ovvero che possono caricare risorse sia in locale che in remoto. Nel caso di un'app che deve andare in giro per il mondo, ovviamente la cosa logica è avere quei file in locale e farglieli caricare come file locali.

Ovviamente, come scritto all'inizio di questa discussione, vorrei scrivere l'app solo una volta e compilarla per android e ios (posso avere un mac solo per compilare).

Flutter ti consente di fare proprio questo. E ovviamente ci sono altre soluzioni valide, ma nessuna che renda la vita facile a chi conosce Javascript. A parte React Native, ma parliamo di un framework ibrido e non nativo.

Date le mie conoscenze dei linguaggi, a questo punto vorrei un editor visuale, perché in altri linguaggi non so nemmeno fare una semplice schermata. Almeno per iniziare. A questo punto mi andrebbe bene anche programmare in java, anche se non so niente. Devo imparare.

Un editor visuale può aiutare in alcuni casi. Per altri versi è un peso. Per esempio Flutter non sfrutta gli editor visuali, i widget sono istanziati e gestiti via codice, ma nonostante ciò è estremamente semplice e produttivo da usare.

Viceversa, il SDK di Android basato su Java, ha un editor visuale, ma comunque è un bel lavoraccio realizzarvi un'app.

Prendendo in considerazione le alternative citate in questa discussione: flutter, react native e android studio, quale mi consigli per ora e per il futuro quando imparerò qualcosa?

Android Studio è l'IDE e può essere usato per sviluppare con varie tecnologie, compresa Cordova. Più in generale lo usano coloro che programma in Java per Android.

Flutter è realizzato sempre da Google e si sospetta che sia la soluzione che in futuro andrà a sostituire tutto il resto. Ed è multipiattaforma ( iOS, Android, Fuchsia, Windows/Linux/macOS, Web ).

React Native è una soluzione multipiattaforma, ma usa un motore JS. E' una via di mezzo tra il nativo e le soluzioni webview come Cordova.

E ce ne sono altri. Qt, Xamarin, Nativescript, ecc...

Personalmente preferisco Flutter e ritengo che sia un investimento a lungo termine.
 
Ultima modifica da un moderatore:
Ohi ohi che domanda. Avendo usato Javascript molto a lungo, credo tu sappia come funzionano i tag link e script. Ovvero che possono caricare risorse sia in locale che in remoto. Nel caso di un'app che deve andare in giro per il mondo, ovviamente la cosa logica è avere quei file in locale e farglieli caricare come file locali.
So come funzionano i tag link e script. Pensavo che anche se caricati da sorgente esterna (nel mio caso il mio server in LAN), al momento della compilazione fossero prelevati e inglobati nell'app, ma mi sbagliavo.

Flutter ti consente di fare proprio questo. E ovviamente ci sono altre soluzioni valide, ma nessuna che renda la vita facile a chi conosce Javascript. A parte React Native, ma parliamo di un framework ibrido e non nativo.

Un editor visuale può aiutare in alcuni casi. Per altri versi è un peso. Per esempio Flutter non sfrutta gli editor visuali, i widget sono istanziati e gestiti via codice, ma nonostante ciò è estremamente semplice e produttivo da usare.

Viceversa, il SDK di Android basato su Java, ha un editor visuale, ma comunque è un bel lavoraccio realizzarvi un'app.

Android Studio è l'IDE e può essere usato per sviluppare con varie tecnologie, compresa Cordova. Più in generale lo usano coloro che programma in Java per Android.

Flutter è realizzato sempre da Google e si sospetta che sia la soluzione che in futuro andrà a sostituire tutto il resto. Ed è multipiattaforma ( iOS, Android, Fuchsia, Windows/Linux/macOS, Web ).

React Native è una soluzione multipiattaforma, ma usa un motore JS. E' una via di mezzo tra il nativo e le soluzioni webview come Cordova.

E ce ne sono altri. Qt, Xamarin, Nativescript, ecc...

Personalmente preferisco Flutter e ritengo che sia un investimento a lungo termine.
Su flutter quali linguaggi posso usare? Posso avere un'anteprima dell'app in tempo reale (magari con debug)?
Vorrei sapere:
  1. se flutter è abbastanza diffuso da ricevere supporto sulla programmazione, in quanto per ora non so fare niente
  2. posso compilare app native per android e ios (mi sembra di aver letto di sì)
  3. posso inviare notifiche all'app
  4. posso gestire tutto ciò riguardante agli eventi dell'app (apertura, chiusura, ecc...)



Grazie
 
Ultima modifica:
Su flutter quali linguaggi posso usare?

Dart.

Posso avere un'anteprima dell'app in tempo reale (magari con debug)?

Certo e c'ha pure l'hot reload. E' come progettare una pagina web, solo che stai realizzando un'app. Tutti i vantaggi dei webdev e le prestazioni del nativo.


  1. se flutter è abbastanza diffuso da ricevere supporto sulla programmazione, in quanto per ora non so fare niente

Direi proprio di si. In un paio d'anni si è diffuso parecchio. E chiunque l'abbia usato ( me compreso ) è rimasto molto soddisfatto.

  1. posso compilare app native per android e ios (mi sembra di aver letto di sì)

e molte altre piattaforme

  1. posso inviare notifiche all'app

E' più nativo del SDK di Android basato su Java. Quindi si, puoi fare tutto.

  1. posso gestire tutto ciò riguardante agli eventi dell'app (apertura, chiusura, ecc...)

Certo https://api.flutter.dev/flutter/dart-ui/AppLifecycleState-class.html
 
Qualche ultima domanda:
  1. per compilare per ios devo installare flutter anche su mac (potrei averlo in prestito per qualche pomeriggio, ma non è mio)?
  2. per compilare per android posso usare windows?
  3. posso avere anteprima dell'app in tempo reale (magari sul mio cell stile phonegap)?
  4. tu lo sai usare bene flutter e conosci bene il dart?
Grazie
 
Stato
Discussione chiusa ad ulteriori risposte.
Pubblicità
Pubblicità
Indietro
Top