Bruno Salomão on May 27th, 2009

Desde o começo da faculdade que fazemos diversos exercícios utilizando a sequência de Fibonacci, pra quem não sabe, Fibonacci era um matemático Italiano que ficou conhecido pela descoberta da sequência de Fibonacci e pelo seu papel na introdução dos algarismos árabes na Europa.

Definição da sequência segundo o WikiPedia:
A sequência de Fibonacci consiste em uma sequência de números, tais que, definindo os dois primeiros números da sequência como sendo 0 e 1, os números seguintes são obtidos através da soma dos seus dois antecessores. Portanto, os números são: 0,1,1,2,3,5,8,13,21,34,55,89,144,233

Agora se você faz ou pretende fazer faculdade de programação, sistemas ou algo relacionado, certamente terá que desenvolver algoritimos com essa sequência, no meu caso utilizamos o pseudo-código.

Segue um exemplo que fiz juntamente com Lucas Muniz

Procedimento calculaFibonacci(inteiro v[ ], inteiro N)
INICIO
Para i de 0 até N-1 Faça
Se i < 2 Então
V[i] <- 1
Senão
V[i] <- V[i-1] + V[i-2]
Fim-Se
Escreve v[i]
Fim-Para
FIM

Obs: O código acima é um módulo (procedimento), que recebe um vetor e um número inteiro N, onde N é a quantidade de registros do vetor, mas o que quero passar aqui é a lógica de como criar a sequência.

Espero que seja útil algum dia pra vocês…

T+

Tags:

Bruno Salomão on May 22nd, 2009

Eu já publiquei a algum tempo em alguns sites de tecnologia sobre o Subsonic, e achei que valeria a pena publicá-lo aqui …

