Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco
Nelle ultime settimane abbiamo provato il mouse Logitech G305, la tastiera G316 X 98 e le cuffie G325. Si tratta del setup entry-level di Logitech che ormai, di "entry-level" ha ben poco. Tastiera e mouse offrono prestazioni di livello competitivo con quasi nessuna rinuncia e un livello di personalizzazione estremamente elevato. Le cuffie, invece, hanno mostrato qualche debolezza, ma propongono un ventaglio di funzionalità completo che consente di abbandonare completamente i cavi
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio
POCO F9 Pro arriva sul mercato con l'obiettivo di portare prestazioni da smartphone top di gamma in una fascia di prezzo "più aggressiva", senza rinunciare a un comparto fotografico finalmente all'altezza. Dopo averlo testato sul campo, emerge uno smartphone molto più completo rispetto alla generazione precedente, ma anche con alcuni piccoli compromessi che diventano difficili da ignorare quando il prezzo di listino sfiora i 1.000 euro.
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI
Snapdragon Soung Gen 2 è la piattaforma Qualcomm per i dispositivi audio sempre più integrati nel mondo dell'intelligenza artificiale: al prorpio interno tanta potenza elaborativa per gestire al meglio le necessità d'uso dell'agentic AI
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-01-2020, 09:35   #1
acronalb
Senior Member
 
Iscritto dal: Nov 2012
Messaggi: 427
react native o no?

Ciao a tutti, vorrei realizzare un' app per smartphone android, in futuro probabilmente anche per ios.
conosco le basi di C,php e javascript ma nulla che possa permettermi lo sviluppo di un'intera applicazione.
Ho effettuato un po' di ricerche con google ed ero giunto alla conclusione di iscrivermi ad un corso Java, utile per android, ma mi sono imbattuto in un corso di react native che promette la creazione di app compatibile con piu' piattaforme tra cui android e ios.
ho indagato un po' ma mi si sono incasinate ancora di piu' le idee.
Ho capito che react native è un framework javascipt ma non capisco come possa diventare un'app compatibile con piu' piattaforme!


Dato che devo comunque iniziare ad imparare un linguaggio dal principio, le applicazioni sviluppate con react native sono paragonabili ad app native o conviene sempre uno sviluppo ad Hoc usando java per android e object C per ios?

Grazie
__________________
MB: asrock extreme 4 || CPU: intel i5 3570k || CASE: cooler master 430 elite ||HDD: seagate 1Tb || RAM: vengeance DDR3 1600 MHZ (2x4Gb) || ALI: antec hcg 620 || S.O: window 10 pro
acronalb è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2020, 11:11   #2
pabloski
Senior Member
 
Iscritto dal: Jan 2008
Messaggi: 8406
Quote:
Originariamente inviato da acronalb Guarda i messaggi
in futuro probabilmente anche per ios
Il che già potrebbe portarti ad escludere qualsiasi soluzione non cross-platform. Cioè, potresti cominciare con Java/Kotlin e Android SDK, poi in futuro usare Swift/Cocoa o passare ad un framework multipiattaforma.

Ma tanto vale che cominci direttamente con uno multipiattaforma!!

Quote:
Originariamente inviato da acronalb Guarda i messaggi
conosco le basi di C,php e javascript ma nulla che possa permettermi lo sviluppo di un'intera applicazione
Ottimo. Se tu fossi stato un programmatore JS, ti avrei consigliato React Native senza pensarci su. In fondo lo scopo di questi strumenti è quello di poter riutlizzare le proprie conoscenze.

Cioè Electron ( per esempio ) non è nato per sfizio, ma perchè qualcuno ha voluto consentire ai programmatori esperti di JS di scrivere programmi per desktop, senza dover imparare da zero altre tecnologie.


Quote:
Originariamente inviato da acronalb Guarda i messaggi
Ho capito che react native è un framework javascipt ma non capisco come possa diventare un'app compatibile con piu' piattaforme!
Oddio, RN usa JSX. Però si, alla fine ti servono html, css e js ( oltre a conoscenze specifiche di jsx, ma niente di drammatico ).

Come fa a creare app per ios/android/uwp? Semplice. Il compilatore contiene del codice Java, Swift, ecc... che rappresenta lo scheletero dell'app per la piattaforma specifica. Dentro ci ficca una virtual machine javascript, che esegue il codice js scritto da te.

Dal tuo punto di vista, conta il fatto di poter scrivere l'app in js.

[quote=acronalb;46572528
Dato che devo comunque iniziare ad imparare un linguaggio dal principio, le applicazioni sviluppate con react native sono paragonabili ad app native o conviene sempre uno sviluppo ad Hoc usando java per android e object C per ios?
[/QUOTE]

Ecco, questa è la parte fondamentale. Intanto cominci da zero in ogni caso e quindi non hai il bias dovuto ad una conoscenza pregressa.

Detto questo, RN è discreto, ma c'è di meglio.

Xamarin, Qt, Flutter. Poi Ionic, Cordova. E ce ne sono altri.

I primi a comparire furono Cordova e i suoi figli. La tua app è una pagina web ( SPA nella parlata corrente dei programmatori js ) e gira in una webview. Ha limitata capacità di interagire col sistema operativo. E' lenta.

Per questo motivo nacquero soluzioni come React Native e Nativescript ( un concorrente di RN ). Non usano la webview. Offrono moduli per interfacciarsi con tutte o quasi le funzionalità del sistema operativo. Sono discretamente veloci.

Nessuna di queste due soluzioni batte quella nativa in termini di accesso diretto al sistema operativo e di performance.

Poi però qualcuno penso di fare ancora meglio. Nacquero Xamarin ( che in verità è più vecchio di RN ), Qt fu portato su Android e iOS, nacque Flutter ( di Google ).

Questi qui implementano praticamente tutto da zero. Usano il sistema operativo solo per le funzionalità base. Sono scritti in C/C++/C#. Pensa che implementano pure i controlli grafici ex novo.

Sono più veloci ( in molti casi, non tutti, ma molti ) del nativo.

Qt però è C++. Molto grosso e complesso. Basato su un'architettura anni '90.

Xamarin non mi ha mai convinto più di tanto. Fa il suo lavoro, ma ha le sue pecche. Bug, architettura presa da .Net. E' valido se sei già un programmatori .Net.

Flutter è imho la scelta migliore. Usa Dart come linguaggio, che è nato per sostituire JS ed è quindi molto espressivo e facile da usare. E' molto veloce. Ha un'architettura pensata per i moderni workflow. L'UI si definisce nel codice ( niente XML, XAML, designer WYSIWYG, ecc... ). Supporta l'hot reloading megli di RN ( che già lo supportano ottimamente ).

Quindi, per me, dovresti puntare su Flutter. Ho usato un pò di tutto negli anni ed è stato uno dei pochi strumenti a farmi esclamare "Wow!".

Inoltre lo stanno portando ovunque. Attualmente supporta le principali piattaforme mobile e il web. Stanno lavorando su Windows/Linux/macOS.

E' un ottimo investimento pure in ottica futura. E sarà il framework di default per programmare su Fuchsia ( il futuro sistema operativo di Google ).
pabloski è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2020, 15:48   #3
acronalb
Senior Member
 
Iscritto dal: Nov 2012
Messaggi: 427
Quote:
Originariamente inviato da pabloski Guarda i messaggi

Detto questo, RN è discreto, ma c'è di meglio.

Xamarin, Qt, Flutter. Poi Ionic, Cordova. E ce ne sono altri.

I primi a comparire furono Cordova e i suoi figli. La tua app è una pagina web ( SPA nella parlata corrente dei programmatori js ) e gira in una webview. Ha limitata capacità di interagire col sistema operativo. E' lenta.
Prima di trovare react native mi ero proprio imbattuto in apache cordova e ionic ma facendo ricerche varie ero arrivato alla conclusione che, basandosi su webview, l'app sarebbe risultata meno performante delle native.
Successivamente mi sono imbattuto in react native e da qui le idee si sono complicate



Quote:
Originariamente inviato da pabloski Guarda i messaggi

Quindi, per me, dovresti puntare su Flutter. Ho usato un pò di tutto negli anni ed è stato uno dei pochi strumenti a farmi esclamare "Wow!".
Flutter non lo conoscevo ma facendo qualche ricerca ho notato che è abbastanza nuovo e in forte crescita.
unica cosa che mi fa storcere il naso è proprio il fatto che sia così recente!
del resto dovrei iniziare praticamente a studiare da 0, per javascript o java ci sono tonnellate di libri, tutorial online e corsi, cosa che per il momento non noto per dart (correggimi se sbaglio).

Ammetto che l'applicazione che devo realizzare è un po' un test per validare se la mia idea funziona ed è richiesta, in caso affermativo potrei anche pensare ad uno sviluppo sicuramente migliore e piu' accurato come nel caso della app native, quindi non volevo imbattermi in qualche cosa di troppo complicato che potrebbe poi risultare inutile.
Comunque i principali "componenti" che dovrò usare sono il bluetooth, il GPS e molta geolocalizzazione, API di paypal, google maps e database quindi nulla di così sofisticato che richieda accesso diretto al sistema operativo.

Ammetto che è molto allettante l'idea di imparare ad usare Flutter anche per un futuro sistema operativo fushia (sperando riesca ad affermarsi) ma, alla luce dei miei dubbi, dici che è semplice imparare l'accoppiata Flutter-dart per chi comincia da 0 con la programmazione o meglio un compromesso scegliendo l'abbinata javascript- react native anche se un po' meno performante e completa?
__________________
MB: asrock extreme 4 || CPU: intel i5 3570k || CASE: cooler master 430 elite ||HDD: seagate 1Tb || RAM: vengeance DDR3 1600 MHZ (2x4Gb) || ALI: antec hcg 620 || S.O: window 10 pro

Ultima modifica di acronalb : 13-01-2020 alle 15:57.
acronalb è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2020, 16:45   #4
pabloski
Senior Member
 
Iscritto dal: Jan 2008
Messaggi: 8406
Quote:
Originariamente inviato da acronalb Guarda i messaggi
Prima di trovare react native mi ero proprio imbattuto in apache cordova e ionic
Francamente non so a cosa possano servire ionic, cordova e compagnia. Ormai le progressive webapp consentono di portare le webapp direttamente su mobile e vanno pure meglio di cordova e soci.




Quote:
Originariamente inviato da acronalb Guarda i messaggi
unica cosa che mi fa storcere il naso è proprio il fatto che sia così recente!
Il framework si, il linguaggio Dart no. Comunque è spettacolare e non soffre di bug particolarmente gravi.

Al massimo c'è poca roba di terze parti in giro.

Quote:
Originariamente inviato da acronalb Guarda i messaggi
cosa che per il momento non noto per dart (correggimi se sbaglio).
C'è meno casino.

C'è un ottimo libro che si chiama "Dart for absolute beginners". E c'è una guida succinta a vari aspetti del linguaggio https://dart.dev/guides/language/language-tour

Imho il miglior punto di partenza è questo corso/tutorial https://da-bootcamp.firebaseapp.com/...ogramming_dart

Per Flutter c'è un corso su Udacity. Poi una serie di tutorial qui https://codingwithjoe.com/learn/flutter/

C'è un canale reddit apposito https://www.reddit.com/r/FlutterDev/

Questo tizio ha compilato una guida per neofiti con link a tutorial, video, esempi e altro materiale https://medium.com/flutterdevs/roadm...s-ccb68718c84b

Quote:
Originariamente inviato da acronalb Guarda i messaggi
quindi non volevo imbattermi in qualche cosa di troppo complicato che potrebbe poi risultare inutile.
In generale la programmazione è sempre complicata. Per esempio è vero che React Native ha dalla sua l'ecosistema JS e gazillioni di libri, tutorial, blog, ecc... Ma è pur vero che, ben presto, scoprirai che l'incasinato ecosistema JS è pieno di librerie che funzionano e non funzionano, crash dovuti all'aggiornamento di dipendenze, difficoltà nel debug ( dovute alla natura stessa del linguaggio ).




Quote:
Originariamente inviato da acronalb Guarda i messaggi
che è semplice imparare l'accoppiata Flutter-dart per chi comincia da 0 con la programmazione o meglio un compromesso scegliendo l'abbinata javascript- react native anche se un po' meno performante e completa?
Dart è l'evoluzione di JS. Ovvero è come Google pensa che JS sarebbe dovuto essere. Considera che oggi moltissima gente non usa JS, ma Typescript, Coffeescript, Clojurescript, ecc...

Questo perchè JS ha delle pecche architetturali notevoli, che rendono difficile la programmazione di software robusto. Per cui ci si affida a linguaggi creati apposta per superarne i limiti. Typescript è quello che si è imposto di più e ha battuto Dart. Entrambi puntavano ad essere i sostituti di JS.

Per cui, partendo da Flutter non è un lungo viaggio migrare a RN e viceversa.

Chiaro che la disponibilità di gazillioni di documentazione di vario tipo, può aiutarti ad entrare con più facilità nel mondo mobile. Senza contare che RN è richiestissimo pure in ambito lavorativo.

Per cui nessuno ti vieta di iniziare da quello e poi studiare Flutter con comodo, più in là.
pabloski è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2020, 17:17   #5
acronalb
Senior Member
 
Iscritto dal: Nov 2012
Messaggi: 427
Do un'occhiata a tutti i tuoi link su dart e poi tiro le somme sul da farsi!
Grazie sei stato gentilissimo!
__________________
MB: asrock extreme 4 || CPU: intel i5 3570k || CASE: cooler master 430 elite ||HDD: seagate 1Tb || RAM: vengeance DDR3 1600 MHZ (2x4Gb) || ALI: antec hcg 620 || S.O: window 10 pro
acronalb è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco Logitech G325, G305 e G316 X: il tris per chi no...
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio Recensione POCO F9 pro: potenza da vero top di g...
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI Tra audio e AI: la ricetta di Qualcomm per l'age...
Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6 Qualcomm annuncia la nuova generazione di SoC Sn...
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole! realme 16 Pro Harry Potter Edition: il nuovo mid...
BYD Seagull (Dolphin Surf), l'elettrica ...
Multa milionaria per un data center del ...
F-Droid 2.0 si aggiorna con una nuova gr...
Microsoft ridisegna Copilot: dalla chat ...
Volkswagen porterà 20 videogiochi...
Troppa IA storpia: OpenAI licenzia in tr...
Marathon, Bungie svela i contenuti dell'...
Autunno, tempo di potature: i tagliasiep...
Meta Muse, due sviluppatori riescono a o...
Google AI Pro gratis: festa a sorpresa p...
MacSync colpisce macOS usando i calendar...
L'agente IA cancella 48 mila file in 103...
Jensen Huang avverte: l'AI può aiutare a...
Elettrico Renault in arrivo in Spagna: 6...
Linux, un file AGENTS.md per insegnare a...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 16:53.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v