Comparação de performance entre LINQ, ADO.NET e C# tradicional

Hoje encontrei um interessante artigo no CodeProject onde o autor faz alguns testes comparando a performance do LINQ com a do ADO para interações com base de dados e com arquivos XML. no artigo ele também faz uma comparação de performance entre o LINQ, o C# tradicional, e o C# 3.0 trabalhando com Arrays.

Vale muito a pena a leitura, pois o autor compara as tecnologias em diversas situações diferentes, explica como claramente como o teste foi realizado e ainda disponibiliza os arquivos fontes para download.

Link para o artigo: http://www.codeproject.com/KB/linq/performance_comparisons.aspx

Comments

Persistent cookie X Session cookie

Ontem me questionaram a diferença entre um session cookie e um cookie convencional. Eu não soube responder e isso me deixou mto incomodado, uma vez que eu defendo que um desenvolvedor não pode se limitar a saber apenas a linguagem de programação que ele utiliza, o desenvolvedor tem que conhecer o máximo possível que estiver envolvido com sua área.

Por exemplo: Eu desenvolvo em asp.net com C#, mas eu tenho que ter conhecimentos de OOP, Webstandards, CSS, XML, HTML (hand-code), Linguagens SQL (T-SQL e/ou PL-SQL), UML, conhecer como funcionam os principais protocolos da web (HTTP, FTP, SMTP, etc…). Isso aí tudo não é mais do que minha pbrigação conhecer, mas se eu quiser ir alem ainda devo conhecer outras linguagens, outras plataformas, metodologias, boas praticas e por ai vai…

Mas, de qualquer forma o ponto inicial para adiquirir esse conhecimento é saber (e querer) procurar informações. Na primeira busca do Google eu encontrei uma explicação bem clara entre a diferença do Persistent cookie para o Session cookie:

Persistent cookie
Also called a permanent cookie, or a stored cookie, a cookie that is stored on a user’s hard drive until it expires (persistent cookies are set with expiration dates) or until the user deletes the cookie. Persistent cookies are used to collect identifying information about the user, such as Web surfing behavior or user preferences for a specific Web site.
link: http://www.webopedia.com/TERM/P/persistent_cookie.html

Session cookie
Also called a transient cookie, a cookie that is erased when the user closes the Web browser. The session cookie is stored in temporary memory and is not retained after the browser is closed. Session cookies do not collect information from the user’s computer. They typically will store information in the form of a session identification that does not personally identify the user.
link: http://www.webopedia.com/TERM/s/session_cookie.htm

Comments

Top Ten of Programming Advice NOT to follow

Muitas sugestões que conhecemos mas muitas vezes acabamos não usando.

http://www.chrylers.com/top-ten-of-programming-advice-to-not-follow

Comments

Blog vizinho

Passadinha rápida só pra indicar o blog do meu amigo Hugo Santos, resolvi postar por aqui, pq o cara tem falado mto de Java, e dentre os blogs que eu participo esse é o q mais se aproxima. =)

Passem lá no blog dele, e assinem o RSS.

Comments

Cursos grátis de .NET no Senac

Microsoft e Centro Universitário Senac abrem inscrições para o programa de formação de profissionais na plataforma .Net

Saiba mais

Comments

Google disponibiliza suas melhorias internas do MySQL

O Google disponibilizou aos desenvolvedores do MySQL e à comunidade em geral as alterações de código desenvolvidas internamente para uso nos data centers do gigante das buscas na Internet. As mudanças incluem questões relacionadas a alta disponibilidade, replicação e desempenho.

Via BR-Linux

Comments

Date Format with Culture Info

 Essa semana tive problemas com comparação de datas em um ambiente multi cultura (multi idioma).

O contexto era o seguinte:

O usuário poderia usar o sistema em várias culturas, dentre elas inglês, português e italiano.

Em inglês e português a formatação de datas funcionava normalmente, porém em italiano era adotado outro formato.

Consegui resolver o problema usando a sobrecarga do ToString(IFormatProvider provider)

Um exemplo do problema seguido da solução clicando na imagem abaixo.Date Format with Culture Info

Os arquivos do exemplo podem ser baixados aqui.

Comments

Shortcut Keys do Visual Studio 2005

O Visual Studio 2005 é sem duvida alguma a melhor IDE de programação já criada, ela une em um unico software:

  • IDE de programação em inumeras linguagens
  • O Intellisense mais eficiente que eu já vi
  • Ambiente de desenvolvimento SQL
  • Controle de versão
  • Um inacreditável sistema de debug
  • Ambiente para desenvolvimento de diagramas UML
  • Um help muito eficiente
  • E várias outras vantagens

Mas o motivo deste post é compartilhar um link muito útil que eu recebi algumas semanas atrás: Visual C# 2005 Default Shortcut Keys, uma enorme lista de teclas de atalho do Visual Studio =)

“real men dont click”

Comments

Upload de Arquivos em ASP.NET 2.0

Upload de Arquivos em ASP.NET 2.0

Como muitos já devem ter percebido, o framework 2.0 traz ainda mais facilidades para o desenvolvedor, deixando tarefas rotineiras menos trabalhosas.

Para começarmos criaremos um projeto WEB no Visual Studio 2005 (ou mesmo no Visual Web Developer).

Criando novo projeto Web no Visual Studio 2005

Agora iremos definir o tipo de projeto, a pasta e a linguagem conforme mostra a figura a seguir.

Criando novo projeto Web no Visual Studio 2005

Feito isso, o Visual Studio automaticamente cria uma página Default.aspx com os componentes mínimos para a aplicação.Agora vamos inserir os controles necessários para realizar o upload:

  • FileUpload
  • Button
  • Label

Insira os elementos no webform de modo que obtenha o seguinte aspx:

Modo Design:

Web Form - Modo Degign

Modo Source:

Web Form - Modo Source

Com o Visual Studio em modo design de um duplo click sobre o botão salvar. O Visual Studio irá apresentar o Classe do seu web form, já criando o método que será disparado quando o usuário clicar sobre o botão salvar.

Método Salvar

É aqui que faremos a codificação necessária para o upload do arquivo, conforme a imagem a seguir:

Código para upload de arquivos

Entendendo o código:

Com a clausula if (FileUpload1.HasFile) verificamos se foi enviado algum arquivo. Caso esta clausula seja contemplada o arquivo é salvo através do método FileUpload1.SaveAs(”C:\\temp\\” + FileUpload1.FileName); e é exibida uma mensagem ao usuário informando o nome, tamanho e tipo do arquivo. Caso contrário, será exibida uma mensagem informando que nenhum arquivo foi selecionado.

Com o uso dos elementos try e catch podemos capturar qualquer erro que ocorra durante a operação. e caso ocorra algum erro ele é exibido ao usuário (lblResultado.Text = “ERRO: ” + ex.Message.ToString();)

Um erro comum em aplicações com upload é a falta de permissão de escrita na pasta onde será gravado o arquivo, verifique se a pasta que pretende fazer o upload possui permissão de escrita.

Artigo de minha autoria, publicado tambem em no devmedia

Comments

void Main();

Meu novo projeto: /Code.

O blog surge pelo simples fato de eu ter tido vontade de compartilhar alguns códigos e macetes que acabo esbarrando por ai. Alêm disso alguns dias atrás fui convidado a escrever alguns artigos sobre C# e ASP.NET para o site devmedia, então resolvi usar esse espaço e refletir os artigos que forem enviados para lá e ainda criar outros posts que eu ache relevante a este blog.

Espero que tenham serventia para muitos colegas. =)

Comments