Revista Info – Junho 2008
jun 15
Revistas, Tecnologia INFO Junho 2008, Revista INFO No Comments
Faça o Download da Revista INFO – Junho de 2008!

Link para download: CLIQUE AQUI
falando sobre desenvolvimento de sistemas
jun 15
Revistas, Tecnologia INFO Junho 2008, Revista INFO No Comments
Faça o Download da Revista INFO – Junho de 2008!

Link para download: CLIQUE AQUI
jun 13
JavaScript JQuery, MAC MENU, MENU No Comments
Olá galera ai vai um menu no estilo do MAC OS, funciona em muitos navegadores e é bem legal
Link para Download : CLIQUE AQUI
jun 13
CSS CSS, MENU CSS, MENU VISTA, VISTA No Comments
Menu com a barra de navegação igual à do Windows Vista em CSS:
![]()
Link para download: CLIQUE AQUI
jun 10
JavaScript Ajax, Jquey No Comments
JQUERY é uma biblioteca JAVASCRIPT, compativel com qualquer navegador. O site webdesignerwall fez tutoriais para Web Designers, para visualizar exemplos e ver o que o JQUERY é capaz de fazer CLIQUE AQUI
Download de todos os exemplos: CLIQUE AQUI
Vale apena dar uma olhada
Até mais
jun 03
.NET, C#, Dicas, Tecnologia adicionando metodos as classes do .net, class, Extensions, Methods, static, validação, validar No Comments
C# – Extensions Methods
Uma funcionalidade muito interessante no C#
Com ela podemos extender tipos existentes (string, int, objects, etc…), objetos da framework (TextBox, String, Datetime…) e até mesmo classes criadas (Clientes, Pagamentos..) com MÉTODOS ADICIONAIS.
Eles são métodos estáticos e podem ser invocados com a mesma sintaxe que os métodos de instância. Ou seja, é um método estático que só pode ser usado quando referenciado.
Mas oque realmente são?
Você certamente deve ter vários métodos de validação em uma classe ‘Helper’ ou até mesmo em cada objeto fazer isso manualmente (O importante é validar ^^)
Oque você usaria assim:
bool CEPIsValid = ValidatorHelper.IsValidCEP(“12312-544″);
ou: bool CEPIsValid = usuario.ValidarCep(usuario.CEP.ToString());
Seguinte, através do extension, você adicionaria estes métodos direto no tipo que deverá ser feita a validação. E ainda mais, Todos os objetos deste tipo receberá o método, ou seja, em qualquer classe, sem precisar implementar manualmente em cada uma.
Exemplo:
String meuCep = “12312-544″;
bool CEPIsValid = meuCep.ValidarCEP();
bool CEPIsValid = TextBox1.Text.ValidarCEP();
ou até mesmo:
bool CEPIsValid = “12312-544″.ValidarCEP();
Note que o método ValidarCEP foi chamado diretamente do objeto string, e todas as strings obtiveram a funcionalidade.
Perfeito!!! A solução das validações de Case!!!
E ainda melhor! Observem a facilidade da implementação ao seu sistema!
using System.Text.RegularExpressions;
namespace SeuNamespace
{
public static class Extensions
{
public static bool ValidarCEP(this string p)
{
return Regex.Replace(p, “[\\d]{5}-[\\d]{3}”, “”).Equals(“”);
}
public static string ImparOuPar(this int n)
{
return (n % 2 == 0) ? “Par” : “Impar”;
}
}
}
Lembrando, esta é uma das muitas funcionalidades do Extends Methods… Basta usar a Criatividade…
Os métodos têm de ser criados obrigatóriamente dentro de classes estáticas, e têm também eles de serem estáticos. O primeiro argumento do método define o tipo de dados a extender, como podem reparar no exemplo anterior, extendemos o tipo string. Reparem também que precisamos de utilizar a palavra reservada this como modificador do primeiro argumento do método. Os Extension Methods podem receber mais argumentos, estando apenas o primeiro reservado para o tipo de dados a extender.
A utilização é bastante simples, basta importar as extensões criadas, através do respectivo using e depois utilizar em qualquer objecto do tipo string.
Funcionalidade extremamente poderosa, que pode ser usada por exemplo para extender uma camada de acesso a dados gerada automaticamente, em que o código gerado não deve ser alterado porque pode ter de ser regerado.
Galera, espero ter ajudado neste post, é realmente muito util.
Assim que souber de noticias como esta passo aqui para compartilhar.
(Agradecimentos ao meu professor Valter por ter me comunicado sobre. Daí que resolvi pesquisar)
Obrigado galera!
Abraços!