Mostrando postagens com marcador web. Mostrar todas as postagens
Mostrando postagens com marcador web. Mostrar todas as postagens

10/10/2007

Instalando o Adobe Flex no Ubuntu

Eu resolvi "brincar" com o Flex, para ver como é a integração dele com o Django e para aprender mais sobre essa ferramenta. E para isso instalei ele no meu 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

Eu estava navegando na internet quando encontrei um site feito em django que achei interessante. O djangosites.org, e resolvi escrever sobre ele.

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

A alguns dias atrás a Microsoft lançou oficialmente o Silverlight, uma ferramenta para apresentações e animações para web, para ser concorrente do Adobe Flash.

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.

Model – nessa camada é implementada o banco de dados ou o modelo objeto-relacional.

Controller – nessa camada é implementado as regras de negocio, onde são processados os dados vindo camada Model e passados para a camada View.

View – nessa camada é onde fica a interface do sistema.

O MVC é muito utilizado nos dias de hoje e tem agradado a muitos desenvolvedores para web por separar a parte de programação de dados da parte da programação visual de um sistema feito para web, onde geralmente essas partes de um sistema são feitos por pessoas diferentes.

Em conseqüência ao aceitamento desse padrão pela comunidade, surgiram muitos frameworks que implementam esse padrão como o Ruby on Rails, Struts, Mentawai, TurboGears, Django entre muitos outros.

Como citado acima o desenvolvimento usando o django é feito de acordo com o MVC separado nessas 3 camadas. Até ai tudo perfeito, mas há um problema.

Qual problema?

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 mesmo não gostei nada disso, porque isso pode confundir muitos que estão iniciando nesse framework.

Eu só não entendo porque eles resolveram chamar o controller de view.

Pensei, pensei e ainda não descobri.

Bom, eu prefiro o MVC e você?

1/03/2007

Ano novo PythonBrasil novo!!!!!

Ontem Oswaldo Santana colocou no ar o novo visual e o novo modelo do site PythonBrasil.
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....