Formation Go

Notée : (23)

Découvrez Go / Golang, le langage moderne et performant créé par Google

Prix (Formation inter-entreprise)

1700€ HT / personne

Durée

3 jours

Dates

Nous pouvons organiser des sessions à d'autres dates ou dans d'autres villes (Bordeaux, Lille, Lyon, Marseille, Montpellier, Nantes, Nice, Paris, Strasbourg, Toulouse...)

La formation Go s'adresse à des développeur·se·s ayant déjà de l'expérience en développement backend.

Simple, performant, minimaliste, favorisant la productivité... Le langage de programmation Go (aussi appelé Golang) ne manque pas d'atouts. Ce n'est donc pas étonnant qu'il soit le moteur de technologies telles que Docker, Kubernetes, Terraform, et qu'il soit devenu, en dix courtes années, un langage incontournable pour le développement backend d'applications Web.

À l'issue de cette formation GO, les participant·e·s repartiront avec le code source développé lors de ces trois jours, ainsi que la solution du formateur (sur GitHub), et l'envie —on l'espère— d'utiliser Go pour leurs projets actuels et futurs !

Covid-19 : Nous nous adaptons dans ces moments difficiles. Nous avons mis en place des outils permettant l'organisation de formations à distance.

Les objectifs

  • Acquérir de bonnes bases en Go
  • Reconnaître les cas où Go est, ou non, adapté à vos besoins
  • Réaliser un mini-projet sur trois jours : app Web permettant de vérifier la validité et la disponibilité d'un nom d'utilisateur/utilisatrice sur plusieurs réseaux sociaux (Facebook, Twitter, Instagram, etc.)

Pré-requis

  • Une expérience d'au moins un an dans un autre langage de programmation (JavaScript, PHP, Python, Ruby, C++, Java, Haskell, etc.)
  • Des bases en anglais technique
  • Un ordinateur portable sur lequel est installé...
    • Go 1.14
    • Git
    • Visual Studio Code
  • Un compte (gratuit) GitHub, Bitbucket, Gitlab, ou équivalent

Le programme de la formation Go

Jour 1 : Fondamentaux

  • Préambule
    • Go en deux mots
    • Un peu d'histoire
    • De bonnes raisons d'apprendre Go... maintenant !
  • Eléments de syntaxe (1/2)
    • Variables
    • Types simples
    • Fonctions
    • Structures de contrôle (if, switch, for)
    • Structs
    • Pointeurs
  • Eléments de syntaxe (2/2)
    • Tableaux
    • Slices
    • Maps
  • Mini-projet : vérification de la validité d'un nom d'utilisateur/utilisatrice sur plusieurs réseaux sociaux
  • Packages
  • Tests unitaires

Jour 2 : Aspects objet, gestion d'erreurs

  • Mécanismes de découplage
    • Méthodes
    • Interfaces
    • Composition
    • Encapsulation
  • Mini-projet : réusinage du code
  • Mini-projet : écriture et exécution de tests unitaires
  • Gestion d'erreurs
    • Type error
    • Bonnes pratiques
  • Eléments de la bibliothèque standard utiles pour le Web
    • net/url
    • net/http
    • encoding/json
  • Mocking (tests)
  • Mini-projet : vérification de la disponibilité d'un nom d'utilisateur/utilisatrice sur plusieurs réseaux sociaux (de manière séquentielle)

Jour 3 : Concurrence

  • Gestion de dépendances (système de modules)
  • Mini-projet : utilisation de modules
  • Concurrence (1/2)
    • Concurrence != parallélisme
    • "Ne communiquez pas en partageant de la mémoire ; partagez la mémoire en communiquant !"
    • Goroutines
    • Wait groups
    • Channels
  • Mini-projet : vérification de la disponibilité d'un nom d'utilisateur/utilisatrice sur plusieurs réseaux sociaux (de manière concurrente)
  • Concurrence (2/2)
    • Patterns de concurrence
    • Fonctions atomiques
    • Exclusions mutuelles
  • Mini-projet : ajout de fonctionnalités analytics
  • Ressources d'apprentissage pour Go

Télécharger le programme

Le(s) formateur(s)

