Open Finance: Reality vai Hype? PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.

Avoin rahoitus: Todellisuus vai Hype?

Uuden teknologian käyttöönotossa on yleensä huolenaiheita, kuten mitä tapahtuisi, jos jäämme jonnekin jumiin ja hukkaamme aikaamme ja vaivaamme. On mahdollista, että joudumme palaamaan alkuperäiseen ratkaisuun. Kohtasimme samanlaisia ​​ongelmia vuosi sitten, mutta pitkän ja perusteellisen tutkimuksen jälkeen löysimme ratkaisun, joka oli turvallisempi ja turvallisempi.Golang ja sen puitteet. Tapa, jolla se on dokumentoitu, on todella hyödyllistä. Olimme kuitenkin melko varmoja, ettemme löydä kaikkia vastauksia verkosta, mikä oli haaste, johon hyväksyimme henki Lailah Gifty Akita's kuuluisa sananlasku, "JOKAISEEN HAASTAVIIN TILANTEISIIN ON AINA RATKAISU."

Tämä blogi puhuu pääasiassa Golang-Beego-kehyksestä ja sen sovelluksista. Keskustelemme siitä, miten Golangia käytetään verkkokehityksessä ja miksi useimmat kehittäjät siirtyvät Python-, Node- tai muista kielistä Go:hon.

Ymmärretään Golang-kehys, jotta tiedämme, kuinka se toimii.

Mikä on Golang?

Ensimmäistä kertaa vuonna 2009 ilmestynyt Golang (tunnetaan yleisesti nimellä Go) sai nopeasti suosion kehittäjien keskuudessa, ja siitä tuli yli 90 %:n käyttäjistä suosikkikieli. Sen esi-isien kielet ovat C- ja C++-ohjelmointikielet, mikä käy ilmi sen syntaksia ja käännösominaisuuksia tarkasteltaessa. 

Pääasiassa taustakehitykseen käytetty Golla on 4 muuta käyttötapausta - 

  1. Pilvi- ja verkkopalvelut
  2. Command-line Interfaces (CLI:t) 
  3. Web-Kehitys
  4. Kehitystoiminta ja työmaan luotettavuussuunnittelu. 

Tässä on joitain Golangin pääominaisuuksia, jotka tekevät tästä kehyksestä kehittäjien suosiman valinnan:

1. Yksinkertaisuus 

Go-syntaksi on suoraviivainen, kuten tässä on esitetty kääntäjä voi haistaa ongelmia ja aiheuttaa virheitä rakennusprosessin aikana – eli ennen ohjelman suorittamista.

Go:n takana oleva joustavuus, käytettävyys ja uskomattoman siisti konsepti (miten se käsittelee alkuperäistä samanaikaisuutta, roskien keräämistä ja turvallisuutta ja nopeutta) ovat joitain ominaisuuksia, jotka ovat varsin hyödyllisiä kehittäjille.

2. Nopeus

Sisäänrakennettu samanaikaisuus ( Goroutines ja kanavat ) on yksi tärkeimmistä syistä sen korkeaan suorituskykyyn. Analysoimalla tätä pino ylivuoto avulla voimme arvioida sen nopeuden.

”Olen saattanut toteuttaa tämän väärin, koska tuloksissa ei ole järkeä. Minulla on Go-ohjelma, joka laskee 1000000000; se päättyy alle sekunnissa. Toisaalta minulla on Python-skripti; se loppuu muutamassa minuutissa. Miksi Go-versio on niin paljon nopeampi? Laskevatko he molemmat 1000000000 asti vai missaanko jotain?" 

Jos olet edelleen epävarma nopeudesta, tässä on vertailu Go, Solmu JS, Java ja Python, jotka auttavat saamaan enemmän selvyyttä sen käytöstä:

Laitteen tekniset tiedot:

Laitteen nimi- kannettava tietokone-Q8U9LM8P

Processor- Intel(R) Core(TM) i5-10210U CPU @ 1.60 GHz 2.10 GHz

asennettu RAM- 16.0 Gt (15.6 Gt käytettävissä)

Järjestelmän tyyppi- 64-bittinen käyttöjärjestelmä, x64-pohjainen prosessori

N-runkoprintti:

Lähde Time To Count 

Matka: 6.34 sekuntia

