Browse by Tags
All Tags »
C# (RSS)
Gostaria de agradecer a quem esteve presente na minha sessão no TechDays 2010 e espero que tenha conseguido passar a mensagem das novidades da última versão da linguagem C# . Para quem não esteve na sessão (ou esteve e quiser rever o conteúdo), a apresentação
Read More...
A resolução dinâmica e argumentos com nome e opcionais melhoram largamente a experiência de interoperar com APIs COM como as Office Automation Primary Interop Assemblies (PIAs) . Mas, para aliviar ainda mais o desenvolvimento de interoperabilidade com
Read More...
A principal funcionalidade do C# 4.0 é a programação dinâmica. Não apenas em termos de tipos dinâmicos, mas, un sentido mais lato, a capacidade de falar com qualquer coisa que não seja staicamente tipada para ser um objecto .NET . Dynamic Language Runtime
Read More...
Tal como mencionei na minha última entrada , expor publicamente métodos com argumentos opcionais é uma má prática (é por isso que o C# resitiu a tê-los, até agora). Podem argumentar que o vosso método ou construtor tem demasiadas variações e ter mais
Read More...
Como parte do esforço de co-evolução do C# e do Visual Basic , o C# 4.0 introduz Argumentos com Nome e Opcionais . Primeiro clarifiquemos o que são argumentos e o que são parâmetros : Os parâmetros da definição de um método são as variáveis de entrada
Read More...
Na minha última entrada , percorri o que é a variância em .NET 4.0 e C# 4.0 de uma form algo teórica. Desta vez vou tentar ser mais terra a terra. Dados: class Base { } class Derived : Base { } Em que: Trace .Assert( typeof ( Base ).IsClass &&
Read More...
O C# 4.0 (e a .NET 4.0) introduziram covariância e contravariância em interfaces e delegates genericos. Mas afinal o que é a variância? Segundo a Wikipedia , em álgebra multilinear, covariância e contravariância descrevem como a descrição quantitativa
Read More...
A primeira versão do C# ( C# 1.0 ) foi, essencialmente, o desenvolvimento de uma linguagem de programação para código gerido ( managed code ) que apelasse, pricipalmente, a programadores de C++ e Java . Com a segunda versão ( C# 2.0 ) pretendeu-se colmatar
Read More...
Na minha última entrada apresentei o PredicateEqualityComparer e um método de extensão Distinct recebe um predicado e cria internamente um PredicateEqualityComparer para filtrar elementos. Usar o predicado melhora a legibilidade, concisão e expressividade
Read More...
Hoje estava a escrever um consulta LINQ e necessitava de seleccionar valores distintos baseado num determinado critério de comparação. Felizmente, o método Distinct do LINQ permite fornecer um comparador de igualdade , mas, infelizmente, muitas vezes
Read More...
Gosto de usar tanto o StyleCop como o CodeIt.Right para validar o meu código – o StyleCop porque é gratuito e o CodeIt.Right porque é bom. Enquanto que o StyleCop apenas providencia validação, o CodeIt.Righ providencia validação e correcção de violações.
Read More...
O C# 4.0 introduz um novo tipo: dynamic . dynamic é um tipo estático que contorna os mecanismos de verificação estática de tipos. Este novo tipo é muito útil para interoperar com: As novas linguagens da dynamic language runtime . HTML Document Object
Read More...
Estão abertas as inscrições para o TechDays 2010 . Share this post: email it! | bookmark it! | digg it! | reddit! | kick it! | live it!
Read More...
Hoje, o meu amigo Nuno estava a escrever algum código para obter as PropertyInfo s da implementação de uma interface por parte de classe. Dada este interface: public interface ISomeInterface { int IntProperty { get ; set ; } string StringProperty { get
Read More...
O Visual Studio usa a ferramenta Publicize para criar acessores públicos para membros e tipos privados de um determinado tipo. Mas quando se tenta definir o valor de um elemento de um array privado de elementos de um tipo privado, a situação complica-se.
Read More...