10/10/2007
Instalando o Adobe Flex no Ubuntu
Para instalar o Flex no é necessário ter o Java Runtime Environment (JRE) instalado. Para instalar o JRE eu utilizei o apt-get, basta digitar a seguinte linha no terminal:
$ sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts
Após isso é só fazer o download do SDK do Adobe Flex no site da Adobe: http://download.macromedia.com/pub/flex/sdk/flex2_sdk_hf1.zip
Feito isso descompacte o zip e poderá utilizar o Flex.
Para verificar se tudo esta funcionando, basta executar os exemplos de aplicações que vem junto com o SDK do Flex. Para execute o arquivo build-samples.sh que fica na pasta samples.
E bom proveito.
6/12/2007
djangosites.org - galeria de sites feito em django
O djangosites é um site que tem por objetivo divulgar sites feitos em django.
O mais legal desse site é que você pode se cadastrar, votando e comentando sobre os sites cadastrados e se tiver desenvolvido um site usando django, pode divulgá-lo também.
Essa é uma dica para quem quer divulgar seu trabalho feito em django, ou ver sites que utilizam o django.
5/06/2007
IronPython no Silverlight - primeiro exemplo
As principais características do Silverlight é a que ele é OpenSource e que ele é programado usando linguagens dinâmicas, entre elas o IronPython.
O desenvolvimento de apresentações funciona da seguinte maneira:
1 - Criamos o arquivo xaml, que é um xml que representa toda a parte visual da nossa apresentação. Ele pode ser criado 'no braço', sendo codificado ou usando o Microsoft Expression Design [1] que é uma ferramenta de ilustração e design gráfico onde você cria os desenhos e pode exportá-los para xaml.
2 - Criamos o arquivo que terá toda a parte de programação da noss apresentação. Como usaremos o IronPython, será um arquivo .py.
3 - Usando o Silverlight SDK, criamos a função createSilverlight, que é um javascript que faz a exibição da apresentação no html.
4 - Chamamos a função createSilverlight no html para exibir nossa apresentação.
Para desenvolvermos nossa primeira apresentação é necessário o player do Silverlight [2] e o SDK dele [3].
Vamos criar uma apresentação que carregue um texto quando a apresentação foi carregada. Vamos começar pelo xaml.
Scene.xaml
<Canvas xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="100" Height="100" Background="Red" >
<x:Code Source="primeiro.py" Type="text/python" />
<Canvas Loaded="OnLoad" />
<TextBlock x:Name="Texto" Foreground="White" Text="IronPython" />
</Canvas>
O xaml acima é formado por 4 linhas praticamente. A primeira é a Canvas onde contém a linkagem com os xmlns oficiais do silverlight e ele também é o fundo da nossa aplicação que nesse caso use a cor de fundo como vermelha e usei o tamanho de 100x100.
<Canvas
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Width="100" Height="100"
Background="Red"
>
A segunda, a x:Code é responsável por configurar o tipo da linguagem e onde fica o arquivo com os comandos.
<x:Code Source="primeiro.py" Type="text/python" />
A terceira linha contém uma tag canvas que uso apenas para colocara função Loaded que é disparada quando a apresentação é carregada. O nome da função chamada quando a apresentação é carregada é OnLoad.
<Canvas Loaded="OnLoad" />
E para finalizar o nosso texto que terá a cor branca e no python será representado pela instância Texto.
<TextBlock x:Name="Texto" Foreground="White" Text="IronPython" />
Agora vamos para o nosso arquivo em Python, que não passa de uma função chamada OnLoad que atribui um valor ao texto que criamos através do parâmetro Text.
primeiro.py
def OnLoad(sender, args):
Texto.Text = "Isso é d+++"
O SDK do silverlight dispoe do Silverlight.js e do CreateSilverlight.js que é um modelo para criação da função que chamará o xaml. Vamos abrir o CreateSilverlight.js e modificar a função createSilverLight.js para que chame o Scene.xaml. Nessa função também configuramos o framerate entre outros atributos.
function createSilverlight()
{
Sys.Silverlight.createObject("Scene.xaml", pe, "wpf",
{width:'350', height:'350',
inplaceInstallPrompt:false, background:'#00000000', isWindowless:'true',
framerate:'30', version:'0.95'},
{onError:null, onLoad:null},
null);
}
E para finalizar chamamos a função createSilverlight no nosso arquivo .html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>Primeiro</title>
<script src="js/silverlight.js" type="text/javascript" ></script>
<script src="js/CreateSilverlight.js" type="text/javascript" ></script>
</head>
<body>
<div id="iron" >
<script type="text/javascript">
var pe = document.getElementById("iron");
createSilverlight();
</script>
</div>
</body>
Com o Silverlight + IronPython pode-se fazer coisas que só a imaginação pode limitar.
Em breve, mais sobre Silverlight e IronPython, mas por enquanto é só.
Quer mais? [4].
[1] - http://www.microsoft.com/Expression/products/overview.aspx?key=design
[2] - http://msdn2.microsoft.com/en-us/silverlight/bb419317.aspx
[3] - http://www.microsoft.com/downloads/details.aspx?FamilyID=54B85D84-604D-43DB-BCFE-7AFD278208D8&displaylang=en
[4] - http://www.microsoft.com/brasil/msdn/tecnologias/expression/intro_silverlight.mspx
4/16/2007
O MVC, o MTV e o Django

Como muitos sabem, MVC ( Model – View – Controller ) é um padrão de desenvolvimento, que é um padrão que separa o desenvolvimento nessas 3 camadas.
O django usa as nomenclaturas para as camadas,diferente do modelo MVC. Para modelo o django usa model, para view ele usa template, até ai tudo bem. Mas ele define o controller como view. Isso mesmo, o django define o controller como view. E tem também as generic ‘views’ que são controllers genéricos para situações comuns como master/detail, delete, update.
O problema é maior ainda porque muitos desenvolvedores acham que essa nomenclatura errada chique porque as iniciais delas são igual aquele canal de TV a MTV ( Model – Template – View ).
Eu só não entendo porque eles resolveram chamar o controller de view.
Pensei, pensei e ainda não descobri.
1/03/2007
Ano novo PythonBrasil novo!!!!!
Para que não sabe PythonBrasil é o site da comunidade Python brasileira.
O visual do novo site ficou bem legal. E a disposição das informações também.
Aproveitei que estou de folga e ajudei na construção de algumas páginas novas. E espero continuar colaborando.
ah, antes que eu esqueça.
Feliz 2007 para todos....