Perguntas com a marcação «c#»

C # é uma linguagem de programação orientada a objetos com multiparadigma, gerenciada e coletada por lixo, criada pela Microsoft em paralelo com a plataforma .NET

10
O que é um uso adequado de downcasting?
Downcasting significa conversão de uma classe base (ou interface) para uma subclasse ou folha. Um exemplo de downcast pode ser se você transmitir System.Objectpara outro tipo. O downcasting é impopular, talvez um cheiro de código: a doutrina orientada a objetos é preferir, por exemplo, definir e chamar métodos virtuais ou …



12
Um construtor que valida seus argumentos viola o SRP?
Estou tentando aderir ao Princípio da Responsabilidade Única (SRP), tanto quanto possível, e me acostumei a um certo padrão (para o SRP de métodos), confiando fortemente nos delegados. Gostaria de saber se essa abordagem é sólida ou se há algum problema grave. Por exemplo, para verificar a entrada de um …




11
Uma expressão booleana grande é mais legível que a mesma expressão dividida em métodos de predicado? [fechadas]
O que é mais fácil de entender, uma grande declaração booleana (bastante complexa) ou a mesma declaração dividida em métodos predicados (muito código extra para ler)? Opção 1, a grande expressão booleana: private static bool ContextMatchesProp(CurrentSearchContext context, TValToMatch propVal) { return propVal.PropertyId == context.Definition.Id && !repo.ParentId.HasValue || repo.ParentId == propVal.ParentId …
63 c#  readability 







9
Legibilidade versus capacidade de manutenção, caso especial de gravação de chamadas de função aninhadas
Meu estilo de codificação para chamadas de função aninhadas é o seguinte: var result_h1 = H1(b1); var result_h2 = H2(b2); var result_g1 = G1(result_h1, result_h2); var result_g2 = G2(c1); var a = F(result_g1, result_g2); Recentemente, mudei para um departamento em que o seguinte estilo de codificação é muito utilizado: var …

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.