Aplikácie pre vývoj webových aplikácií v programovaní Go - Vitajte v mojom ďalšom blogu, programátoroch kolegov. Na tomto blogu budeme hovoriť o úžasnom jazyku Golang spoločnosti Google. V mojom predchádzajúcom blogu ste možno videli, ako sa Golang vyvíjal v priebehu rokov a tvrdo konkuroval Java a C ++. V tomto blogu by sme však hovorili o jeho aplikáciách v reálnom svete. Golang je oficiálny programovací jazyk spoločnosti Google.

Google si ponechal svoju licenciu Open source. Znamená to, že ho môže každý upravovať, kopírovať, vkladať alebo meniť podľa svojich potrieb. Golang je programovací jazyk na vysokej úrovni. Aj keď má Go veľa vlastností podobných C alebo Java, sotva niečo podobné ako C alebo Java.

Oficiálne logo Go Lang

V skutočnosti bolo programovanie Go určené ako jazyk, ktorý by mohol byť kombináciou jazyka Python, C a Java. Aj keď tieto jazyky nikdy nemôže nahradiť, ale iné jazyky nedokážu robiť to, čo môže Go, a hovoriť pravdu, v skutočnosti sú oveľa rýchlejšie ako C alebo Python. Dosť informácií o tom, ako teraz funguje programovanie GO, umožňuje vidieť aplikácie v reálnom svete okrem toho, že spoločnosti Google veľa pomáha, a ako v skutočnosti dominuje svetu vývoja webových aplikácií.

Prostredníctvom tohto blogu budem predpokladať, že máte nejaké základné znalosti v programovaní C, Java alebo aspoň Django. Ak nie, môžete si prečítať moje ďalšie blogy, aby ste si to lepšie uvedomili a potom sa sem vráťte a pokračujte týmto.

Príklady programovacieho jazyka Go -

Pôvod GO

Pamätajte, že som vám povedal, že Go dostal jeho vlastnosti z jazykov pre vývoj webových aplikácií, ako sú C a python, ale je pravda, že si to požičal oveľa viac ako len vlastnosti. Má pohyblivosť rýchlosti kompilácie pythonu bez toho, aby sa stratila bezpečná polarita C. Miniatúrne súbory GO sú na mieste, napríklad môžete zostaviť veľké programy za pár sekúnd. Rýchlosť týchto bajtov je takmer rovnaká ako u C.

Hlavný dôvod, prečo sa programovanie GO vyvíjalo, pretože spoločnosť Google mala veľmi veľké servery s kritickými údajmi a programátori investovali, alebo by sa lepší termín premárnil dlho čakaním na kompiláciu programov. Aj keď bol kód zostavený a paralelizovaný, zostavenie jediného programu trvalo veľmi dlho.

Dokonca aj prírastkové zostavenia boli pomalé (prírastkové zostavenia znamenajú iba aktualizáciu starých zostavení novými funkciami alebo vyčistenie jeho chýb). Potom si uvedomili, že potrebujú niečo iné, niečo so silou C a rýchlosťou pythonu. Taktiež sa rozhodli, že nástroje používané v týchto jazykoch základných systémov sú pomalé.

Chceli teda začať niečo od nuly, niečo napísať také programy, ktoré museli napísať na Google, a to tak, aby zostavy boli skutočne inteligentné a krátke bez toho, aby stratili svoju účinnosť.

Vývoj webových aplikácií, súbežnosti a GO

Teraz ide o to, ako funguje vývoj webových aplikácií s GO? Ako získava zo svojej súbežnosti. Ide o to teoreticky, pri paralelnom spracovaní by sa prostriedky servera mohli lepšie využiť. Napríklad, ak spustíte 2 nezávislé dotazy SQL paralelne, dá to rýchlu odpoveď. Nie je to úžasné?

Teraz sa na to môžeme pozrieť opačne

Normálne, keď začujete slovo súbežnosť, začnete si myslieť, že môžete pracovať na viacerých vláknach naraz. Nie sme však extrémnymi profesionálmi, aby bol náš kúsok kódu dokonalý. Presnejší spôsob, ako to dosiahnuť, by teda bolo, že namiesto toho, aby ste vykonávali viac úloh, by ste v skutočnosti mohli skončiť iba s rozladením vecí okolo vás.

