terça-feira, 22 de fevereiro de 2011

Django...

Como todos sabem (se não falei, leu ali ao lado no perfil), agora estou programando em python, apesar de ainda não ter deixado o java de lado.

Mas caramba... O que é Django?!








Não não... Nesse caso não estou falando do filme italiano da década de 60 não.

Por sinal, esse filme fez muito sucesso.








  Vamos lá...




Django, como o próprio slogan já diz, é um framework de desenvolvimento web para perfeccionistas com prazos.

Traduzindo, é um framework de alto nível escrito em Python que estimula o desenvolvimento rápido e design limpo e pragmático(ágil, prático).

O Django se concentra em automatizar o máximo possível respeitando princípio DRY.

DRY = Don't Repeat Yourself

Após instalar os pacotes necessários para rodar o python (seja windows, linux ou mac), baixar/instalar o django:
django-admin.py startproject meusite
Pronto. Com essa linha de comando começa sua vida no Django.
Obviamente meusite será substituído pelo nome do seu projeto.


meusite/
    __init__.py
    manage.py
    settings.py
    urls.py


4 arquivos são gerados. De forma extremamente sucinta:

  •  __init__.py indica um pacote python; 
  • manage.py uma ferramenta via linha de comando que deixa você interagir com o projeto Django de várias formas;
  • settings.py configurações gerais do projeto, tais como: conexão com o banco de dados, info de administrador, caminho de arquivos, aplicações instaladas, etc.;
  • urls.py define o mapeamento das URLS do seu projeto;
No arquivo settings.py por padrão já vem com algumas aplicações instaladas, as quais podem ser desabilitadas a qualquer momento.

A partir daí é é começar suas próprias aplicações, ou pacotes.

Através de um comando do próprio django, é possível criar automaticamente os arquivos necessários para um pacote:
python manage.py startapp cadastro
Esse comando cria uma pasta (pacote) contendo:
cadastro/
    __init__.py
    models.py
    tests.py
    views.py

Novamente um arquivo __init__.py, models.py (arquivo contendo os modelos desse pacote), tests.py(nossos testes) e views.py (onde a mágica acontece).

Exemplo de como seria o models.py:

from django.db import models

class Pessoa(models.Model):
    nome = models.CharField(max_length=200)
    data_cadastro = models.DateTimeField('data cadastro')

class Telefone(models.Model):
    pessoa = models.ForeignKey(Pessoa)
    telefone = models.CharField(max_length=200)
    tipo = models.CharField(max_length=200)
 
Por hoje, preciso encerrar. Ainda é preciso escrever sobre o test.py e o views.py.

Para mais detalhes, ou para continuar o assunto sozinho, no próprio site do Django tem um tutorial (que é o que estou usando de base - ou traduzindo).

Ahh Rafael, mas você já ta falando sobre test aí mas não ta seguindo a filosofia do TDD (Test-driven development - Desenvolvimento dirigido/baseado em testes). Já ta criando modelo bla bla bla.

Calma, calma... No próximo post a gente conversa melhor, até por que também não manjo muito e prefiro me aprimorar antes de escrever sobre.

Abraços e até mais
[ ]'s

2 comentários:

  1. Opa, muito bacana o django, estou estudando ele faz um tempinho esperando por mais posts sobre o assunto.

    ResponderExcluir
  2. obrigado!!! =D
    assim que possível irei retomar....

    ResponderExcluir