Python3: 545.25 sekuntia

GO

lähtö:

kertoma   Aika Faktoriaalin laskemiseen

10000 0.008 XNUMX sekuntia

50000 0.506 XNUMX sekuntia

100000 3.154 XNUMX sekuntia

500000 82.394 XNUMX sekuntia

1000000 284.445 sekuntia

NodeJS (Javascript)

lähtö:

Faktoriaaliaika Faktoriaalin laskeminen

10000 0.113 XNUMX sekuntia

50000 1.974 XNUMX sekuntia

100000 22.730 XNUMX sekuntia

500000 477.534 XNUMX sekuntia 

1000000 1175.795 sekuntia 

Python

lähtö:

Faktoriaaliaika Faktoriaalin laskeminen

10000 0.046 XNUMX sekuntia

50000 1.187 XNUMX sekuntia

100000 6.051 XNUMX sekuntia

500000 388.607 XNUMX sekuntia 

1000000 813.725 sekuntia 

JAVA

lähtö:

Faktoriaaliaika Faktoriaalin laskeminen

10000 0.064 XNUMX sekuntia

50000 1.607 XNUMX sekuntia

100000 5.363 XNUMX sekuntia

500000 141.076 sekuntia

1000000 585.868 sekuntia

3. Turvallisuus:

Roskankerääjä:

Go mieluummin jakaa pinossa olevaa muistia, joten suurin osa muistivarauksista päätyy sinne. Tämä tarkoittaa, että siinä on pino gorutiinia kohden, ja mikäli mahdollista, se määrittää tälle pinolle muuttujia.

Golang-merkin ja pyyhkäisyn roskienkerääjällä on kaksi vaihetta: Merkitse ja Sweep. Ensin se merkitsee kaikki käyttämättömät ja käytetyt muuttujat ja pyyhkäisee sitten käyttämättömät.

Tilastot ja yllä oleva kuvaus viittaavat siihen, miksi Go:n kanssa pitäisi työskennellä. Golang-kehys, joka sopii parhaiten API:iden luomiseen, myös nopeuttaa ja helpottaa kehitystä.

Miksi käytämme Beego Frameworkia?

Olipa kyseessä Go tai Beego, molemmat ovat loistavia tehokkaiden REST-sovellusliittymien kehittämiseen. 

Beego on "pariston mukana tuleva" kehys, jossa on sisäänrakennetut työkalut (bee tool), ORM ja kirjastot verrattuna muihin kehyksiin, kuten Gin-gonic, joka ei ole "akku mukana" tyyppi ja sisältää tärkeimmät kirjastot ja ominaisuudet, jotka eivät sovellu palvelinpuolen ominaisuuksia.

Beego käyttää tyypillistä Model-View-Controller (MVC) -kehystä, joka on osoittautunut hyväksi ihmisille (kuten meille), jotka työskentelevät aiemmin Python-Djangolla, ja Beego on melko samanlainen.

Miksi käytämme Beego Frameworkia?

Johtopäätös: 

Näin aloitimme sovelluksemme Golangin ja Beegon kanssa. Työskentelimme PDF:n, ImageMagickin kuvien käsittelyn, AWS-SNS:n, AWS-SES SMTP:n, IVR-puheluiden, faksin, digitaalisten allekirjoitusten, raporttien luomisen ORM:n avulla ja monien muiden parissa. Emme ole havainneet esteitä työskennellessämme kolmannen osapuolen ominaisuuksien, kuten Twilio tai AWS, kanssa. Koodin kirjoittaminen Golangiin on todella helppoa, kuten niiden luojat ovat maininneet. Tämän kehyksen käytössä on tiettyjä haasteita, mutta myös ratkaisuja on. Nautimme todella siitä, että työskentelimme tämän kehyksen parissa. ONNEA tuleville Golang-sovelluksille.

kirjailijasta

Piyush Raj valmistui IIT Kharagpurista kemian osastolta. Hän aloitti uransa ML:n ja tekoälyn parissa ja työskentelee nyt Mantra Labsissa ohjelmistokehittäjänä. Vapaa-ajallaan hän tutkii mielellään uusia polkuja todellisessa maailmassa tai paperilla matkustamalla ja maalaamalla.

Aikaleima:

Lisää aiheesta Mantra Labs