Fala ai galera, tudo certo?
Por vezes dou uma olhada em códigos antigos da galera, ou faço algum review de código fresquinho; e algumas vezes encontramos algumas coisas que podem ser melhoradas ou refatoradas, né?
A ideia aqui é mostrar os casos da vida real, que encontro na empresa onde trabalho e/ou em consultorias, expô-los aqui e mostrar uma maneira melhor de se fazer. E claro, sempre há alguma maneira melhor de se fazer alguma coisa, então se vocês tiverem uma solução melhor, mandem pull requests no repositório e comentem aqui no post, pode ser?
Caso do String Builder
Hoje me deparei com o seguinte código (não exatamente assim, mas no mesmo sentido):
var sb1 = new StringBuilder(); | |
sb1.Append("PRIMEIRA LINHA" + Environment.NewLine); | |
sb1.Append("SEGUNDA LINHA"); | |
var x = sb1.ToString(); | |
Console.WriteLine(x); |
Reparem, que na linha 3, a pessoa que escreveu o código, precisava garantir que o texto quebrasse uma linha, certo? E ela concatenou com o texto a string “Enviroment.NewLine” que no final das contas vai concatenar um “\r\n” e quebrar a linha.
O resultado é parecido com isso aqui:
Ok, o resultado foi o esperado! Só alegria 😀
Mas agora, vou mostrar um método da classe StringBuilder chamado AppendLine que faz a mesma coisa, porém sem a necessidade do uso da concatenação da quebra de linha. vejam:
var sb2 = new StringBuilder(); | |
sb2.AppendLine("PRIMEIRA LINHA"); | |
sb2.Append("SEGUNDA LINHA"); | |
var y = sb2.ToString(); | |
Console.WriteLine(y); |
E o resultado é o mesmo:
Belezura galera?
Os códigos utilizados estão disponíveis no GitHub: https://github.com/vmussak/CasosDaVidaReal
Por hoje é só isso, qualquer dúvida ou sugestão, estou à disposição! Até mais 😀