Bohužiaľ sa tým na našej ceste rozvíja veľa škytaviek, čo v skutočnosti nie je dobré, pretože súbežnosť môže viesť k lepšiemu vizuálnemu usporiadaniu a jasnejšiemu kódu. Stručne povedané, dá sa na ňu spoľahnúť z jedného dôvodu, ktorý by ste nechceli: nízky výkon. Ale napriek tomu všetkému skutočne ignorujeme hlavnú časť. Ak v skutočnosti máme dobrú sadu hardvéru alebo rýchlejších výpočtových techník, ktoré by boli presnejšie, GO by skutočne pracoval rýchlejšie v prostredí viacjadrových procesorov.

Teraz sa pozrime, ako sa GO líši od iných jazykov. Čo teda musíme urobiť, je prvý krok: vyberte akýkoľvek globálny premenlivý stav, ktorý chcete zmeniť, a potom druhý krok: implementujte blokovanie. Teraz je to kombinácia dvoch správnych krokov a dvoch nesprávnych vecí. Vývojári, ktorí majú slušné skúsenosti, by so mnou súhlasili, že globálny premenlivý štát je zlá vec.

V skutočnosti sa veľa kodérov snaží odstrániť to najlepším možným spôsobom. Najdôležitejšia skutočnosť, že máte krok jeden, sa zdá byť ako nejaký refaktoring, aby sme mohli začať. Druhý krok, tj zamykanie, je na druhej strane schopný dosiahnuť svoj cieľ, zároveň však zavádza obrovské množstvo kotlovej platne, ktoré je mimoriadne ťažké správne zapísať a potom správne odladiť.

Takýto druh jazykov by teda mohol mať jednu požiadavku http na čítanie špecifickej premennej a ďalšiu na zápis. Čo sa stalo, keď? Je to dosť dôležité? Potrebuje príkaz na čítanie a písanie? Má váš kód takúto logiku? Ak áno, prečo?

Odporúčané kurzy

  • Profesionálny Linux s programom Python Training
  • Program riadenia úrovne služieb
  • Online certifikačný kurz v jQuery Mobile
  • Kompletné školenie v oblasti Business Intelligence

Cesta k GO

Vlákna GO nie sú to, na čo by ste mohli byť pri písaní týchto jadier zvyknutí. V skutočnosti sú trochu podobné procesom Erlangu. Sú extrémne ľahké a obaja majú podobné ciele. To však nehovorí, že GO a Erlang sú rovnaké, pretože majú veľa vlastných rozdielov.

Súbežnosť a kanály; oboje spolu spájajú programovanie GO. Dá sa však povedať, že tieto kanály majú skutočný výkon, aby mohli fungovať naše automatizácie. A z dôvodu tejto povahy bránia zdvojovaniu rutín v GO. Nuf povedal, že teraz môžete spúšťať kódy bez pomoci zámkov a mutexov. Ak máte čas na googling, potom nájdete veľa ľudí vyskúšajúcich rovnaké metódy vo forme rúr UNIX.

Vytváranie natívnych aplikácií GO

Teraz, keď vieme, ako funguje GO, sa môžeme pozrieť na vytvorenie niektorých základných aplikácií v GO. Poďme najprv prejsť predbežnými náležitosťami:

  1. Stiahnite si inštalačný program go z oficiálneho webového servera go (môžete ho získať vyhľadaním download golang)
  1. Nastavte GOPATH (Toto je najzložitejšia časť, ak ste vo svojom živote nikdy nenastavili premenné prostredia)

a. Pre používateľov systému Windows:

nastaviť GOROOT = C: \ go

sada GOPATH = C: \ Users \ testdir

set GOBIN = % GOPATH% \ bin

nastaviť PATH = % PATH%; c: \ go \ bin;% GOBIN%

cd % GOPATH% \ src

Vo vyššie uvedenej možnosti testdir nastavte adresár, ktorý chcete použiť (pomenujte ho, čo chcete) ako pracovný adresár. Týmto sa nastavia všetky adresáre a keď zadáte posledný príkaz cd (change firectory), mal by sa dostať do predvoleného pracovného adresára, tj v našom prípade jeho testdir. Ak áno, znamená to, že to funguje.

b. Pre používateľov systému Linux:

export GOROOT = / usr / local / go

export GOPATH = $ HOME / go

