QCM : Framework .NET et bases du C# (19 questions)

Questions et réponses du QCM

1. Quelle fonction générale remplit le Framework .NET pour le développement d’applications Web et Windows ?

Une plate-forme qui unifie et simplifie le développement
Un environnement qui exécute le code sans unifier le développement
Un langage commun utilisé pour écrire les applications
Une version allégée destinée aux applications mobiles

Une plate-forme qui unifie et simplifie le développement

Explication

Le Framework .NET est une plate-forme informatique qui simplifie le développement en proposant une approche unifiée pour les applications Web et Windows. Le réduire à l’exécution du code, aux mobiles ou à un langage confond son rôle général avec d’autres notions.

2. Une équipe doit créer une application pour un Pocket PC doté de ressources limitées. Quelle version du Framework .NET convient à ce projet ?

Le Framework .NET complet
Le système d’exploitation Pocket PC
Le Compact Framework .NET
La Common Language Runtime

Le Compact Framework .NET

Explication

Le Compact Framework .NET est une version allégée conçue pour développer des applications mobiles sur Pocket PC et Smartphone. Le Framework complet n’est pas la version mobile allégée, Pocket PC désigne l’appareil ou son système, et la CLR est un environnement d’exécution.

3. Quel composant fournit un environnement d’exécution sécurisé et robuste, prenant en charge du code écrit dans plusieurs langages .NET ?

Le Common Type System (CTS)
La Common Language Runtime (CLR)
Le Common Language System (CLS)
Le Framework .NET

La Common Language Runtime (CLR)

Explication

La CLR est l’environnement d’exécution sécurisé et robuste qui prend en charge du code de plusieurs langages et facilite le développement, la gestion et le déploiement des applications. Le CTS définit les types, la CLS fixe un sous-ensemble commun aux langages, et le Framework .NET désigne la plate-forme.

4. Des classes écrites dans deux langages .NET doivent échanger des données en s’appuyant sur des types compris par le Runtime. Quel système définit ces types communs ?

Le Common Language System (CLS)
La Common Language Runtime (CLR)
Le Common Type System (CTS)
Le Framework .NET

Le Common Type System (CTS)

Explication

Le CTS définit les types de données compris par le Runtime .NET et utilisables par les applications, ce qui permet aux classes de langages différents de communiquer. La CLS est un sous-ensemble de la CTS, la CLR exécute le code et le Framework .NET est la plate-forme globale.

5. Un langage .NET prend en charge les types du sous-ensemble commun permettant l’interaction entre programmes de langages différents. À quelle notion ce sous-ensemble correspond-il ?

À la Common Language Runtime (CLR), sous-ensemble de la CTS
Au Common Type System (CTS), sous-ensemble de la CLS
Au Common Type System (CTS), sur-ensemble de la CLS
Au Common Language System (CLS), sous-ensemble de la CTS

Au Common Language System (CLS), sous-ensemble de la CTS

Explication

La CLS est le sous-ensemble de la CTS que chaque langage .NET est supposé prendre en charge afin de permettre l’interaction entre programmes de langages différents. Dire que la CTS est un sous-ensemble de la CLS inverse leur relation; la CTS est le sur-ensemble, tandis que la CLR est l’environnement d’exécution.

6. Sous quelle forme de langage de bas niveau les programmes .NET sont-ils compilés avant leur déploiement ?

En langage intermédiaire IL ou MSIL
En code natif propre à la plateforme
En langage source C#
En types communs de la CTS

En langage intermédiaire IL ou MSIL

Explication

Avant leur déploiement, les programmes .NET sont compilés en langage intermédiaire IL, également appelé MSIL. Le code natif est obtenu à l’exécution, tandis que le code source et les types CTS sont d’autres notions.

7. Un programme .NET distribué sous forme d’IL est lancé sur une machine. Quel composant transforme alors cet IL en code natif ?

L’éditeur de liens du compilateur
La bibliothèque de classes .NET
L’environnement d’exécution CLR
Le compilateur avant le déploiement

L’environnement d’exécution CLR

Explication

À l’exécution, le CLR compile le code IL en code natif. L’éditeur de liens et la bibliothèque de classes n’assurent pas cette étape, et la compilation native n’a pas lieu avant le déploiement.

8. Une équipe compare la distribution d’un programme C# à celle d’un programme C destiné à une plateforme précise. Quelle différence décrit correctement le cas du programme C# ?

Il est distribué en IL, puis converti en binaire à l’exécution
Il est distribué en code natif, puis recompilé en binaire à l’exécution
Il est distribué en code source, puis transformé en IL après son exécution
Il est distribué en binaire propre à la plateforme, puis converti en IL

Il est distribué en IL, puis converti en binaire à l’exécution

Explication

Le programme C# est distribué sous forme d’IL, que le CLR compile en code natif à l’exécution, contrairement à une compilation directe en binaire pour une plateforme. L’option parlant de code natif déjà distribué confond le résultat de l’exécution avec le format déployé.

9. Une équipe doit créer une application à interface graphique et une application exploitant ASP.NET à partir de types réutilisables. Quelle ressource du Framework .NET correspond à ce besoin ?

ADO.NET
WinForms
La bibliothèque de classes du Framework .NET
Visual Studio

La bibliothèque de classes du Framework .NET

Explication

La bibliothèque de classes .NET rassemble des types réutilisables pour développer des applications en ligne de commande, graphiques ou fondées sur ASP.NET. ADO.NET vise l’accès aux données, WinForms fournit des composants graphiques et Visual Studio est un environnement de développement.

10. Un développeur doit accéder, depuis un programme .NET, à des données relationnelles et XML. Quel ensemble de classes répond à ce besoin ?

