Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ AWS Certified Developer - Associate
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Personal Development Mindfulness Meditation Personal Transformation Life Purpose Emotional Intelligence Neuroscience
Web Development JavaScript React CSS Angular PHP WordPress Node.Js Python
Google Flutter Android Development iOS Development Swift React Native Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Retargeting
SQL Microsoft Power BI Tableau Business Analysis Business Intelligence MySQL Data Analysis Data Modeling Big Data
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Online Business Business Plan Startup Freelancing Blogging Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee
Development Programming Languages Go Programming Language

Le langage Go | Formation complète

Les fondamentaux et notions avancées du langage Go (Golang)
Bestseller
Rating: 4.7 out of 54.7 (437 ratings)
1,789 students
Created by Robin Penea
Last updated 11/2020
French
30-Day Money-Back Guarantee

What you'll learn

  • Développer en utilisant le langage Go
  • Construire des applications performantes et simples à maintenir
  • Paralléliser vos programmes pour profiter de toute la puissance de votre CPU
Curated for the Udemy for Business collection

Course content

16 sections • 177 lectures • 17h 49m total length

  • Preview05:30

  • Windows : Installation de Go
    04:34
  • Windows : Installation de VS Code
    02:21
  • Linux : Installation de Go
    07:15
  • Linux : Installation de VS Code
    03:25
  • Configurer VSCode
    03:35

  • Introduction
    01:33
  • Le premier programme : Hello World
    04:06
  • Exécuter Hello World
    03:42
  • Les packages
    05:01
  • Les imports
    07:05
  • Organisation des fichiers
    04:11
  • Tester rapidement avec Go Playground
    02:16
  • Explorer la documentation
    04:12

  • Déclaration de variables
    11:01
  • Visibilité des variables
    04:56
  • Quiz : les variables
    3 questions
  • Contrôle de flux : if / else
    16:09
  • Contrôle de flux : switch
    05:50
  • Conversion de type
    06:05
  • Les fonctions
    10:28
  • Retour de fonction multiple
    06:04
  • Quiz : les fonctions
    3 questions
  • Array
    06:24
  • Slices
    13:17
  • Quiz : Array et Slices
    4 questions
  • Contrôle de flux : boucle for
    08:01
  • Preview04:33
  • Gestion d'erreur en Go
    05:05
  • Gestion d'erreur dans un fichier
    06:42
  • defer
    06:24
  • Quiz - for, err, defer
    3 questions
  • Exercice : Goplace - Find / Replace de fichiers
    03:55
  • Corrigé : Goplace - Find / Replace de fichiers 1/3
    07:51
  • Corrigé : Goplace - Find / Replace de fichiers 2/3
    09:47
  • Corrigé : Goplace - Find / Replace de fichiers 3/3
    02:33
  • Sources Projet Goplace
    00:01

  • Définition d'un Struct
    03:56
  • Déclaration d'un Struct
    09:59
  • Embedded Struct
    07:24
  • Quiz - struct
    5 questions
  • Struct et Receiver function
    08:52
  • Pointeurs en Go
    14:10
  • Pointer Receiver
    10:37
  • Quiz - Pointeur et Receiver
    6 questions

  • Preview03:43
  • Définition d'un Game
    08:24
  • Récupérer la saise utilisateur
    06:23
  • Dessiner l'état de la partie
    11:09
  • Deviner une lettre
    08:55
  • Exercice : se tromper de lettre
    00:53
  • Corrigé : se tromper de lettre
    03:33
  • Charger un dictionnaire de mots
    08:21
  • Tests en Go
    03:13
  • Tester le jeu du pendu
    10:00
  • Exercice : tester les états de jeu
    00:35
  • Corrigé : tester les états de jeu
    03:33
  • Aller plus loin
    01:11
  • Sources Projet Hangman
    00:01

  • Définition d'un Map
    03:21
  • Modifier une Map
    06:23
  • Parcourir une Map
    02:29
  • Struct & Map
    05:29
  • Quiz : maps
    5 questions

  • Structure du projet Dictionnaire
    03:16
  • Ajouter une dépendance externe : Badger
    05:32
  • Définition des Structs
    03:55
  • Création et fermeture de la BDD
    04:21
  • Ajouter un mot dans le dictionaire
    07:14
  • Lire un mot dans le dictionnaire
    06:42
  • Lister les mots du dictionnaire
    08:57
  • Exercice : Supprimer un mot du dictionnaire
    00:44
  • Corrigé : Supprimer un mot du dictionnaire
    01:05
  • Gérer des arguments CLI
    01:37
  • Action de liste
    04:56
  • Action d'ajout d'un mot
    03:52
  • Exercice : action de définition et suppression
    00:29
  • Corrigé : action de définition et suppression
    02:40
  • Aller plus loin
    00:57
  • Sources Projet Dictionary
    00:01

  • Interêt d'un interface
    03:04
  • Définition d'une Interface
    09:26
  • Règles d'une interface
    02:41
  • Quiz : interfaces
    3 questions
  • Comportement en fonction du type
    11:08
  • Empty interface
    10:39
  • Quiz : manipuler les interfaces
    4 questions
  • Reader et Writer
    05:39
  • Reader de fichier et de requête HTTP
    04:31

  • Preview04:15
  • Définir les données
    06:48
  • Ajouter des tests pour valider un Certificat
    10:40
  • Exercice : valider et tester le nom
    00:40
  • Corrigé : valider et tester le nom
    03:05
  • Parser la date du certificat
    04:11
  • Découvrir la bibliothèque gopdf
    10:56
  • Faire la mise en page du header PDF
    09:14
  • Faire la mise en page du body PDF
    03:22
  • Exercice : Faire la mise en page du footer PDF
    01:04
  • Corrigé : Faire la mise en page du footer PDF
    02:36
  • Découvrir les templates HTML en Go
    06:17
  • Sauvegarder le contenu HTML en fichier
    04:24
  • Gérer le type PDF/HTML en CLI
    03:21
  • Parser du CSV en Go
    06:04
  • Exercice : Gérer le paramètre fichier CSV en CLI
    00:35
  • Corrigé : Gérer le paramètre fichier CSV en CLI
    03:29
  • Aller plus loin
    01:26
  • Sources Projet gencert
    00:01