export PATH = $ PATH: $ GOROOT / bin: $ GOPATH / bin

Nasledujú požadované balíčky, ktoré by ste si mali stiahnuť (tieto sú voliteľné, záleží na tom, čo potrebujete zostaviť):

Tieto balíčky môžete nainštalovať (alebo aktualizovať) spustením nasledujúceho príkazu v konzole:

choď -u

Napríklad, ak chcete nainštalovať Negroni, môžete použiť nasledujúci príkaz:

choďte get -u github.com/codehub/negroni

Vytváranie webových aplikácií pre mňa znamená budovanie serverov Http. Protokol Http alebo Hypertext Transfer je protokol, ktorý bol pôvodne vytvorený na prenos iba dokumentov HTML špecifických pre používateľa z konkrétneho servera do webového prehľadávača na strane klienta. Http sa dnes používa na prepravu viac ako obyčajných textov.

Nebudem sa dostať hlboko do hĺbky, môžete odkázať na github, kde nájdete viac podrobností o tomto projekte.

Teraz, ako začať, môžeme začať vytvorením nového projektu v našom GOPATH

cd GOPATH / src

mkdir testovací server

cd testovací server

Teraz môžeme vytvoriť main.go napísaním:

hlavné balenie

importovať „net / http“

func main () (

)

Teraz, keď je všetko nastavené, musíme importovať balík http a potom to bude fungovať. A teraz je čas napísať náš kód testovacieho servera:

http.ListenAndServe („: 2964“, http.FileServer (http.Dir („.“))))

Http.ListenAndServer je funkcia, ktorá sa používa na beh servera. Bude bežať na adrese, ktorá mu bola poskytnutá, tj v tomto prípade port 2964, a keď dostane odpoveď, prevedie ho http.handler, ktorý sme uviedli ako druhý argument, ktorým je opäť v tomto prípade zabudovaný http -FileServer.

Vytvorili sme http.Handler so serverom http.FileServer, ktorý bude fungovať ako server pre celý adresár súborov a bude automaticky reagovať so súborom, ktorý musí byť doručený na cestu žiadosti. Pokiaľ ide o tento kus kódu, ktorý sme spustili vyššie, povedali sme serveru, aby odpovedal s aktuálnym pracovným adresárom, tj http.Dir (“.”)

Celý program bude potom vyzerať takto:

hlavné balenie

importovať „net / http“

func main () (

http.ListenAndServe („: 2964“, http.FileServer (http.Dir („.“))))

)

Teraz, keď spustíme a uvedieme náš súborový server na trh, môžeme ho spustiť kedykoľvek, keď budeme chcieť napísať:

ísť stavať

./testserver

A teraz, keď to otvoríme v našom prehliadači localhost: 2964 / main.go alebo http: // 127.0.0.1:2964/main.go, mali by sme mať možnosť vidieť balíčky v našom súbore main.go na našom webe. browser. Najlepšie na tom je, že môžeme tento program spustiť odkiaľkoľvek z nášho počítača a tento adresár slúžiť ako základná domovská stránka pre localhost. To všetko je možné iba v jednom riadku programovania Go.

Keď už hovoríme o tom, mali by ste sa skutočne pozrieť na webové aplikácie vyvinuté v programe github a skutočne budete ohromení, keď uvidíte, čo všetky aplikácie, ktoré ľudia vyvinuli s programovaním GO. GO jazyk je viac ako len vaše bežné programovanie. Akonáhle sa dostanete na kĺb tohto jazyka, je veľmi nepravdepodobné, že sa skutočne vrátite späť k svojim bežným jazykom C, C ++ alebo Java. Tak to bude aj teraz. Zostaňte naladení na ďalšie informácie o programovaní GO.

Zdroj prvého obrázka: pixabay.com

Súvisiace články: -

  1. Mali by ste sa dozvedieť viac o rozhovoroch a odpovediach na webové služby
  2. Najlepšie a užitočné body otázok pre webové služby Java Web Interview
  3. Nové 10 výhod nástroje na vývoj webových aplikácií pre začiatočníkov (zadarmo)
  4. Dôležité príklady programovania Scratch
  5. Ako vybudovať vynikajúcu kariéru ako profesionála pre vývoj webových aplikácií?
  6. Vývoj softvéru verzus vývoj webových aplikácií

Kategórie: