C #, J # et VB.net est-il possible d'écrire une classe dans chacun et de faire interagir ses variables dans une application?
Question
On m'a posé cette question dans une interview apprécierait vos réponses.
Cordialement; Mohammad Mohsin
La solution
On ne sait pas exactement ce que l'intervieweur original signifiait - mais s'il demandait s'il est possible de combiner code dans .net écrit en C #, j # et vb.net - la réponse est
Tant que le code écrit dans chacun est CLS conforme - Vous devriez pouvoir se référer aux types et aux propriétés déclarées quelle que soit la langue. La neutralité de la langue est l'un des principes de conception de base de .NET.
Pour répondre à votre question des commentaires ... Lorsque vous compilez le code I n'importe quelle langue .NET, il est compilé dans une représentation commune intermédiaire qui préserve les informations de métadonnées et de type. Le temps d'exécution .NET est donc capable de charger et interopérer le code qui aurait pu être écrit dans différentes langues .NET. Cette flexibilité est rendue possible par plusieurs fonctionnalités de .NET, y compris le système de type commun, le CLR et le MSIL.
Autres conseils
Oui, ces langues compilent toutes à une langue intermédiaire commune et toutes gérées dans le cadre géré.
Si vous avez écrit une classe dans chaque langue (vous auriez un projet de bibliothèque de classe pour chacun), vous pouvez utiliser ces classes ensemble dans n'importe quel projet à l'aide d'une langue ciblant le temps d'exécution .NET.
Cela dépend de ce que vous voulez dire.Toutes les membres du public sur une classe sont accessibles, peu importe la langue de la classe. Ils auraient besoin d'être compilés dans des assemblées séparées.