Requirements

  • Un ordinateur sur Windows / macOS / Linux
  • Quelques bases de programmation conseillées, mais pas obligatoire

Description

Go est un langage open-source créé par Google. Sa popularité est en explosion, il est maintenant dans le top 20 des langages les plus populaires du classement TIOBE. De plus, Go est encore jeune, c’est le bon moment pour vous y mettre !

Ce cours s’adresse autant aux débutants en programmation qu’à ceux qui ont déjà une expérience dans un autre langage (Java, C#, Python ou Ruby). A la fin du cours, vous serez capable de réaliser des projets Go complets.

Go est un langage à la fois abordable et puissant. Avec lui, vous pourrez aussi bien faire des outils simples (traitement de fichiers, compression zip, etc. ) que des applications web performantes (génération de miniatures, API REST, etc).

Qui utilise Go ?

Go est né en 2009, et en moins de 10 ans a déjà conquis le monde. Grâce à son accent sur la performance et la facilité de développement, on le trouve chez de grands noms comme :

  • Google (of course !)

  • Netflix

  • GitHub

  • Uber

  • Molotov TV

  • LeBonCoin

Structure du cours

Grâce aux quizz et aux exercices, vous serez capable de maîtriser toutes les spécificités de Go. Voici quelques exemples de projets que nous ferons ensemble :

  • Un outils de remplacement de mots dans des fichiers ;

  • Le jeu du pendu en console incluant des tests unitaires pour vérifier la logique de jeu ;

  • Un dictionnaire stockant ses définitions en base de données ;

  • Un générateur de certificats de réussite qui produit des PDFs et du HTML.

  • Un logiciel de filtre massif d’images, qui converti en noir et blanc ou applique un flou tout en divisant par 4 le temps de traitement grâce aux Goroutines ;

  • Un serveur web proposant une API HTTP Rest pour un catalogue de film avec authentification JWT

Pour réaliser ces applications, nous allons aborder tous les aspects importants du langage :

  • La syntaxe de base du Go, déclaration des variables, contrôles de flux (if, for, etc.) ;

  • Les différences de Go avec d’autres langages (Java, Python, etc.) ;

  • L’organisation du code en package ;

  • L’utilisation de bibliothèques externes ;

  • Les Goroutines et les Channels pour paralléliser vos traitements ;

  • Les requêtes HTTP GET / POST avec du contenu JSON ;

  • Le routing pour créer un serveur web performant ;

  • Les interactions base de données en SQL ;

  • La sécurisation d'API avec JWT.

Je compte ajouter encore beaucoup de contenu dans ce cours, attendez-vous à recevoir des mise à jour régulières. Rejoignez moi et maitrisez le Go pour répondre à la demande croissante sur cette technologie !


Who this course is for:

  • Débutant en programmation qui veut poser des bases solides
  • Développeur Web (PHP, Ruby, Python, Java...) qui veut découvrir un nouveau langage backend
  • Passionné de scripting et tooling (Python / Bash) qui veut ajouter une nouvelle corde à son arc

Instructor

Robin Penea
Fondateur de Gryt & Ingénieur Software
Robin Penea
  • 4.6 Instructor Rating
  • 2,612 Reviews
  • 9,691 Students
  • 6 Courses

Salut ! 

Je suis ingénieur en développement logiciel depuis 10 ans et ai commencé à bricoler des applications Android (avec la version 1.6 Donut !) pendant mes études avant de travailler dessus professionnellement.

J'ai passé plusieurs années sur l'OS Android en explorant tous les aspects de cet incroyable système d'exploitation. J'aime autant trifouiller les couches basses du système que de développer des apps avec les dernière technos (Kotlin / RxJava / MVVM, etc...).

Etant très curieux, j'aime varier les sujets et suis également passionné par d'autres technos avec lesquelles je travaille aussi, comme le Qt / C++ (avec la publication fin 2016 d'un livre technique, Mastering Qt 5), le développement web (Python / Go) ou encore l'informatique embarquée (Raspberry Pi / Arduino).

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.