Open Finance: realtà o illusione? PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Open Finance: realtà o pubblicità?

Di solito ci sono alcune preoccupazioni quando si implementa una nuova tecnologia, come cosa accadrebbe se rimanessimo bloccati da qualche parte e finissimo per sprecare tempo e fatica. È possibile che dovremo tornare alla soluzione originale. Abbiamo affrontato problemi simili un anno fa, ma dopo una ricerca lunga e approfondita, abbiamo trovato una soluzione più sicura e sicura-Golang e le sue strutture. Il modo in cui è documentato è davvero utile. Tuttavia, eravamo abbastanza certi che non avremmo trovato tutte le risposte online, una sfida che abbiamo accettato lo spirito di Lailah Gifty Akita celebre adagio, "C'è SEMPRE UNA SOLUZIONE PER OGNI SITUAZIONE SFIDA."

Questo blog parla principalmente del framework Golang-Beego e delle sue applicazioni. Discuteremo di come Golang viene utilizzato nello sviluppo Web e perché la maggior parte degli sviluppatori passa da Python, Node o altri linguaggi a Go.

Comprendiamo il framework Golang per sapere come funziona.

Cos'è il Golang?

Apparso per la prima volta nel 2009, Golang (popolarmente noto come Go) ha rapidamente guadagnato popolarità tra gli sviluppatori, diventando una lingua preferita da oltre il 90% degli utenti. I suoi linguaggi predecessori sono i linguaggi di programmazione C e C++, il che è abbastanza evidente esaminando la sua sintassi e le funzionalità di compilazione. 

Utilizzato principalmente per lo sviluppo di back-end, Go ha altri 4 casi d'uso: 

  1. Servizi cloud e di rete
  2. Interfacce della riga di comando (CLI) 
  3. Sviluppo Web
  4. Operazioni di sviluppo e ingegneria dell'affidabilità del sito. 

Ecco alcune delle caratteristiche principali di Golang che rendono questo framework la scelta preferita dagli sviluppatori:

1. Semplicità 

La sintassi Go è semplice come mostrato qui e la sua compilatore può sentire l'odore dei problemi e generare errori durante il processo di compilazione, ovvero prima dell'esecuzione del programma.

La flessibilità, l'usabilità e il concetto incredibilmente interessante alla base di Go (il modo in cui gestisce la concorrenza nativa, la raccolta dei rifiuti e la sicurezza + velocità) sono alcune delle funzionalità piuttosto utili per gli sviluppatori.

2. Velocità

La concorrenza incorporata (Goroutine e Canali) è uno dei motivi principali delle sue elevate prestazioni. Analizzando questo stack overflow ci permetterà di stimarne la velocità.

“Potrei averlo implementato in modo errato perché i risultati non hanno senso. Ho un programma Go che conta fino a 1000000000; finisce in meno di un secondo. D'altra parte, ho uno script Python; finisce in pochi minuti. Perché la versione Go è molto più veloce? Entrambi contano fino a 1000000000 o mi sto perdendo qualcosa?" 

Se non sei ancora sicuro della velocità, ecco un confronto tra Go, Nodo JS, Java e Python che aiuteranno a ottenere maggiore chiarezza sul suo utilizzo:

Specifiche del mio dispositivo:

Nome del dispositivo- COMPUTER PORTATILE-Q8U9LM8P

Processore- CPU Intel® Core™ i5-10210U a 1.60 GHz 2.10 GHz

RAM installata- 16.0 GB (15.6 GB utilizzabili)

Tipo di sistema- Sistema operativo 64-bit, processore basato su x64

Stampa del corpo N:

Sorgente Tempo per contare 

Vai: 6.34 secondi

Python3: 545.25 secondi

GO

Produzione:

Fattoriale   Tempo Per calcolare il fattoriale

10000 0.008 secondi

50000 0.506 secondi

100000 3.154 secondi

500000 82.394 secondi

1000000 284.445 secondi

NodeJS (Javascript)

Produzione:

Tempo fattoriale Per calcolare il fattoriale

10000 0.113 secondi

50000 1.974 secondi

100000 22.730 secondi

500000 477.534 secondi 

1000000 1175.795 secondi 

Python

Produzione:

Tempo fattoriale Per calcolare il fattoriale

10000 0.046 secondi

50000 1.187 secondi

100000 6.051 secondi

500000 388.607 secondi 

1000000 813.725 secondi 

JAVA

Produzione:

Tempo fattoriale Per calcolare il fattoriale

10000 0.064 secondi

50000 1.607 secondi

100000 5.363 secondi

500000 141.076 secondi

1000000 585.868 secondi

3. Sicurezza:

Netturbino:

Vai preferisce assegnare memoria sullo stack, quindi la maggior parte delle allocazioni di memoria finirà lì. Ciò significa che ha uno stack per goroutine e quando possibile assegnerà variabili a questo stack.

Golang mark and sweep garbage collector ha due fasi: Mark e Sweep. In primo luogo, contrassegnerà tutte le variabili non utilizzate e utilizzate, quindi eliminerà quelle non utilizzate.

Le statistiche e la descrizione sopra suggeriscono perché si dovrebbe lavorare con Go. Anche il framework Golang, che è il migliore per la creazione di API, accelera e facilita lo sviluppo.

Perché utilizziamo Beego Framework?

Che si tratti di Go o Beego, entrambi sono fantastici per lo sviluppo di API REST ad alte prestazioni. 

Beego è un framework "batteria inclusa", con strumenti integrati (bee tool), ORM e librerie rispetto ad altri framework come Gin-gonic che non è un tipo "batteria inclusa" e contiene la maggior parte delle librerie essenziali e funzionalità non adatte per funzionalità lato server.

Beego utilizza un tipico framework Model-View-Controller (MVC) che si è rivelato utile per le persone (come noi) che hanno lavorato su Python-Django prima e Beego è abbastanza simile.

Perché utilizziamo Beego Framework?

Conclusione: 

È così che abbiamo avviato la nostra applicazione con Golang e Beego. Abbiamo lavorato su PDF, gestione delle immagini con ImageMagick, AWS-SNS, AWS-SES SMTP, chiamate IVR, fax, firme digitali, generazione di report con ORM e molti altri. E non abbiamo riscontrato alcun blocco durante il lavoro con funzionalità di terze parti come Twilio o AWS. È davvero semplice scrivere codice su Golang come menzionato dai loro creatori. Ci sono alcune sfide nell'uso di questo framework, ma ci sono anche soluzioni. Ci è davvero piaciuto lavorare su questo framework. BELLA FORTUNA per le tue imminenti applicazioni Golang.

L'autore

Piyush Raj si è laureato presso l'IIT Kharagpur in Chemical Dept. Ha iniziato la sua carriera con ML e AI e ora lavora presso Mantra Labs come sviluppatore di software. Nel tempo libero gli piace esplorare nuove strade nel mondo reale o sulla carta attraverso i viaggi e la pittura.

Timestamp:

Di più da Laboratori di mantra