RISOLTO Miglior IDE per sviluppare app mobile

Stato
Discussione chiusa ad ulteriori risposte.

hddsfortuna

Utente Attivo
869
39
Net
FTTH 1000/300
OS
Ubuntu 22.04
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
 

pabloski

Utente Èlite
2,868
916
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.
 
  • Mi piace
Reazioni: Moffetta88

hddsfortuna

Utente Attivo
869
39
Net
FTTH 1000/300
OS
Ubuntu 22.04
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.
 

rctimelines

Utente Èlite
5,143
2,023
CPU
Ryzen 7 2700X | i7-6700k@4.5 | i5-4460... altri
Dissipatore
wraith MAX | Scythe Katana2|Arctic Freezer 11LP
Scheda Madre
Asrock B450 Fatal1ty 4K | Asus Prime Z270P | Acer Veriton
HDD
Samsung 970evo m.2 | vari | Samsung 860 evo
RAM
16GB G.Skill TridentZ 3000 | 16GB CORSAIR 2133 | 8GB DDR3 1600
GPU
RadeonPro WX3100 4G | ZOTAC GTX 1070 8G | Quadro k620 2G
Monitor
DELL 2419P 2K + Benq 17" | LG Ultrawide 27''
Net
fibra 1000
OS
Windows10-pro64/OpenSUSE-QL15.1/Debian 10.3
Auguri.. e devi ancora iniziare a scrivere una riga di codice!

Inviato dal mio Nexus 6P utilizzando Tapatalk
 

hddsfortuna

Utente Attivo
869
39
Net
FTTH 1000/300
OS
Ubuntu 22.04
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
 

Moffetta88

Moderatore
Staff Forum
Utente Èlite
20,558
12,947
CPU
i5-4690
Dissipatore
DEEPCOOL CAPTAIN 240EX
Scheda Madre
MSI Z97 U3 PLUS
HDD
KINGSTON SSD KC400 240GB
RAM
24GB BALLISTIX SPORT @2133MHz
GPU
STRIX GTX980 DC2OC
Audio
INTEGRATA
Monitor
AOC G2590VXQ
PSU
BEQUIET! System Power 7 500W
Case
DEEPCOOL MATREXX 55
Periferiche
NESSUNA
Net
EOLO 100
OS
UBUNTU/WINDOWS11
Per farle native, dipende che linguaggio vuoi usare.
Se vuoi usare java, android studio è fatto apposta, oltre ad essere fatto meglio
 

hddsfortuna

Utente Attivo
869
39
Net
FTTH 1000/300
OS
Ubuntu 22.04
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
 

BAT

Moderatore
Staff Forum
Utente Èlite
22,948
11,581
CPU
1-Neurone
Dissipatore
Ventaglio
RAM
Scarsa
Net
Segnali di fumo
OS
Windows 10000 BUG
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
 
  • Mi piace
Reazioni: Moffetta88

Moffetta88

Moderatore
Staff Forum
Utente Èlite
20,558
12,947
CPU
i5-4690
Dissipatore
DEEPCOOL CAPTAIN 240EX
Scheda Madre
MSI Z97 U3 PLUS
HDD
KINGSTON SSD KC400 240GB
RAM
24GB BALLISTIX SPORT @2133MHz
GPU
STRIX GTX980 DC2OC
Audio
INTEGRATA
Monitor
AOC G2590VXQ
PSU
BEQUIET! System Power 7 500W
Case
DEEPCOOL MATREXX 55
Periferiche
NESSUNA
Net
EOLO 100
OS
UBUNTU/WINDOWS11
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
 
  • Mi piace
Reazioni: Andreagamer1999

pabloski

Utente Èlite
2,868
916
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.
 

hddsfortuna

Utente Attivo
869
39
Net
FTTH 1000/300
OS
Ubuntu 22.04
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
 

pabloski

Utente Èlite
2,868
916
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:
  • Mi piace
Reazioni: hddsfortuna

hddsfortuna

Utente Attivo
869
39
Net
FTTH 1000/300
OS
Ubuntu 22.04
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:

pabloski

Utente Èlite
2,868
916
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
 

hddsfortuna

Utente Attivo
869
39
Net
FTTH 1000/300
OS
Ubuntu 22.04
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.

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!