Golang

Acest training abordeaza limbajul de programare Go si acopera subiecte legate de tipurile de date, control flow constructs, elementele specifice ale stilului de programare si built-in compiler tools.
Cod: DEV-040
Durata: 32 ore

Descriere

Cursul se adreseza programatorilor cu experienta in domeniu si prezinta in detaliu functionalitatile si capabilitatile Go. Implementarea de built-in containers si functionalitatile specifice ale control constructs sunt acoperite in detaliu prin intermediul mai multor exercitii practice. Limbajul de programare Go are propria sa implementare a abordarii orientate pe obiect – astfel ca vom acorda mai multa atentie catre interface-based domain decomposition.

Go a fost dezvoltat pentru a folosi cat mai eficient concurrent si parallel computations – din acest motiv, cursul nostru ofera numeroase exemple legate de folosirea concurrent algorithms. Trecem in revista si folosirea standard library capabilities precum si folosirea third-party packages.

Go ofera un set amplu de instrumente care sprijina procesele de testare si dezvoltare, care sunt de altfel abordate si in training. Mai mult decat atat vom discuta si despre o serie de elemente practice cum ar fi interactiunea cu bazele de date relationale sau exemple de REST interface implementation.

Subiecte curs

Configurarea mediului
  • Cum sa instalam si sa configuram Go compiler. Exemple de scris, compilare si rulare a unui program simplu Go.

Go IDEs
  • Ce integrated development environment poate sa fie folosit pentru a scrie cod in Go. Cum le instalam si le configuram.

Instrumente Go
  • Built-in tools pentru a ajuta procesul de dezvoltare software. Cum sa compilam si sa rulam un program Go, cum sa accesam documentation si sa adaugam documentation la cod.

Structura directorului / Module Go / Pachete
  • Cum sa organizam structura project directory pentru a fi conform cu regulile general acceptate. Metode pentru descompunerea codului in componente separate pentru intretinere si reutilizare usoara.

Instalarea dependintelor
  • Folosirea solutiilor third-party solutions in loc sa scriem noi cod. Managementul dependintelor si stocarea distribuita a pachetelor.

Tipuri de date si declararea varibilelor / Valori zero / Type conversions
  • Reprezentarea valorilor primitive in limbajul si operatiile de baza din cadrul lor.

Containere: arrays, slices, maps
  • Cum sa stocam value sequences: arrays, slices si hash-tables (reprezentarea interna si use cases).

Branching si loops: break, continue, fallthrough, goto
  • Descrierea algoritmilor cu loops si branching, diferente Go syntax constructs fata de alte limbaje de programare.

Functii / Multiple return values / Variadic parameters / Function literals si closures
  • Definirea functiilor si passing parameters. Functii cu un numar arbitrar de argumente. Functional capabilities, anonymous functions si closures.

Types declarations / Constants / Iota / Structures / Embedded structs / Anonymous structs / Nested structs
  • Modalitati de definire a user types si constants, descrierea secventelor de valori. Cum sa descriem domain entities folosind language structs.

Pointers / Value si references types
  • Managementul memory si pointers.

Defer statement
  • Function call defer.

Error handling / Panic recover
  • Cum sa identificam si sa abordam runtime errors. Modalitati de a scrie cod fiabil si rezistent.

Metode si interfete / Method expressions
  • Interfete si implementarea lor. Dezvoltarea de cod orientat pe obiect bazat pe interfete. Metode.

Concurrency vs parallelism / Goroutines / Memory model
  • Cum sa facem mai multe lucruri simultan. Concurrent execution bazat pe goroutines. Memory model in Go.

Channels / Blocking si unblocking channels / Select statement
  • Scrierea de cod fiabil: data exchange intre goroutines bazate pe canale.

Waitgroups, mutexes, atomics
  • Sincronizarea partilor separate din programul nostru.

Scrierea si citirea de fisiere
  • Cum sa salvam date intre lansari separate de programare.

Librarie standard: fmt, log, strings, time, sort, http, math, regexp
  • Mecanismele built-in ale limbajului pentru a rezolva sarcinile de rutina.

Testing si benchmarking
  • Cum sa garantam stabilitatea codului prin facilitarea de unit tests si cum sa gasim cea mai eficienta solutie pentru o sarcina.

JSON encoding si decoding
  • Schimb de date cu programe scrise in alte limbaje.

Baze de date / PostgreSQL / MongoDB
  • Stocarea bazelor de date relationale.

Exemplu de aplicatie cu REST
  • O aplicatie backend full-fledged.

Pachet nesigur
  • Language extensions pentru efectuarea de functii nesigure.

Obiective

  • Cum folosim tipurile de date si syntactic constructs ale Go
  • Intelegerea modelului orientat pe obiect al limbajului si cum sa fie folosit pentru a dezvolta componentele programului
  • Intelegerea unor provocari care ar putea sa apara in dezvoltarea de concurrent program code si modalitati de a le aborda
  • Cum sa folosim Go built-in tools si sa dezvoltam cod conform cu asteptarile comunitatii de programatori
  • Cum sa rezolvam sarcini la nivel de production application

Public tinta

  • Programatori cu experienta de lucru in alte limbaje de programare
  • Architecti software, system designers, software testeri

Inregistreaza-te pentru urmatorul curs.
+
Inregistrarea la urmatorul curs va asigura prioritatea pe lista de inscriere. Veti fi contactat pentru confirmarea inscrierii in momentul in care urmatorul curs este programat.
Bucuresti 2375 RON
Cracovia 2375 RON
Wroclaw 2375 RON

Facturile pentru curs sunt emise in moneda locala. Toate preturile de mai sus pot fi supuse modificarilor in functie de locul unde se desfasoara trainingul si modul de livrare. Preturile pot fi supuse modificarilor si in perioada in care se programeaza. Pentru persoane fizice pretul este cel afisat. Pentru persoane juridice se adauga TVA.

Alte cursuri care te-ar putea interesa:

Inscrie-te!

Prenume*
Nume*
Companie
Adresa email*
Alege oras
Telefon
Observatii
Luxoft Warsaw - Warsaw Spire, plac Europejski 1, 00-844 Warszawa
Dimitrie Pompeiu nr 5-7 , building C, Et. 5, sect 2, Bucharest, 014459

Contact phone:

021 371 4858
Luxoft Poland Wroclaw - Silver Tower pl. Konstytucji 3-go Maja 3 50-048 Wroclaw
Aleja Generała Tadeusza Bora-Komorowskiego 25, Quattro Business Park Five, 31-476 Kraków, Poland

Contact phone:

+48 122110650
Success
Iti multumim.
Inregistrarea ta a fost trimisa.