Accelerate Full Stack Web Mobile App Development It
Accelerate Full Stack Web Mobile App Development It
Accelerate Full Stack Web Mobile App Development It
1
Strumenti e framework moderni:
i dipendenti. Per riuscire nell'intento, i team di sviluppo devono soddisfare
potenzia i team di front-end con strumenti
standard sempre più elevati in termini di progressi nell'esperienza utente e di
e framework flessibili e dedicati
complesse funzionalità cloud, offrendo allo stesso tempo applicazioni scalabili,
sicure e a elevate prestazioni a basso costo.
2
API moderne: semplifica l'accesso alle
Nella creazione di moderne applicazioni web e per dispositivi mobili, origini dati distribuite con API Pub/Sub
è necessario accertarsi che i team siano preparati per fornire correttamente e GraphQL unificate
applicazioni full stack scalabili in tempi brevi. Servono strumenti di sviluppo in
3
grado di colmare il divario tra sviluppatori appena formati ed esperti, in modo Calcolo moderno: riduci difficoltà
da consentire ai team di lanciare le applicazioni velocemente, sfruttando allo e complessità di gestione con i servizi
stesso tempo opzioni estensibili che possano integrarsi con i processi interni. serverless e gestiti
2
S U G G E R I M E N T O N. 1
La situazione La soluzione
Gli sviluppatori di front-end creano un'esperienza utente che fa la differenza per Favorisci la produttività dei team di front-end con strumenti di sviluppo
le loro applicazioni utilizzando linguaggi di programmazione front-end come e framework che riducono la quantità di codice necessaria per eseguire i casi
JavaScript, Swift o Kotlin, framework popolari come React, React Native, Flutter d'uso comuni. Sfrutta i framework con funzionalità avanzate per le attività più
o Angular e strumenti come gli ambienti di sviluppo integrato (IDE). Codificano il complesse, come l'autenticazione e l'accesso ai dati, e cerca funzionalità avanzate
livello di presentazione delle applicazioni, accedono ai dati e li integrano tramite per gestire la memorizzazione nella cache, la riconnessione, la sincronizzazione dei
API e creano funzionalità basate su cloud come video o chat con funzionalità in dati e la risoluzione dei conflitti. Seleziona strumenti in grado di semplificare lo
tempo reale e offline per applicazioni web o per dispositivi mobili. sviluppo senza rinunciare alla flessibilità necessaria per personalizzare o estendere
le funzionalità dell'applicazione basate sul codice. Scegliere strumenti che riducono
Anche se gli sviluppatori di front-end possono essere esperti nella realizzazione di la curva di apprendimento del cloud comporta configurazioni più rapide, flussi di
interfacce utente (UI), in genere non sono esperti del cloud. La realizzazione e la lavoro più veloci e sicurezza automatizzata, offrendo ai team di front-end la libertà
connessione di funzionalità cloud in un'applicazione web o per dispositivi mobili di concentrarsi sui problemi da risolvere per i clienti.
può essere lunga e complessa, riducendo quindi il tempo che il team di front-end
può dedicare allo sviluppo dell'esperienza utente.
3
Come AWS può aiutarti
AWS Amplify offre strumenti e servizi che consentono agli sviluppatori di front- Studio Amplify si integra anche con Figma per semplificare il flusso di lavoro
end di realizzare rapidamente applicazioni web e per dispositivi mobili native tra progettisti e sviluppatori. Con un approccio da progettazione a codice gli
che condividono un back-end comune basato su Amazon Web Services (AWS). sviluppatori possono importare in Studio Amplify prototipi Figma creati dai
Le librerie di AWS Amplify semplificano l'integrazione dei casi d'uso comuni, progettisti come codice React pulito, evitando così la necessità di scrivere codice
come ad esempio l'archiviazione delle immagini e dei video nel cloud, all'interno boilerplate. Amplify genera automaticamente la logica di business e il codice di
dell'applicazione e si integrano perfettamente con i più popolari linguaggi, implementazione sottostanti, in modo che gli sviluppatori possano estendere le
piattaforme per dispositivi mobili e framework front-end. Inoltre, l'interfaccia applicazioni con il codice della logica di business personalizzato nel linguaggio di
della linea di comando (CLI) di Amplify e l'interfaccia utente dell'amministratore programmazione preferito.
possono aiutare gli sviluppatori a creare rapidamente un nuovo back-end AWS,
se necessario. A differenza delle offerte Backend-as-a-Service (BaaS), Amplify Gli sviluppatori possono anche utilizzare Hosting AWS Amplify per implementare
consente agli sviluppatori di accedere all'ampia gamma di oltre 200 servizi AWS e ospitare qualsiasi applicazione Web di tipo React, Vue.js o Next.js. Integra
man mano che i casi d'uso delle loro applicazioni si evolvono. perfettamente gli strumenti e i servizi AWS esistenti per la massima produttività
collegando i flussi di lavoro Git o caricando i file nella console Amplify. Quindi,
Studio AWS Amplify consente di creare e distribuire applicazioni web e per configura semplicemente le impostazioni delle build e implementa direttamente
dispositivi mobili nel giro di poche ore, senza utilizzare la Console di gestione dalla console Amplify alla rete di distribuzione dei contenuti (CDN) di Amazon
AWS. Con Studio Amplify, puoi creare rapidamente il back-end di un'applicazione, CloudFront. Questa soluzione all-in-one consente l’implementazione continua di
creare evoluti componenti UI di React e collegare visivamente una UI al back-end un’applicazione web statica o con rendering lato server, una pagina di destinazione
con pochi clic. Gli sviluppatori possono servirsi dell'interfaccia visiva per definire un di un’applicazione per dispositivi mobili o un’applicazione progressiva su ogni
modello di dati, nonché soluzioni di autenticazione dell'utente e archiviazione file, commit di codice per applicazioni veloci, sicure e affidabili che si adattano alla tua
senza esperienza con il back-end. organizzazione.
Possono anche accelerare lo sviluppo dell'interfaccia utente front-end per Poiché offre tutti questi vantaggi, Amplify consente agli sviluppatori di front-
l'applicazione scegliendo tra decine di noti componenti React, quali feed di notizie, end di creare applicazioni web e per dispositivi mobili ricche di funzionalità
moduli di contatto, carte per l'e-commerce e primitivi (pulsanti, campi di testo, più velocemente che mai. Codificando le best practice per gli scenari comuni
avvisi), da personalizzare poi secondo la propria guida di stile. Con AWS Amplify e distribuendole in modo oculato, Amplify riduce le fasi complessive e le righe di
Studio Form Builder, gli sviluppatori possono risparmiare tempo creando bellissimi codice necessarie per creare applicazioni full stack su AWS, pur fornendo ai team
moduli dell'interfaccia utente di React generati automaticamente come codice di sviluppo la flessibilità necessaria per personalizzarle man mano che cambiano
React, dal proprio modello di dati, da qualsiasi oggetto JSON o da zero. I moduli i requisiti aziendali.
generati automaticamente da Amplify Studio sono completamente personalizzabili
nel codice, quindi il modulo si adatta al progetto, e non il contrario.
4
ST O R I A D E L C LIE N T E
Sfida
Branch Insurance si proponeva di semplificare radicalmente l'esperienza dell'utente finale
"Sviluppare un prodotto su AWS
per i propri clienti offrendo prezzi personalizzabili basati su due semplici informazioni: il è come usare una "modalità
nome e l'indirizzo del cliente. Per offrire questo approccio lineare è necessario, tuttavia, semplificata", poiché molto del
disporre di un'infrastruttura potente per elaborare i dati in tempi rapidi e archiviarli in modo
lavoro viene agevolato dall'uso dei
efficiente e sicuro in conformità con le normative vigenti. Sfruttando AWS AppSync come base
dell'infrastruttura di back-end e del servizio API e collegandolo alle librerie Amplify per gestire il
servizi gestiti. Ci occupiamo solo
flusso di autorizzazioni, Branch Insurance è stata in grado di ridurre al minimo il tempo dedicato della logica di business e delle
alla gestione delle operazioni per le applicazioni. interfacce. Questo è un vantaggio
fondamentale che deriva dall'uso
di AWS."
Servizi e strumenti Risultati
Joe Emison
utilizzati • Un'accelerazione di sei mesi in termini di Co-Founder e CTO presso Branch Insurance
• AWS Amplify velocità nello sviluppo di applicazioni
5
S U G G E R I M E N T O N. 2
La situazione La soluzione
Le architetture software sono in continua evoluzione. Le organizzazioni stanno Tecnologie come GraphQL possono migliorare la velocità e l'efficienza dell'accesso
passando dai monoliti olistici ad architetture distribuite o talvolta utilizzano una ai dati, nonché l'integrazione tra diverse origini dati del back-end. GraphQL è un
combinazione di entrambi. Il tipo di architettura da usare dipende da vari fattori, linguaggio di query per le API e un runtime per soddisfare quelle stesse query
inclusi i set di competenze e i modelli di applicazione o di programmazione. con i dati esistenti. GraphQL fornisce una descrizione completa e comprensibile
Quando le organizzazioni scelgono architetture distribuite che comprendono dei dati nell'API, offrendo agli sviluppatori di front-end la possibilità di eseguire le
microservizi o componenti indipendenti, possono aumentare la velocità di query esattamente sui dati necessari su ciascuna chiamata API da diversi database
sviluppo perché i team possono lavorare in modo indipendente su diverse parti e microservizi di back-end. I team di sviluppo di back-end possono utilizzare
dell'applicazione. Le architetture distribuite migliorano anche la tolleranza ai GraphQL per astrarre le origini dati esistenti in un singolo endpoint e fornire
guasti. È possibile isolare i guasti di alcuni componenti per ridurre al minimo un accesso ai dati più semplice ai team di front-end. Per un set di API esistenti,
l'impatto su altri componenti dell'applicazione. l'astrazione di più endpoint in un'unica API GraphQL offre i vantaggi di GraphQL
senza il lavoro di migrazione delle API o la riscrittura dell'applicazione da zero.
Con i microservizi, le applicazioni sono più facilmente scalabili e più veloci da
sviluppare, consentendo l'innovazione e accelerando il time to market. Tuttavia, La creazione di un livello API unificato con GraphQL integra la strategia REST
l'adozione dei microservizi può anche richiedere ai team di front-end di connettersi API per aiutare gli sviluppatori di front-end a semplificare l'interazione con le
a origini dati e microservizi distribuiti, complicando l'accesso ai dati necessari per le architetture a servizi distribuiti. Estendendo l'API perché includa le sottoscrizioni,
applicazioni rivolte agli utenti. Semplificando l'accesso ai dati in modo da facilitare gli utenti di GraphQL possono inoltre pubblicare in tempo reale aggiornamenti sui
l'utilizzo dell'applicazione da parte dei team di front-end, i team di back-end dati da qualsiasi origine di eventi sui client Web, dispositivi mobili e Internet delle
svolgono un ruolo importante nell'accelerare lo sviluppo delle applicazioni Web cose (IoT) a cui sono iscritti.
e per dispositivi mobili.
6
Come AWS può aiutarti
AWS AppSync semplifica lo sviluppo di applicazioni Web e per dispositivi mobili moderne consentendo agli
sviluppatori di collegare le proprie applicazioni a dati ed eventi con API GraphQL e Pub/Sub sicure, serverless
e performanti. AWS AppSync gestisce le onerose attività legate alla connessione sicura a origini dati come Amazon
DynamoDB, Amazon EventBridge e AWS Lambda. AWS AppSync offre configurazione completamente gestita per
le API GraphQL e Pub/Sub, oltre ad amministrazione, dimensionamento automatico ed elevata disponibilità con
sicurezza integrata, monitoraggio, registrazione e tracciamento e memorizzazione nella cache opzionale per una
bassa latenza. AWS AppSync ora offre anche API private che consentono agli utenti di impostare restrizioni in modo
tale che le API siano accessibili solo da endpoint del cloud privato virtuale (VPC) specificati.
Le API GraphQL di AWS AppSync semplificano lo sviluppo di applicazioni perché offrono un singolo endpoint
per eseguire query o aggiornare dati su più database, microservizi e API. Utilizza GraphQL per fornire alle tue
applicazioni tutta la potenza dei dati migliori, da una o più origini dati, con un'unica richiesta di rete e combinare più
origini dati in un'unica API GraphQL.
Le API Pub/Sub di AWS AppSync consentono di pubblicare automaticamente, tramite connessioni WebSocket
serverless, aggiornamenti dati sui client API sottoscritti e agevolano così la creazione di esperienze coinvolgenti in
tempo reale. Estendi l'API GraphQL perché includa le iscrizioni e pubblichi in tempo reale aggiornamenti dati da
qualsiasi origine di eventi su client web, per dispositivi mobili e IoT sottoscritti. In alternativa, puoi sempre iniziare
con una semplice API Pub/Sub senza GraphQL. In ogni caso, AWS AppSync gestisce la creazione di connessioni
WebSocket serverless, la trasmissione di messaggi e fanout a milioni di client connessi.
AWS AppSync offre le integrazioni con altri servizi AWS, facilitando la sicurezza, il monitoraggio e la risoluzione dei
problemi delle API. Questi servizi includono:
7
ST O R I A D E L C LIE N T E
ADP ha dovuto innovare per creare un'unica esperienza per diversi sistemi di record senza Devi Ramachandran
introdurre errori. "La velocità con cui si aprono le buste paga dovrebbe essere la stessa con cui si Senior Director, DevOps presso ADP
aprono le iscrizioni ai benefit, ma si tratta di due diverse origini di contenuto su due diversi set di
infrastrutture", afferma Devi Ramachandran, senior director di DevOps presso ADP. "Questa è stata
la nostra sfida fin dall'inizio e la migrazione dei nostri sistemi ad AWS ha reso tutto più semplice".
Per semplificare l'accesso alle API dell'applicazione fornito da queste diverse infrastrutture, ADP ha
utilizzato AWS AppSync per riunire i dati provenienti dai vari back-end e origini in un unico endpoint.
Di conseguenza, ADP è stata in grado di semplificare l'aggregazione dei dati sul back-end e creare una
migliore esperienza per gli utenti.
8
S U G G E R I M E N T O N. 3
La situazione La soluzione
Secondo Deloitte, l'80% delle risorse IT è dedicato alla gestione dell'azienda, Uno dei modi più semplici di ridurre le operazioni è trasferire a un provider
mentre il 20% è destinato all'innovazione. Il modo più rapido per migliorare cloud il carico operativo e adottare servizi gestiti o serverless per l'infrastruttura.
questo rapporto e spostarlo in favore dell'innovazione consiste nel ridurre i tempi Ridurre il tempo impiegato per effettuare il provisioning, gestire e applicare le
necessari per attività non essenziali per l'azienda, ad esempio per la gestione patch ai server consente agli sviluppatori di dedicare più tempo all'innovazione,
dell'infrastruttura. Gestire i servizi, l'archiviazione, le reti e i sistemi operativi scrivendo e iterando codice per prodotti destinati ad avere successo con i clienti.
è dispendioso in termini di tempo, costoso e complesso dal punto di vista operativo Grazie all'elaborazione serverless non c'è nessuna infrastruttura da gestire o di
a causa dei cicli di acquisizione. Per gestire l'infrastruttura i team impiegano cui effettuare il provisioning. L'infrastruttura si dimensiona automaticamente
sempre più tempo, ma questa è un'opportunità critica per ottimizzare e reinvestire per unità di consumo, anziché per unità server. Con le soluzioni serverless,
nell'innovazione. l'organizzazione paga solo per la potenza di calcolo che consuma, mentre
disponibilità e tolleranza ai guasti sono integrate. L'elaborazione serverless elimina
gli oneri legati alle operazioni server in modo che ci si possa concentrare sulla
realizzazione dell'applicazione piuttosto che sulla gestione e sul dimensionamento
dell'infrastruttura per supportare l'applicazione.
9
Come AWS può aiutarti
Un ottimo modo di iniziare è AWS Lambda. Questo servizio di calcolo serverless esegue il
codice come un'applicazione a elevata disponibilità, scalabile, sicura e con tolleranza agli errori,
astraendo completamente l'ambiente di calcolo sottostante. Ciò consente di concentrarsi
principalmente sullo sviluppo delle applicazioni, accelerando il time-to-market e riducendo il
costo totale di proprietà (TCO). Le funzioni Lambda possono essere attivate da eventi, il che
significa che rimangono inattive fino a quando non viene attivato un evento e poi il sistema
entra in azione. Infatti è possibile attivare automaticamente le funzioni Lambda da oltre
200 servizi AWS, chiamate HTTP e applicazioni Software-as-a-Service (SaaS), senza dover
scrivere una sola riga di codice per l'integrazione.
Una volta attivato l'evento, le risorse vengono incrementate o ridotte automaticamente in base
a quanto necessario per l'attività, il tutto nel giro di qualche millisecondo. Non è necessario
effettuare il provisioning o la configurazione dell'infrastruttura e il pagamento si basa
sull'effettivo utilizzo, con tempi di produzione più rapidi e TCO più ridotti possibile.
Lambda offre la massima agilità con operazioni minime, ma in alcuni casi potresti voler utilizzare
un orchestratore di container per eseguire i container. Ciò fornisce la flessibilità per l'esecuzione
in modalità serverless o per ottimizzare l'infrastruttura per aggiungere valore all'azienda. I team
possono integrare AWS Lambda con Amazon Elastic Container Service (Amazon ECS) su AWS
Fargate, un servizio di container serverless.
10
ST O R I A D E L C LIE N T E
Grazie all'utilizzo di AWS, l'azienda ha ridotto i costi mensili della sua soluzione del 60% e ha
consentito ai dipendenti di concentrarsi sulle varie attività di creazione di nuove entusiasmanti
funzionalità piuttosto che dedicare tempo alla gestione autonoma dell'infrastruttura.
11
Inizia subito Esplora altre risorse per
creare applicazioni web e per
dispositivi mobili
Ora che abbiamo esplorato i nostri tre suggerimenti per accelerare lo
sviluppo di applicazioni web e per dispositivi mobili, probabilmente vorrai
iniziare subito. Noi consigliamo ai team di iniziare con uno o più di questi
suggerimenti come integrazione dell'approccio in uso per realizzare le
moderne applicazioni. AWS Amplify ›
Potenziare i team di front-end con Amplify e ridurre complessivamente le fasi AWS AppSync ›
e le righe di codice necessarie per realizzare applicazioni full stack può aiutare
gli sviluppatori a lanciare i prodotti più velocemente. Con AWS AppSync Crea e implementa un'applicazione
è anche possibile semplificare l'accesso alle origini dati distribuite. L'astrazione
web Next.js full stack con AWS
delle origini dati esistenti in un endpoint GraphQL API unificato offre ai
team di front-end un accesso ai dati più semplice per realizzare funzionalità Amplify ›
orientate ai dati. Puoi anche sfruttare una semplice API Pub/Sub per offrire
esperienze dati in tempo reale e creare un'applicazione che si distingua dalle Crea API moderne API con GraphQL ›
altre. AWS ti aiuta a ridurre le operazioni per l'infrastruttura grazie a servizi
come Lambda. Crea esperienze di applicazioni in
tempo reale con WebSoket serverless,
Qualunque sia il percorso scelto, AWS ti aiuterà a soddisfare gli standard
sempre più elevati per l'esperienza utente e i servizi cloud, consentendo ai
GraphQL e AWS AppSync ›
team di rendere disponibili applicazioni scalabili a elevate prestazioni e a costi
ridotti. Scopri in che modo la tua organizzazione può creare e lanciare in
Suggerimenti pratici nel Blog AWS
modo rapido e semplice applicazioni web e per dispositivi mobili ricche di AppSync GraphQL ›
funzionalità. In alternativa, inizia subito con uno o più dei nostri strumenti
o servizi. Ottieni le ultime versioni delle
funzionalità e le guide pratiche sul
Inizia il percorso verso la modernizzazione delle applicazioni › blog del Web e dei dispositivi mobili
front-end ›
Contatta un esperto AWS ›
© 2023, Amazon Web Services, Inc., o sue affiliate. Tutti i diritti riservati.
12