WinForms
Visual Studio
La bibliothèque de classes du Framework .NET
ADO.NET

ADO.NET

Explication

ADO.NET expose aux programmes .NET des services d’accès aux données relationnelles, XML et d’application. La bibliothèque de classes est une collection plus générale, WinForms concerne l’interface graphique et Visual Studio est un IDE.

11. Pour construire une application dont les formulaires constituent les unités de base, quel module fournit des composants graphiques prédéfinis ?

WinForms
Visual Studio
ADO.NET
La bibliothèque de classes du Framework .NET

WinForms

Explication

WinForms est un ensemble de composants graphiques prédéfinis destiné aux applications organisées autour de formulaires. ADO.NET traite l’accès aux données, la bibliothèque de classes fournit des types réutilisables et Visual Studio est l’environnement de développement.

12. Dans Visual C# Express, où un développeur doit-il écrire et modifier le code de son programme ?

Dans la zone 3
Dans la zone 4
Dans la zone 1
Dans la zone 2

Dans la zone 2

Explication

La zone 2 est l’éditeur de code, tandis que la zone 1 présente les fichiers ouverts, la zone 3 l’explorateur de solutions et la zone 4 les propriétés de l’élément sélectionné.

13. Un développeur veut consulter les avertissements et les erreurs signalés par son application dans Visual C# Express. Quelle zone doit-il ouvrir ?

La zone 5
La zone 4
La zone 3
La zone 1

La zone 5

Explication

La zone 5 affiche les erreurs, les avertissements et les messages de l’application. La zone 4 contient les propriétés, la zone 3 l’explorateur de solutions et la zone 1 les fichiers ouverts.

14. Que déclare l’instruction `int age;` en C# ?

Une variable nommée age de type entier
Une variable nommée int de type age
Une variable nommée age de type chaîne de caractères
Une variable nommée age à laquelle la valeur zéro est affectée

Une variable nommée age de type entier

Explication

Une déclaration associe un nom à un type : ici, age est le nom et int indique un entier. L’instruction ne fournit pas de valeur, et int n’est pas une chaîne de caractères.

15. Un programme C# déclare `ageduvisiteur` puis utilise `ageDuVisiteur`. Ces deux noms désignent-ils la même variable ?

Non, car ageDuVisiteur est un nom de type
Oui, les deux noms désignent la même variable
Oui, mais la seconde variable reçoit automatiquement la valeur de la première
Non, ce sont deux variables distinctes

Non, ce sont deux variables distinctes

Explication

C# distingue les noms selon la casse : `ageduvisiteur` et `ageDuVisiteur` désignent donc deux variables différentes. Les majuscules ne rendent pas le nom invalide et n’entraînent aucune affectation automatique.

16. Une variable `score` vaut 12. Après l’exécution de `score = 18;`, quelle valeur contient-elle ?

12
6
18
30

18

Explication

L’opérateur `=` affecte la nouvelle valeur à la variable, qui contient donc 18. 30 traduit une addition, 12 conserve à tort l’ancienne valeur et 6 correspond à une soustraction.

17. Le programme affecte à `moyenne` le résultat de `(age1 + age2) / 2`, puis modifie `age2`. Que contient `moyenne` avant une nouvelle affectation ?

Le résultat calculé lors de son affectation initiale
La nouvelle valeur de `age2`
Le résultat recalculé avec la nouvelle valeur de `age2`
La moitié de la nouvelle valeur de `age2`

Le résultat calculé lors de son affectation initiale

Explication

Une variable conserve le résultat qui lui a été affecté : modifier `age2` ne recalcule pas automatiquement `moyenne`. Le recalcul automatique confond dépendance mathématique et affectation, tandis que les deux autres réponses attribuent à `moyenne` une valeur qui ne lui a pas été affectée.

18. Dans un programme C#, un test vérifie si le solde d’un compte est supérieur ou égal à zéro. Quand le code placé dans le bloc `if` s’exécute-t-il ?

Quand une branche `else` est présente
Quand le solde ne vérifie pas la condition
Quand le solde vérifie la condition
Quand le solde est modifié

Quand le solde vérifie la condition

Explication

L’instruction `if` exécute le code de son bloc lorsque la condition est vraie. L’échec de la condition relève d’une branche alternative telle que `else`, et la présence de cette branche ou la modification du solde ne détermine pas à elle seule l’exécution du bloc `if`.

19. Un programme doit afficher un message différent selon laquelle de nombreuses valeurs possibles d’une variable `typeClient` est présente. Quelle instruction simplifie ce traitement par cas ?

`while`
`else`
`switch`
`if`

`switch`

Explication

`switch` simplifie l’écriture lorsqu’une variable peut correspondre à plusieurs cas. Des tests `if` peuvent vérifier des conditions, `while` sert à répéter un traitement et `else` fournit une branche alternative.

Révisez avec les flashcards

Mémorisez les réponses avec 55 flashcards sur Framework .NET et bases du C#.

Qu’est-ce que le Framework .NET ?

Une plate-forme informatique qui unifie le développement d’applications Web et Windows.

À quoi sert le Compact Framework .NET ?

Au développement d’applications mobiles sur Pocket PC et Smartphone.

Quel environnement d’exécution est sécurisé et robuste pour le code .NET ?

La Common Language Runtime (CLR).

Voir les flashcards →

Approfondir avec la fiche

Consultez la fiche de révision complète sur Framework .NET et bases du C#.

Voir la fiche →

Cours similaires

Crée tes propres QCM

Importe ton cours et l'IA génère des QCM avec corrections en 30 secondes.

Générateur de QCM