2.3 - Enforce Encapsulation (Thought experiment)

Description

70-483 C# Flashcards on 2.3 - Enforce Encapsulation (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 about 7 years ago
0
0

Resource summary

Question Answer
Vc tá trabalhando c/ uma equipe p/ criar uma nova app p/ acompanhamento do inventário d um laboratório de química. Seu app consiste em lotes de tipos que todos participam em certificar-se que os itens n são usados por pessoal n qualificado, produtos químicos perigosos n são usados na mesma sala, e os itens são pedidos/comprados tão logo o estoque esteja baixo. Hj todos os tipos no sistema têm diferentes modificadores de acesso. Alguns tipos são completamente imutáveis; outros expõe todos os seus dados. Vc está discutindo os problemas atuais com um colega. Ele argumenta q todos os tipos e todos os membros de tipo devem ser públicos. 1. Explique aos seus colegas pq fazer todos os membros públicos não é a solução. 1. Fazer cada tipo público irá remover todos os benefícios q o encapsulamento oferece. Encapsular dados significa que a representação interna de um objeto está escondido do mundo exterior. Isso impede q usuários de seu tipo a partir da criação de um estado inválido ou inconsistente, e tb esconde a complexidade. Isso faz com que seu sistema mais robusto, pq vc pode mudar os detalhes de implementação, enquanto n mudar a interface pública de seu tipo.
2. Dê um exemplo de como uma propriedade pode ajudar com encapsulamento de dados ao mesmo tempo melhorar a usabilidade. 2. Pq a propriedade oferece uma forma controlada de acessar um campo, vc pode executar código extra tanto na leitura e alterar o valor. Vc pode, por ex, certifique-se de q somente pessoas autorizadas podem alterar os valores específicos q determinam quem pode usar um produto químico específico.
3. Como pode interfaces de ser usado para melhorar o design? 3. Pq um tipo pode implementar várias interfaces, vc pode usar uma interface para expor apenas um subconjunto dos membros de tipo. Usando implementação de interface explícita, v tb pode ocultar determinados membros que devem ser visíveis apenas sob certas circunstâncias. Dessa forma, vc pode melhorar a interface pública de um tipo, expondo menos membros em um determinado momento.
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