Julien Cretel

Julien Cretel

Julien est développeur et chercheur en sécurité indépendant. Domain-driven design, programmation fonctionnelle, technologies serverless, Burp Suite... Julien a plusieurs amours, mais Go tient une place particulière dans son coeur et est devenu son outil de choix pour le backend. Il donne des ateliers et des talks sur des sujets aussi divers que les tests de propriétés, Git, et Google Cloud Functions. Il a un blog principalement dédié à Go et la sécurité informatique disponible sur https://jub0bs.com.

Auparavant, il travaillait en tant qu'ingénieur informatique sur une architecture microservices chez Poppulo et, encore avant ça, il travaillait dans les énergies marines renouvelables et enseignait les maths appliquées à l'université de Cork, en Irlande.

Voir son profil détaillé

6 témoignages

Julien est passionné par ce qu'il fait. Il est toujours plus agréable d'avoir un professionnel ayant une forte expérience pour nous accompagner dans nos débuts d'un langage. Très bon contact humain.

Vincent FEBVRE
Cadoles

Une formation en petit comité qui favorise les échanges. A la fois technique et théorique. Avec une théorie appliquée techniquement. Un formateur (Julien) qui connaît son sujet et bon pédagogue.

Sébastien KRAFFE
Peugeot

Très bonne formation en petit comité, cela change des concurrents.

Didier STEGER
Lagardère Active Corporate

Super formation en petit comité, ça permet d'avoir du temps pour des questions et avancer à son rythme

Romain BAILLY

Bien qu'éloigné du développement depuis très longtemps, j'ai trouvé cette formation très bien faite et très intéressante.

Richard LANDY

Très bonne formation avec un bon formateur, le rythme est bon et les exercices concrets

Blaise CAVESTRI
LBC France

Besoin d'aide ?

Vous souhaitez discuter avec nous à propos de votre projet de formation ?
Vous voulez plus d'information sur une formation ou notre fonctionnement ?


Rappel Email

Nos forces

  • Des formations à taille humaine
  • Des formateurs passionnés
  • Des véritables workshop
Accéder au Manifeste

Nos clients

SAP
Société Générale
BNP Paribas
Alcatel
Meetic
Banque Postale

Nos formations en images

CasperJS
Angular
Machine Learning avec python
Machine Learning avec python

Formation Go

Notée : (23)

Découvrez Go / Golang, le langage moderne et performant créé par Google

La formation Go s'adresse à des développeur·se·s ayant déjà de l'expérience en développement backend.

Simple, performant, minimaliste, favorisant la productivité... Le langage de programmation Go (aussi appelé Golang) ne manque pas d'atouts. Ce n'est donc pas étonnant qu'il soit le moteur de technologies telles que Docker, Kubernetes, Terraform, et qu'il soit devenu, en dix courtes années, un langage incontournable pour le développement backend d'applications Web.

À l'issue de cette formation GO, les participant·e·s repartiront avec le code source développé lors de ces trois jours, ainsi que la solution du formateur (sur GitHub), et l'envie —on l'espère— d'utiliser Go pour leurs projets actuels et futurs !

Covid-19: Nous restons ouverts. Cette formation est disponible à distance.

Les objectifs

  • Acquérir de bonnes bases en Go
  • Reconnaître les cas où Go est, ou non, adapté à vos besoins
  • Réaliser un mini-projet sur trois jours : app Web permettant de vérifier la validité et la disponibilité d'un nom d'utilisateur/utilisatrice sur plusieurs réseaux sociaux (Facebook, Twitter, Instagram, etc.)

Pré-requis

  • Une expérience d'au moins un an dans un autre langage de programmation (JavaScript, PHP, Python, Ruby, C++, Java, Haskell, etc.)
  • Des bases en anglais technique
  • Un ordinateur portable sur lequel est installé...
    • Go 1.14
    • Git
    • Visual Studio Code
  • Un compte (gratuit) GitHub, Bitbucket, Gitlab, ou équivalent

Le programme de la formation Go

