2.5 - Find, execute and create types at runtime by using reflection (Thought experiment)

Description

70-483 C# Flashcards on 2.5 - Find, execute and create types at runtime by using reflection (Thought experiment), created by Thiago Russo on 03/05/2017.
Thiago Russo
Flashcards by Thiago Russo, updated more than 1 year ago
Thiago Russo
Created by Thiago Russo over 7 years ago
1
0

Resource summary

Question Answer
Vc está criando o seu próprio ORM otimizado. Vc permite q o usuário faça mapeamentos de tabela "uma pra um" no BD. Vc tb pode usar atributos especiais por razões de segurança. Ex: um tipo pode ser decorado com uma AuthorizeAttribute para assegurar que apenas usuários específicos podem acessar a uma determinada tabela. Vc usa um monte de reflection em seu aplicativo e vc começar a ver alguns problemas de desempenho. Vc tb está pensando em um gerador que irá criar tipos q são mapeados exatamente para um banco de dados existente. 1. Por que vc usa um atributo em vez de herdar a partir de uma interface? N seria mais fácil do q a adição de um conceito totalmente novo para C#? 1. Embora herança de interface descreva uma relação "é-um-tipo de" , mas vc n pode dizer q o seu tipo é "uma espécie de AuthorizedObject." Em vez disso, vc usa atributos para dizer algo sobre outro tipo, razão pela qual C# contém metadados. Herança n deve ser usada para decorar um tipo com determinadas informações.
2. O que você pode fazer sobre os problemas de desempenho com o uso de reflection? 2. Reflection pode ser um processo muito lento. Vc pode substituir reflection por árvores de expressão. Qdo vc está mapeando dados para um tipo personalizado, vc pode construir uma árvore de expressão (e deixar no cache). A árvore de expressão pode ser compilado para código nativo. Será muito mais rápido do que a reflexão.
3. Que técnica você usaria para criar o seu gerador? 3. Para gerar o código, vcc pode usar o CodeDOM. A CompilationUnit criado pelo CodeDOM pode gerar um arquivo de código fonte.
Show full summary Hide full summary

Similar

Porova teórica C# mod l
Cursos Professor Jonatã
Linguagem C#
Alex Araujo Furado
Prova teorica C# mo ll
Cursos Professor Jonatã
Entity framework - code first
José Fernandes
Flashcard Módulo 1 - XAMARIN LATINO AMERICA
Marcone Barbosa
Entity framework
José Fernandes
C# and ASP.NET
Kalebi Fiorentini
Linguagens de programação
Rodrigo Barbosa7452
Conceitos do ASP.NET CORE (Incompleto)
José Fernandes Rezende Neto
Dates and times .NET
Felipe Couto Viola
Fluxo Game UC 8
Lucas Coluzzo