sexta-feira, 21 de maio de 2010

Versões do Mono nas distros Linux mais conhecidas e suas limitações

O Ubuntu 10.04 Lucid Lynx LTS foi lançado com pacotes do Mono 2.4. O Mono 2.4 não suporta System.ServiceModel.Web.

O Debian 5.0.4 Lenny, a atual versão stable foi lançado com pacotes do Mono 1.9 que não suporta System.Windows.Forms, nem System.Threading.ReaderWriterLockSlim

quarta-feira, 19 de maio de 2010

O que é prevalência em programação?

Como salvar o estado de uma aplicação entre sessões? Existem várias formas de persistir seus dados. Você pode salvar os objetos em arquivo ou em banco de dados, por exemplo. Quando salvamos em arquivos temos que serializar os dados e decidir quando fazê-lo.

As bibliotecas de prevalência tratam disso para você. As mais famosas são:

terça-feira, 18 de maio de 2010

Quando não devo usar "var" no C#?

O palavra chave "var" facilita a vida, mas ela pode ser imprevisível às vezes. Olhe o código abaixo por exemplo:

var a = 2147483647;
var b = 2147483648;
var c = -2147483649;

As três variáveis acima são de tipos diferentes. A primeira é int, a segunda é uint e a terceira é um long.

 

segunda-feira, 17 de maio de 2010

Tornando o Windows ainda melhor

Eu costumava dizer que o Windows não sabia lidar com arquivos gigantes. Se for um arquivo de texto de mais de 100 MB qualquer aplicativo gráfico trava: Bloco de notas, Wordpad, Word, Notepad++, Notepad2, EditPad, you name it. Então eu usava as ferramentas básicas do Linux para tratar estes arquivos: wc, sed, grep, etc.

Mas recentemente descobri que estas ferramentas também estão disponíveis para Windows. Estão no pacote Core Utils da gnuwin32.

http://gnuwin32.sourceforge.net/packages/coreutils.htm