Injeção de dependência minimalista

Simplificando seu caminho Se tudo o que você precisa é uma simples e eficiente forma de realizar Injeção de dependência e inversão de controle, abaixo um código minúsculo que pode te ajudar a começar seu dia mais facilmente.

[DESAFIO] ASCII Art

Esta semana resolvi propor um desafio de programação para alguns amigos do trabalho. A ideia é bem simples e consiste em desenvolver uma solução para que “dado qualquer caractere – inicialmente de A-Z – você exiba uma ASCII art do mesmo”. Ganha quem escrever a menor solução.

Y Combinator para C# – Recursão pero no mucho

Depois de mais de um ano sem escrever nada, tenho a nobre intensão de escrever ao menos dois ou três posts até o final do ano. Apenas para esquentar, vou começar com este onde gostaria de abordar uma técnica que nasceu para linguagens funcionais e que, cada vez mais, venho encontrando motivos e utilidade na …

Extension Methods e interfaces

Com certeza não colocaria a implementação de uma rotina de comparação de propriedades entre duas instâncias distintas de um dado objeto (que possam retornar um dicionário contento apenas o que existe de diferente entre elas) como sendo algo complexo, na verdade existem diversas maneiras de implementar esta solução. A título ilustrativo poderíamos elencar algumas idéias …

Anonymous type para todos!

É, como previsto, demorou um tempo entre meu último post e este. Neste post, abordarei uma situação que aconteceu comigo hoje e achei por bem compartilhar o caso e o desfecho. Fato é que acho que encontrei uma forma de passar Anonymous Types por parâmetros e consumi-los futuramente sem precisar fazer a gambiarra sugerida no …

Lista para leitura – Microsoft Research

Na tentativa de manter posts fresquinhos por aqui, segue uma pequena lista dos tópicos, textos e ferramentas que mais me chamaram a atenção nos últimos dias (todos parte da Microsoft Research): Kodu (parece bem divertido!) RADAR (tem que abrir no IE) Rex (pra quem não acha que expressão regular é coisa do diabo) Ripley (bem …

(To.Double() || !To.double()) { return “That’s the question”; }

Aconteceu hoje de um cliente me questionar sobre a existência de um eventual overhead gerado por boxing e unboxing de variáveis do tipo Double (big D) contra a utilização de double (small d). Após explicar a ele que isto não existe pois ambas as variáveis são armazenadas no stack, notei que havia ficado aquela pitada de desconfiança …

DSL usando M

Como todas as outras coisas da minha lista de “TODOs”, a linguagem M é uma das que mais tinha destaque e finalmente consegui um tempo para enfrentar o processo de aprendizado a fim de tirar o melhor proveito do que ela se propõe a resolver. Conceitualmente, a linguagem M se baseia em quatro pilares: Linguagem, …

Debugando no navegador – PTII

Continuando o artigo anterior sobre a minha vontade de fazer algo no estilo Phyton (quanto à depuração de erros), escrevi uma pequena prova de conceito utilizando a Dll do MyJScript¹ e, como esperado, já obtive um bom resultado no sentido de conseguir acessar e trabalhar as informações do contexto de forma dinâmica. Nos testes iniciais, …

F# Samples v0.3 / IntelliTrace

A coleção de exemplos para F# disponibilizado no dia 19 é sem dúvidas uma forma muito boa de iniciar o estudo sobre a linguagem. Foi por meio deste pacote que tive meu primeiro contato com um esquemão novo do VS2010 chamado IntelliTrace. Este lance é meio que uma bruxaria perto dos métodos disponíveis nas versões …