Jour 1 : Fondamentaux

  • Préambule
    • Go en deux mots
    • Un peu d'histoire
    • De bonnes raisons d'apprendre Go... maintenant !
  • Eléments de syntaxe (1/2)
    • Variables
    • Types simples
    • Fonctions
    • Structures de contrôle (if, switch, for)
    • Structs
    • Pointeurs
  • Eléments de syntaxe (2/2)
    • Tableaux
    • Slices
    • Maps
  • Mini-projet : vérification de la validité d'un nom d'utilisateur/utilisatrice sur plusieurs réseaux sociaux
  • Packages
  • Tests unitaires

Jour 2 : Aspects objet, gestion d'erreurs

  • Mécanismes de découplage
    • Méthodes
    • Interfaces
    • Composition
    • Encapsulation
  • Mini-projet : réusinage du code
  • Mini-projet : écriture et exécution de tests unitaires
  • Gestion d'erreurs
    • Type error
    • Bonnes pratiques
  • Eléments de la bibliothèque standard utiles pour le Web
    • net/url
    • net/http
    • encoding/json
  • Mocking (tests)
  • Mini-projet : vérification de la disponibilité d'un nom d'utilisateur/utilisatrice sur plusieurs réseaux sociaux (de manière séquentielle)

Jour 3 : Concurrence

  • Gestion de dépendances (système de modules)
  • Mini-projet : utilisation de modules
  • Concurrence (1/2)
    • Concurrence != parallélisme
    • "Ne communiquez pas en partageant de la mémoire ; partagez la mémoire en communiquant !"
    • Goroutines
    • Wait groups
    • Channels
  • Mini-projet : vérification de la disponibilité d'un nom d'utilisateur/utilisatrice sur plusieurs réseaux sociaux (de manière concurrente)
  • Concurrence (2/2)
    • Patterns de concurrence
    • Fonctions atomiques
    • Exclusions mutuelles
  • Mini-projet : ajout de fonctionnalités analytics
  • Ressources d'apprentissage pour Go

Télécharger le programme

Le(s) formateur(s)

Julien Cretel

Julien Cretel

Julien est développeur et chercheur en sécurité indépendant. Domain-driven design, programmation fonctionnelle, technologies serverless, Burp Suite... Julien a plusieurs amours, mais Go tient une place particulière dans son coeur et est devenu son outil de choix pour le backend. Il donne des ateliers et des talks sur des sujets aussi divers que les tests de propriétés, Git, et Google Cloud Functions. Il a un blog principalement dédié à Go et la sécurité informatique disponible sur https://jub0bs.com.

Auparavant, il travaillait en tant qu'ingénieur informatique sur une architecture microservices chez Poppulo et, encore avant ça, il travaillait dans les énergies marines renouvelables et enseignait les maths appliquées à l'université de Cork, en Irlande.

Voir son profil détaillé

Suivi de formation en option

A l'issue de la formation, nos formateurs peuvent aussi intervenir pour vous accompagner dans la mise en application des compétences acquises :

  • en répondant à vos questions lors de rendez-vous téléphoniques réguliers
  • en étant présents physiquement à l'amorce du projet
  • en réalisant un audit de vos pratiques quelques semaines/mois après la formation

Cette idée vous intéresse ? Faîtes-le nous savoir pour que nous trouvions la formule adaptée à votre situation.

6 témoignages

Julien est passionné par ce qu'il fait. Il est toujours plus agréable d'avoir un professionnel ayant une forte expérience pour nous accompagner dans nos débuts d'un langage. Très bon contact humain.

Vincent FEBVRE
Cadoles

Une formation en petit comité qui favorise les échanges. A la fois technique et théorique. Avec une théorie appliquée techniquement. Un formateur (Julien) qui connaît son sujet et bon pédagogue.

Sébastien KRAFFE
Peugeot

Très bonne formation en petit comité, cela change des concurrents.

Didier STEGER
Lagardère Active Corporate

Super formation en petit comité, ça permet d'avoir du temps pour des questions et avancer à son rythme

Romain BAILLY

Bien qu'éloigné du développement depuis très longtemps, j'ai trouvé cette formation très bien faite et très intéressante.

Richard LANDY

Très bonne formation avec un bon formateur, le rythme est bon et les exercices concrets

Blaise CAVESTRI
LBC France