sexta-feira, 24 de junho de 2011

RMI e sua relação com Padrões de Projeto

Eu percebi que algumas pessoas estão tendo dificuldades com a implementação do trabalho de RMI do prof. Marinaldo. Então, pensei em falar um pouco sobre como funcionam as coisas por trás do RMI.

Como vcs devem ter visto em vários exemplos na internet, pra implementar um serviço servidor-consumidor em RMI é necessário a criação de uma interface que represente o objeto a ser compartilhado e uma classe no servidor que implemente essa interface. Além disso, é necessário criar uma Stub para o objeto em si e que deve estar presente no cliente, junto com a interface.

Pode parecer um pouco complexo mas não é. Para prover a transparência que o RMI se propõe a fazer no código, ele usa um padrão de projeto chamado Proxy Pattern. Este padrão diz o seguinte: "O objetivo do padrão Proxy é criar um objeto que faça a intermediação entre um objeto real e outros objetos que façam uso deste"...

terça-feira, 14 de junho de 2011

Slony: Clusterização e Replicação de Dados no Postgres

Imagine a seguinte situação: Você é um feliz proprietário de uma empresa que oferece serviços pela internet (pode ser qualquer serviço, seja criativo) e possui seu site em php, seu banco de dados postgres, e é muito feliz com o que faz.

No entanto, você têm a brilhante idéia de oferecer um serviço web (Soap, RMI, Corba, whatever) para o serviço que você já disponibiliza. Com o tempo, seu serviço vai ficando mais e mais famoso, e o acesso vai ficando pesado. Você aumenta o seu link, muda a infra-estrutura interna da sua startup mas algo parece não estar acelerando.

Com certeza o seu gargalo pode ser o banco de dados.

quinta-feira, 9 de junho de 2011

Criando senhas seguras (ou você têm exatamente 3 senhas)

Hoje vamos falar de algo diferente. Vamos falar de senhas. Vi um artigo no Hacker News sobre senhas e resolvi falar um pouco sobre o assunto.

Primeiramente, repetindo o título do artigo, você têm exatamente três senhas, não é mesmo?

Você têm exatamente três senhas. A primeira delas você usa para todos aqueles logins que você não dá muita atenção e que não possuem nada de importante que possa ser alvo de roubo de identidade. É a senha que você usa quando um site qualquer solicita que você "crie uma conta gratuita" para fazer alguma coisa, e que você provavelmente não voltará mais a entrar.

A segunda senha, é uma senha mais elaborada. Uma senha de média segurança. Na maioria das vezes, têm entre 8 e 12 caracteres alfanuméricos, e muito improvavelmente, não possui caracteres especiais. Esta é a senha que você usa no seu e-mail, no facebook, no MSN e em outros serviços que você preze um pouco pela segurança.

quinta-feira, 2 de junho de 2011

Você NÃO é um Engenheiro de Software

Semana passada foi dia do Orgulho Nerd e também o Dia da Toalha e também o dia que saiu Star Wars - A New Hope foi lançado, em 1977. E ainda no espírito, estava aqui a pensar sobre o que é desenvolvimento de software na verdade. Há uma quantidade enorme de metáforas à respeito disso:


Quais são as melhores metáforas?

Na minha opinião, a melhor de todas é a de que a de que programação é como cuidar de um Jardim, que nem diz Andy Hunt and Dave Thomas. Este texto vêm abordar justamente esta idéia. Espero que vocês gostem...