O Subsonic é um framework que faz toda a camada de acesso a banco, além de trazer um aplicativo chamado Auto Scafolld, que você só tem o trabalho de selecionar as tabelas que deseja criar o painel e clicar em “Gerar”, ele gera automaticamente para você todo código (C# ou Vb.net) do seu painel de administração, você só tem o trabalho de editar e personalizar para a sua necessidade.

Com o Subsonic você consegue criar paineis administrativos em apenas 1 dia dependendo do tamanho de sua aplicação, ótimo para quem quer otimizar tempo e dinheiro.

Pra quem quiser conferir o Rob Conery acabou de lançar uma versão preview do Subsonic 3, onde é possível utilizar linq querys com o Subsonic. Vale a pena dar uma conferida: http://blog.wekeroad.com/blog/subsonic-3-0-preview-2/
(Dica de Bruno Caimar)

Vale a pena dar uma fuçada nesse framework.
http://subsonicproject.com/

Tags:

Bruno Salomão on May 19th, 2009

Hoje em dia todas as pessoas que desenvolvem um site, por mais simples que seja, desejam que ele esteja na primeira página do Google, Yahoo ou qualquer outro buscador certo ? certo, porém existem algumas excessões onde não queremos que nossa aplicação/site sejam indexadas, dai surge a idéia de criar esse post, pois muitos desconhecem dessa técnica.

Como exemplo de uma situação onde não podemos ter nosso site indexado pelos buscadores posso citar uma intranet de uma empresa na qual está hospedada na web e seu conteúdo e documentos hospedados só interessam a quem trabalha na empresa, por isso não é interessante deixar aparecer nas páginas de resultados dos buscadores.

Para resolver esse problema o primeiro passo é criar um arquivo txt na raiz do seu site e nomeá-lo como robots.txt.

Agora abrindo o arquivo vamos inserir as seguintes linhas nele:

User-agent: *
Disallow: /

User-Agent: Se refere a qual buscado não deve indexar sua página, no nosso exemplo coloquei o *, indicando que nenhum buscador deve indexar nosso site.

Disallow: é onde indicaremos quais pastas não devem ser indexadas, no exemplo inseri o *, indicando que nenhuma pasta deve ser indexada.

Caso deseje restringir a indexação a apenas algum diretorio basta colocar o nome do diretório entre barras, veja abaixo:

Disallow: /imagens/

Pronto, desse jeito apenas o diretório imagens não será indexado pelos buscadores.
Bom é isso ai pessoal, até o próximo post…

Tags:

Bruno Salomão on December 22nd, 2008

No ASP.NET 2.0 temos uma nova funcionalidade que são os Temas.
Tema é uma coleção de propriedades que define a aparência das páginas e dos controles de sua aplicação.
Um Tema pode conter arquivos do tipo .skin(1 por tema), arquivos css e Imagens.

Skins –>  Arquivos do tipo .skin possuem as propriedades de configuração de aparência de seus controles(Button, Label, TextBox…), ou seja, é lá que definimos cor de fundo, bordas, cor de borda e etc…, dos controles.

Cascading Style Sheet(CSS) –> Nos arquivos .css aplicamos estilos em todas as páginas.

Imagens –> Nessa pasta, definimos apenas as imagens que aparecerão no tema em questão.

Criando os Temas da aplicação

Para criar um tema, devemos adicionar a pasta “App_Themes” (figura1.0) na solution, e na pasta criada automaticamente dentro dela, definimos um nome para o  tema.

(Figura 1.0)

Definido o nome do tema, inserimos na pasta um arquivo .skin, um arquivo .css e uma nova pasta chamada “images”.
No arquivo .skin devemos configurar a aparência dos controles da aplicação(TextBox, Label, GridView e etc…) .
Essa configuração é feita colocando o controle a ser configurado e apenas as configurações de aparência dele como no exemplo abaixo:

<asp:Label runat=”server” SkinID=”lbl” ForeColor=”White” BackColor=”Black”></asp:Label>

Repare que existem uma propriedade chamada SkinID, essa propriedade indica que essa configuração de aparência irá apenas ser aplicada aos controle que possuirem esse mesmo SkinID, ou seja, se em sua página aspx existir um controle Label e o mesmo deve ter a aparência padrão definida no tema, esse Label deverá conter a propriedade SkinID=”lbl” por exemplo.

Caso desejar aplicar a aparência do controle definido no .skin para todos os controles daquele tipo, basta não inserir a propriedade SkinID.

<asp:Label runat=”server” ForeColor=”White” BackColor=”Black” ></asp:Label>
(no exemplo acima, todos os Labels da aplicação utilizarão cor de fundo preto e cor de texto branca)

No arquivo Css, inserimos as classes nas quais terão a necessidade de serem alteradas de acordo com o tema, e as que não terão mudanças e serão fixas independentemente do tema criamos em um arquivo .css separado que deve ser salvo fora da página App_themes.

A pasta “images” deverá ter apenas as imagens específicas daquele tema, como no caso do arquivo.css, as imagens que aparecerão independentemente do tema devem ser salvas fora da pasta App_Themes.

Definindo o Tema na Página

Com o tema criado, agora precisamos indicar que a página irá utilizar determinado tema.
Para fazer isso de maneira estática, basta inserir a propriedade Theme=”Default” na Tag Page de cada página aspx, ficando assim:

<%@ Page Language=”C#” MasterPageFile=”~/Inc/MasterPage.master” AutoEventWireup=”true” CodeFile=”RelatorioTarefas.aspx.cs” Inherits=”Relatorios_RelatorioTarefas” Theme=”Default %>

Podemos também definir o tema através do Code Behind, para isso devemos inserir a seguinte linha de código no PreInit da página:


protected void Page_PreInit(object sender, EventArgs e)
{
    switch (Request.QueryString["theme"])
    {
        case "Blue":
            Page.Theme = "BlueTheme";
            break;
        case "Pink":
            Page.Theme = "PinkTheme";
            break;
    }
}

No exemplo acima colocamos a situação em que pegamos via QueryString o nome do Tema e de acordo com o nome aplicamos um tema específico.

Tags: ,

Bruno Salomão on December 18th, 2008

Pessoal,
Publiquei mais um video, desta vez falando um pouquinho sobre essa nova funcionalidade do .NET Framework 3.5 que é o Dynamic Data.

Com o Dynamic Data podemos desenvolver paineis de cadastros em questão de minutos, fazendo com que nosso trabalho fique muito mais produtivo.

No exemplo do video trabalhei com Dynamic Data e LINQ to SQL.

O video está na sessão de videos do site, e para trabalhar com o Dynamic Data, é necessário ter instalado o SP1 do Visual Studio 2008 que pode ser baixado em www.falandoemti.com.br/downloads

É isso ai, espero que gostem e seja útil este video.

[]’s Bruno Salomão

Tags: , ,

Bruno Salomão on December 15th, 2008

Você já usou javascript né ? sabe que ele tem capacidade pra trabalhar com OO né ?

Então ai vai uma dica pra quem quer extrair mais da OO em Javascript, abaixo estou enviando um link para um texto feito por Sergio Pereira e traduzido por Bruno Caimar.

O Texto mostra de uma forma bem tranquila e didática como trabalhar com Orientação a Objetos no javascript, confira:

http://www.sergiopereira.com/articles/advjs-pt-br.html

Tags: ,

Bruno Salomão on December 11th, 2008

No Post Passado, comentei sobre o novo server control da Microsoft para geração de gráficos, hoje vou dar uma dica de uma API do Google para geração de gráficos.

A ferrementa funciona da seguinte maneira:
Você cria uma tag de imagem normal em seu html, e no src da img você coloca a seguinte linha de código:

http://chart.apis.google.com/chart?cht=p3&chd=t:60,40&chs=250×100&chl=Hello|World

Onde nos parâmetros cht, chd, chs e chl são passados os tipo do gráfico, valores, tamanho e labels.

No link abaixo você encontra todas as informações necessárias para customizar seu gráfico e entender melhor como funciona essa maravilhosa API da Google.

http://code.google.com/apis/chart/

[]’s

Tags: ,

Bruno Salomão on December 9th, 2008

Ai vai uma novidade bem legal para quem trabalha com ASP.NET.
Recentemente a Microsoft lançou um novo server control para gráficos <asp:chart />, ele é gratuito e está disponível para a versão 3.5 do Framework.

Basta instalar o novo server control para que  ele fique disponível na ToolBox do seu Visual Studio, mas também pode facilmente ser declado diretamente no código com a sintaxe:

<asp:chart id=”myChart” runat=”server” />

Segue abaixo uma imagem do sample e os links para sua instalação

Este anúncio foi feito no Blog http://weblogs.asp.net/scottgu/archive/2008/11/24/new-asp-net-charting-control-lt-asp-chart-runat-quot-server-quot-gt.aspx

Tags: ,

Bruno Salomão on December 8th, 2008

Inaugurando o site irei falar um pouquinho sobre uma das mais novas funcionalidades do sql 2008, a DMF.
A pouco mais de um mês, tive a oportunidade de participar de um curso da Microsoft que visava dar um overview nos novos recursos do SQL Server 2008, e dentre as novas funcionalidades a que mais me interessou apesar de não ser um DBA, é a DMF.

O Que é DMF ?
A DMF (Declarative Management Framework), é a possibilidade de se administrar o servidor por meio de políticas, ou seja, definindo regras para criação de Tables, Procedures e com isso garantindo que os padrões da empresa sejam cumpridos.

Por Exemplo:
Posso definir via a DMF que todas as tabelas do meu Banco sejam criadas com o Prefixo “TB_”, ou então não permitir a criação de tabelas que contenham a palavra “Teste”, evitando que alguem crie tabelas testes em produção.

Existem uma gama de possibilidades nessa nova funcionalidade, como eu disse não sou DBA e nem cheguei a me aprofundar muito no assunto mas já vi que é bem interessante, por isso achei legal postar aqui pra quem se interessar.

Segue uma imagem do local de onde se encontra o DMF no Sql Management.

Por hoje é isso ai pessoal,
Abraços

Tags: