Programmation .Net - Indépendance financière

Comment fonctionnent les variables en C#/Visual Basic

Les variables sont très importantes dans les langages de programmation, mais qu’est-ce qu’une variable exactement? Techniquement, une variable est un espace modifiable réservé en mémoire

Les types

Premièrement, une variable a besoin d’un type. Pourquoi? Parce que l’ordinateur doit savoir quel type de valeur elle contiendra. Pensez par exemple à une boite ayant la forme d’une guitare, si nous essayons de mettre autre chose, une chaise par exemple, celle-ci de fera pas dans la boite en question. C’est un peu le même principe avec les variables.

Disons qu’une variable de type String (comme nous avons vu dans un tutoriel précédent) a la forme d’un carré et qu’une variable de type Integer (ou Int si vous préférez), a la forme d’un rond.

Integer = Nombres entiers positifs et négatifs, par exemple : -19 ou 2893 ou encore 829134
String = Chaine de plusieurs caractères un à la suite de l’autre, par exemple : “Bonjour je suis une chaine de caractères”

Variable shapes

Il est impossible de faire entrer un objet carré dans un objet rond, c’est la même chose avec les variables, vous devez mettre le bon contenu dans le bon contenant.

Ceci se fera en deux étapes :
1. Vous devez dicter à l’ordinateur ce que sera le type de contenant à reserver.
2. Vous devez lui dire ce que vous voulez mettre (la valeur) dans le contenant.

En pratique!

Voici ce que ça a l’air en code :

Visual Basic

Variables

C#

C# variable declaration and initialization.

Vous pouvez constater les deux étapes dans le code, mais qu’est-ce que “Dim” exactement? Pour l’instant disons simplement que c’est ce qui dira à votre ordinateur que vous aller commencer la déclaration de variables ou si vous préférez : Hey visual basic, je vais maintenant faire la déclaraction des variables suivie de leur type pour que tu puisses savoir quoi reserver comme espace en mémoire.

Le WhatIsGoingToOutput est simplement le nom de la variable, j’aurais pu lui donner n’importe quel nom. Par exemple: A, B, ou autre.

N’oubliez pas que tout ce qui commence avec un ‘ est un commentaire, c’est-à-dire que ce n’est pas pris en compte par Visual Basic du tout, ça sert seulement pour la compréhension humaine.

Avez-vous remarqué que le texte que nous avons assigné à la variable est le même que celui que nous souhaitons afficher dans la console? Il est possible de dire à la console que nous voulons qu’elle affiche le contenu de la variable. Voici comment c’est possible.

Vous pouvez modifier votre code pour :

Visual Basic

Module Program
    Sub Main()
        ' On demande un espace mémoire de type String (chaîne de caractères).
        Dim WhatIsGoingToOutput As String

        ' On met une valeur dans le contenant (variable).
        WhatIsGoingToOutput = "Hello all!"

        Console.WriteLine(WhatIsGoingToOutput)
        Console.ReadKey()
    End Sub
End Module

C#

using System;

namespace VariablesCSharp
{
    class Program
    {
        static void Main(string[] args)
        {
            // On demande un espace mémoire de type String (chaîne de caractères).
            string whatIsGoingToOutput;

            // On met une valeur dans le contenant (variable).
            whatIsGoingToOutput = "Hello all!";

            Console.WriteLine(whatIsGoingToOutput);
            Console.ReadKey();
        }
    }
}

Nous avons donc remplacé le contenu entre parenthèses de Console.WriteLine par la variable WhatIsGoingToOutput. Maintenant essayez de rouler le programme en cliquant sur Start.

Variables Console

Ça fonctionne!

Il y a plusieurs types de variables autre que String et Integer en Visual Basic (et C#). Microsoft possède déjà une page Web donnant ces précisions. Elle vous dira même la mémoire consommée et l’étendue de chaque type.

Ce sera donc généralement la même utilisation pour chaque type de base. Nous allons en essayer une dernière!

Visual Basic

Module Program
    Sub Main()
        ' On demande un espace mémoire de type String (chaîne de caractères).
        Dim WhatIsGoingToOutput As String
        Dim AnotherVariable As Integer

        ' On met une valeur dans le contenant (variable).
        WhatIsGoingToOutput = "Hello all!"
        AnotherVariable = 6

        Console.WriteLine(WhatIsGoingToOutput)
        Console.WriteLine(AnotherVariable)

        Console.ReadKey()
    End Sub
End Module

C#

using System;

namespace VariablesCSharp
{
    class Program
    {
        static void Main(string[] args)
        {
            // On demande un espace mémoire de type String (chaîne de caractères).
            string whatIsGoingToOutput;
            int anotherVariable;

            // On met une valeur dans le contenant (variable).
            whatIsGoingToOutput = "Hello all!";
            anotherVariable = 6;

            Console.WriteLine(whatIsGoingToOutput);
            Console.WriteLine(anotherVariable);
            Console.ReadKey();
        }
    }
}

Vous pouvez voir que j’ai suivi les mêmes étapes mais cette fois, avec le type Integer. Démarrer le programme en cliquant sur Start et voyez le résultat.

Variables Int

Interessant! Console.WriteLine() peut écrire dans la console des variables de type Integer et String, vous devriez garder cela en tête pour plus tard!

Une dernière chose à considérer est l’endroit où sont placées les variables en ce moment. Elles sont dans la Sub (Subroutine) Main() mais nous pouvons les placer à d’autres endroits aussi. Ces “endroits” se nomment globalement le scope d’une ou plusieurs variables. Qu’est-ce que cela veut dire en français? Simplement que dépendamment où la variable est placée dans le code, elle peut ou non être accessible par certains modules ou code. Pour l’instant nous allons en rester avec des variables seulement dans des Sub.

J’ai une question, est-ce que de mettre la ligne WhatIsGoingToOutput = “Hello all!” après la ligne Console.WriteLine(WhatIsGoingToOutput) fonctionnerait? La meilleure chose à faire serait de l’essayer mais dans ce cas, je vais vous donner l’explication. Ici, les instructions seront exécutées l’une à la suite de l’autre, donc si on n’assigne pas la variable avant de l’utiliser, Visual Basic nous donnera un avertissement et “Hello all!” ne sera pas affiché dans la console puisque la valeur de la variable WhatIsGoingToOutput était nulle au moment où Console.WriteLine a écrit dans la console.

Si vous désirez plus d’aide sur le sujet, vous pouvez écrire un commentaire auquel je pourrai répondre ou encore aller sur la page de déclaration des variables de MSDN à MSDN Website. Ce cours n’est pas destiné à remplacer l’aide existente de Microsoft, qui est d’ailleurs excellente à mon avis, mais plutôt à montrer une autre approche à l’apprentissage de la programmation.

YouTube

Visual Basic

C#

Next article Exercice et solution - Variables et console en Visual Basic
Previous article Premières lignes de code en Visual Basic/C#

Related posts

0 Comments

No Comments Yet!

You can be first to comment this post!

Leave a Comment

Your data will be safe! Your e-mail address will not be published. Also other data will not be shared with third person. Required fields marked as *