Question

J'ai eu un examen de Brainbench récemment, a obtenu des hautes, mais il y avait quelques questions qui ont été difficiles pour moi. Peut-être qu'il est parce que l'anglais n'est pas ma langue maternelle ... L'une des questions est:

Laquelle des descriptions suivantes de type-sécurité?

  1. Construction de programmation utilisé pour assurer la sécurité des types de référence et de valeur dans le CLR
  2. La protection contre les fuites de mémoire à la suite d'un accès non géré interdisant
  3. La fonction spécifique CLR fournissant l'assurance que les types ne peuvent pas accéder à la mémoire en dehors de leur propre AppDomain
  4. Un mécanisme créé pour protéger les assemblées et leurs types par l'utilisation de clés nom fort
  5. Le concept traitant des assurances que les objets attribués sont toujours accessibles d'une manière compatible

Je pense qu'il est 1 ou 5, mais ils sonnent bizarre pour moi de toute façon: (

Que pensez-vous?

Était-ce utile?

La solution

En fait, je pense que ce choix est 5 parce que la sécurité de type n'a rien à voir avec la sécurité.

Autres conseils

Type de sécurité est la caractéristique d'un langage conçu pour faire bien sur [Robin Milner] [1] "célèbre slogan sur la programmation ML: programmes bien typés ne peut pas aller mal .

Le slogan a besoin d'un certain déballage avant qu'il puisse être bien compris, mais cela signifie essentiellement que les programmes ne peuvent pas échouer en raison d'une erreur de type d'exécution, à savoir lorsque les paramètres appliqués au constructeur ou une fonction ont des valeurs de type incompatible.

Considérons un langage qui permet à des nombres entiers, des fonctions entières en tant que première valeur de classe, abstraction de la fonction et l'application de fonction partielle, et qui définit les opérateurs arithmétiques habituels entiers sous forme de fonctions binaires. La propriété de sécurité de type est ce que le compilateur impose de veiller à ce que les deux arguments à l'opérateur d'addition sont des expressions qui réduisent à des entiers et non aux fonctions. Si un programme est bien typé, le compilateur peut émettre un objet exécutable pour elle. Dans le cas contraire, il signale l'erreur de programmation et avorte.

Selon le lien ci-dessous msdn, http://msdn.microsoft.com/en-us/library/hbzz1a9a.aspx

Code typées accède uniquement les emplacements de mémoire, il est autorisé à accéder. (Pour cette discussion, la sécurité de type se réfère spécifiquement à la sécurité du type de mémoire et ne doit pas être confondue avec la sécurité de type à un plus grand respect.) Par exemple, le code de type sécurisé ne peut pas lire les valeurs des champs privés d'un autre objet. Il accède types seulement bien définis, des moyens admissibles.

  

Choix 5   Le concept traitant des assurances que les objets attribués sont toujours accessible de manière compatible

Type-sécurité traite de veiller à ce que lorsque vous créez un Foo, vous ne pouvez pas le traiter comme un bar. Si vous ne savez pas quel type il est (ou non garantie), le code que vous écrivez simplement peut ne pas fonctionner comme prévu.

langues typées fera en sorte (à la compilation) que vous ne l'appelez pas des méthodes incompatibles sur un type, par exemple longueur () sur un type int. Les langues non typées sera le comprendre lors de l'exécution. Donc, le choix 5.

Comme d'autres ont dit, le choix 5 ...

En général - pour .NET, consultez le système de type commun (CTS) qui permet des choses et de sécurité de type interlangage.

Départ: http://en.wikipedia.org/wiki/Type_safety . ..

Il est l'option # 5. sécurité Type est une assurance, pas une chose concrète. Il est possible pour le code .NET pas être de type sûr ... dire dans le cas où un ensemble utilise un code dangereux pour effectuer des appels non gérés (PInvoke). Au cours de JIT, un processus est effectué qui permet de vérifier les types étant jitted sont, en effet, le type de sécurité. Je ne suis pas au courant des renseignements sur ce processus, mais si un type jitted passe, alors il est considerd de type sécurité vérifiable.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top