SlideShare uma empresa Scribd logo
1 de 20
Baixar para ler offline
HISTÓRIA
Django é um framework para desenvolvimento rápido
para web, escrito em Python.
Utiliza o padrão MTV (model - template - view).
Foi criado originalmente como sistema para gerenciar
um site jornalístico na cidade de Lawrence, no Kansas.
Tornou-se um projeto de código aberto e foi publicado
sob a licença BSD em 2005. O nome Django foi
inspirado no músico de jazz Django Reinhardt.
Quem usa isso
"The web framework for
perfectionists with deadlines"
"Framework web para
perfeccionistas com pequenos prazos"
FILOSOFIA
PRINCÍPIO BÁSICO
1. Escreva uma aplicação (site) do zero
2. Escreva outra aplicação do zero
3. Perceba que muito do site 1 se repete no site 2
4. Com isso se repete muito os passos 1 e 2
5. Com isso nasceu o Django
Portanto o Django usa o príncipio:
Não se repita (Don’t repeat yourself, DRY)
PRINCIPAIS CARACTERÍSTICAS
Mapeamento Objeto-Relacional (ORM)
Define a modelagem de dados através de classes em Python.
Com isso é possível gerar suas tabelas no banco de dados e
manipulá-las sem necessidade de utilizarSQL (o que também
é possivel).
Interface Administrativa
No Django é possivel gerar automaticamente uma interface
para administração para os modelos criados através do ORM.
Formulários
É possível gerar formulários automaticamente através dos
modelos de dados.
PRINCIPAIS CARACTERÍSTICAS
URLs Elegantes
No Django não há limitações para criação de URLs elegantes e de
maneira simples.
- Nada elegante, difícil para o usário e ruim para buscadores:
www.meusite.com.br/index.jsp?id=12&nome=ciclano
- Elegante, fácil leitura e memorização e ótimo para buscadores:
www.meusite.com.br/12/ciclano
Sistema de Templates
O Django tem uma linguagem de templates poderosa, extensível e
amigável. Com ela você pode separar design, conteúdo e código em
Python.
PRINCIPAIS CARACTERÍSTICAS
Internacionalização
Django tem total suporte para aplicações multi-idioma,
deixando você especificar strings de tradução e fornecendo
ganchos para funcionalidades específicas do idioma.
Sistema de Cache
O Django possui um sistema de cache que se integra ao
memcached ou em outros frameworks de cache.
UM POUCO DE PYTHON
O que é Python?
Python é uma linguagem de altíssimo nível (VHLL - Very High
Level Language) com código fonte aberto.
Python é Interpretado ou compilado?
Python é executado de forma interpretada via bytecode, ou
seja, escrevendo apenas uma vez o código Python podemos
executá-lo em qualquer sistema operaciona
UM POUCO DE PYTHON
Tipagem forte?
Python possui tipagem forte pois não aceita conversões
automáticas de tipo. Exemplo:
● >>> a = 1
● >>> b = “2”
● >>> a + b
● >>> Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +:
'int' and 'str'
UM POUCO DE PYTHON
Declacarão de variavéis Dinâmica
Não precisamos declarar variavéis e elas podem conter
qualquer tipo de valor ao longo da execução do programa.
INSTALANDO PYTHON
a. http://www.python.org/download/
b. Instalação no Windows
i. http://docs.python-guide.org/en/latest/starting/install/win/
ii. Após baixar o Python e instalá-lo na máquina é necessários setar as
variáveis de ambiente para encontrar e rodar o interpretador.
● Procure por “variavés de ambiente” em iniciar -> pesquisar.
● Procure pela aba “Avançado” depois clique em Variáveis de
Ambiente.
● Em Variáveis do sistema procure por PATH e clique em editar
● Adicione o local onde se encontra o interpretador Python.
○ Ex: C:Python27;C:Python27Scripts
c. Instação no Linux e MAC
i. O Python é nativo nesses sistemas operacionais
INSTALANDO SETUP_TOOLS
1. https://pypi.python.org/pypi/setuptools
2. Após download utilizando a console navegue até a pasta que
contem o arquivo que foi baixado e execute o comando:
3. C:dir_que_contem_o_arquivo_baixadopython ez_setup.py
install
4. Adicione as variáveis de ambiente o diretório que se encontra o
EasyInstal:
Ex:C:Python27Scripts
Importante: Sem esse caminho não conseguimos acessar o
easy_install através da console
"Uma ferramenta para instalar e gerenciar
pacotes Python".
Agora instalamos o PIP(Python Package Index)
através do easy_install com o comando na
console:
c:<qualquer_diretorio>easy_install pip
Links:
https://pypi.python.org/pypi/pip
http://www.pip-installer.org/en/latest/
INSTALANDO PIP
INSTALANDO VirtualEnv
"VirtualEnv é uma ferramenta para criar ambientes de
desenvolvimento isolados em Python".
Com o PIP instalamos o VirtualEnv executando o comando na
console:
c:<qualquer_diretorio>pip install virtualenv
Links:
https://pypi.python.org/pypi/virtualenv
http://klauslaube.com.br/2011/03/18/python-django-virtualenv/
http://www.youtube.com/watch?v=oT1A1KKf0SI
http://www.saltycrane.com/blog/2009/05/notes-using-pip-and-
virtualenv-django/
Configurando Ambiente
1. virtualenv <nome_do_ambiente>
2. entra no ambiente criado
a. cd <nome_do_ambiente>
b. cd Scripts
c. activate.bat
3. pip install django
4. easy_install mysql-python
Criando meu primeiro projeto
(env) c:<qualquer_diretorio>python
Scripts/django-admin.py startproject mysite
"Welcome to the
Django"
Super Referencias
(free)
1. http://osantana.me/pydjango/
2. http://ericstk.wordpress.com/2013/05/08/django-
fontes-de-estudo-e-referencias/
3. https://docs.djangoproject.com
4. http://pressedweb.com/screencast/windows-setup/
5. http://www.codecademy.com/pt/tracks/python
(pagos)
1. http://www.schoolofnet.com/
2. http://welcometothedjango.com.br/grade/
OBRIGADO
email: mateuspaduaweb@gmail.com
face: /mateus.padua.3
link desta apresentação:
http://www.slideshare.net/mateuspadua3/django-
python

Mais conteúdo relacionado

Mais procurados

Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POODaniel Brandão
 
Redes de computadores 2 - Aula 6 - DNS, DHCP
Redes de computadores 2 - Aula 6 - DNS, DHCPRedes de computadores 2 - Aula 6 - DNS, DHCP
Redes de computadores 2 - Aula 6 - DNS, DHCPCleber Fonseca
 
Curso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonCurso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonGiancarlo Silva
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Daniel Brandão
 
Conceitos Iniciais de Linguagens de Programação
Conceitos Iniciais de Linguagens de ProgramaçãoConceitos Iniciais de Linguagens de Programação
Conceitos Iniciais de Linguagens de ProgramaçãoSidney Roberto
 
Conceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosConceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosLeonardo Melo Santos
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetosCleyton Ferrari
 
Aula 01 - JavaScript: Introdução
Aula 01 - JavaScript: IntroduçãoAula 01 - JavaScript: Introdução
Aula 01 - JavaScript: IntroduçãoJessyka Lage
 
Java: Introdução à Orientação a Objetos
Java: Introdução à Orientação a ObjetosJava: Introdução à Orientação a Objetos
Java: Introdução à Orientação a ObjetosArthur Emanuel
 
Estrutura de Dados e Algoritmos com Java #02-12: Vetores e Arrays
Estrutura de Dados e Algoritmos com Java #02-12: Vetores e ArraysEstrutura de Dados e Algoritmos com Java #02-12: Vetores e Arrays
Estrutura de Dados e Algoritmos com Java #02-12: Vetores e ArraysLoiane Groner
 
Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Bruno Grange
 
Lógica de Programação - Procedimento
Lógica de Programação - ProcedimentoLógica de Programação - Procedimento
Lógica de Programação - ProcedimentoWesley R. Bezerra
 
Aula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem JavaAula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem JavaDaniel Brandão
 
Aula de Introdução - JAVA
Aula de Introdução  - JAVAAula de Introdução  - JAVA
Aula de Introdução - JAVAMoises Omena
 
Programando para web com python - Introdução a Python
Programando para web com python - Introdução a PythonProgramando para web com python - Introdução a Python
Programando para web com python - Introdução a PythonAlvaro Oliveira
 

Mais procurados (20)

Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
 
Curso javascript básico
Curso javascript básicoCurso javascript básico
Curso javascript básico
 
Redes de computadores 2 - Aula 6 - DNS, DHCP
Redes de computadores 2 - Aula 6 - DNS, DHCPRedes de computadores 2 - Aula 6 - DNS, DHCP
Redes de computadores 2 - Aula 6 - DNS, DHCP
 
Curso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonCurso básico de Algoritmos com Python
Curso básico de Algoritmos com Python
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)
 
Python - Introdução
Python - IntroduçãoPython - Introdução
Python - Introdução
 
Conceitos Iniciais de Linguagens de Programação
Conceitos Iniciais de Linguagens de ProgramaçãoConceitos Iniciais de Linguagens de Programação
Conceitos Iniciais de Linguagens de Programação
 
Conceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosConceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetos
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
 
Aula 01 - JavaScript: Introdução
Aula 01 - JavaScript: IntroduçãoAula 01 - JavaScript: Introdução
Aula 01 - JavaScript: Introdução
 
Java: Introdução à Orientação a Objetos
Java: Introdução à Orientação a ObjetosJava: Introdução à Orientação a Objetos
Java: Introdução à Orientação a Objetos
 
Apresentação rest api
Apresentação rest apiApresentação rest api
Apresentação rest api
 
Estrutura de Dados e Algoritmos com Java #02-12: Vetores e Arrays
Estrutura de Dados e Algoritmos com Java #02-12: Vetores e ArraysEstrutura de Dados e Algoritmos com Java #02-12: Vetores e Arrays
Estrutura de Dados e Algoritmos com Java #02-12: Vetores e Arrays
 
Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)
 
Lógica de Programação - Procedimento
Lógica de Programação - ProcedimentoLógica de Programação - Procedimento
Lógica de Programação - Procedimento
 
Aula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem JavaAula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem Java
 
Aula de Introdução - JAVA
Aula de Introdução  - JAVAAula de Introdução  - JAVA
Aula de Introdução - JAVA
 
Aula03 - JavaScript
Aula03 - JavaScriptAula03 - JavaScript
Aula03 - JavaScript
 
Introdução ao SQL
Introdução ao SQLIntrodução ao SQL
Introdução ao SQL
 
Programando para web com python - Introdução a Python
Programando para web com python - Introdução a PythonProgramando para web com python - Introdução a Python
Programando para web com python - Introdução a Python
 

Destaque

Django: Desenvolvendo uma aplicação web em minutos
Django: Desenvolvendo uma aplicação web em minutosDjango: Desenvolvendo uma aplicação web em minutos
Django: Desenvolvendo uma aplicação web em minutosRodrigo Nossal
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonIgor Sobreira
 
Criando websites a jato com Django
Criando websites a jato com DjangoCriando websites a jato com Django
Criando websites a jato com DjangoMarcos Petry
 
Django: desenvolvendo aplicações web de maneira simples e rápida!
Django: desenvolvendo aplicações web de maneira simples e rápida!Django: desenvolvendo aplicações web de maneira simples e rápida!
Django: desenvolvendo aplicações web de maneira simples e rápida!Felipe Queiroz
 
Minicurso de Django - Desenvolvimento ágil web com Django e Python
Minicurso de Django - Desenvolvimento ágil web com Django e PythonMinicurso de Django - Desenvolvimento ágil web com Django e Python
Minicurso de Django - Desenvolvimento ágil web com Django e PythonGuilherme Garcia
 
Python e django na prática
Python e django na práticaPython e django na prática
Python e django na práticaRafael Cassau
 
Python e Django na Globo.com
Python e Django na Globo.comPython e Django na Globo.com
Python e Django na Globo.comricobl
 
Extraindo dados públicos na marra com Python
Extraindo dados públicos na marra com PythonExtraindo dados públicos na marra com Python
Extraindo dados públicos na marra com PythonPedro Valente
 
Python - Guia de bolso
Python - Guia de bolsoPython - Guia de bolso
Python - Guia de bolsoJean Lopes
 
Apresentação de Django Extension
Apresentação de Django ExtensionApresentação de Django Extension
Apresentação de Django ExtensionMoacir Filho
 
Mini curso introdutório ao Django
Mini curso introdutório ao DjangoMini curso introdutório ao Django
Mini curso introdutório ao DjangoVinicius Mendes
 
Django, Framework Python para desenvolvimento web
Django, Framework Python para desenvolvimento webDjango, Framework Python para desenvolvimento web
Django, Framework Python para desenvolvimento webMayron Cachina
 

Destaque (20)

Django: Desenvolvendo uma aplicação web em minutos
Django: Desenvolvendo uma aplicação web em minutosDjango: Desenvolvendo uma aplicação web em minutos
Django: Desenvolvendo uma aplicação web em minutos
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com Python
 
Introdução ao Django
Introdução ao DjangoIntrodução ao Django
Introdução ao Django
 
Criando websites a jato com Django
Criando websites a jato com DjangoCriando websites a jato com Django
Criando websites a jato com Django
 
Django: desenvolvendo aplicações web de maneira simples e rápida!
Django: desenvolvendo aplicações web de maneira simples e rápida!Django: desenvolvendo aplicações web de maneira simples e rápida!
Django: desenvolvendo aplicações web de maneira simples e rápida!
 
Minicurso de Django - Desenvolvimento ágil web com Django e Python
Minicurso de Django - Desenvolvimento ágil web com Django e PythonMinicurso de Django - Desenvolvimento ágil web com Django e Python
Minicurso de Django - Desenvolvimento ágil web com Django e Python
 
Python e django na prática
Python e django na práticaPython e django na prática
Python e django na prática
 
Python e Django na Globo.com
Python e Django na Globo.comPython e Django na Globo.com
Python e Django na Globo.com
 
Extraindo dados públicos na marra com Python
Extraindo dados públicos na marra com PythonExtraindo dados públicos na marra com Python
Extraindo dados públicos na marra com Python
 
Python - Guia de bolso
Python - Guia de bolsoPython - Guia de bolso
Python - Guia de bolso
 
Aprendendo python
Aprendendo pythonAprendendo python
Aprendendo python
 
Apresentação de Django Extension
Apresentação de Django ExtensionApresentação de Django Extension
Apresentação de Django Extension
 
Mini curso introdutório ao Django
Mini curso introdutório ao DjangoMini curso introdutório ao Django
Mini curso introdutório ao Django
 
Django, Framework Python para desenvolvimento web
Django, Framework Python para desenvolvimento webDjango, Framework Python para desenvolvimento web
Django, Framework Python para desenvolvimento web
 
Django
DjangoDjango
Django
 
Aplicacoes Rapidas Para Web Com Django
Aplicacoes Rapidas Para Web Com DjangoAplicacoes Rapidas Para Web Com Django
Aplicacoes Rapidas Para Web Com Django
 
Iniciando com docker
Iniciando com dockerIniciando com docker
Iniciando com docker
 
Como fazer boas libs
Como fazer boas libs Como fazer boas libs
Como fazer boas libs
 
Iniciando com django
Iniciando com djangoIniciando com django
Iniciando com django
 
Django
DjangoDjango
Django
 

Semelhante a Tutorial Django + Python

Desenvolvimento de aplicações embarcadas utilizando Python
Desenvolvimento de aplicações embarcadas utilizando PythonDesenvolvimento de aplicações embarcadas utilizando Python
Desenvolvimento de aplicações embarcadas utilizando PythonFlávio Ribeiro
 
Automação de Aplicativos: Scripting com Python
Automação de Aplicativos: Scripting com PythonAutomação de Aplicativos: Scripting com Python
Automação de Aplicativos: Scripting com PythonFabio Spanhol
 
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação WebDjango Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação Webantonio sérgio nogueira
 
Administração de sistemas usando Python
Administração de sistemas usando PythonAdministração de sistemas usando Python
Administração de sistemas usando PythonHelio Loureiro
 
Aula 01 python
Aula 01 pythonAula 01 python
Aula 01 pythonTiago
 
Por Que Python É Tão Lento?
Por Que Python É Tão Lento?Por Que Python É Tão Lento?
Por Que Python É Tão Lento?Rudá Moura
 
PHP 5 de Forma Correta e Segura
PHP 5 de Forma Correta e SeguraPHP 5 de Forma Correta e Segura
PHP 5 de Forma Correta e SeguraKleber Silva
 
Apresentação python fábio jr alves
Apresentação python   fábio jr alvesApresentação python   fábio jr alves
Apresentação python fábio jr alvesGrupython Ufla
 
PHP Turbinado com CodeIgniter - Conisli 2011
PHP Turbinado com CodeIgniter - Conisli 2011PHP Turbinado com CodeIgniter - Conisli 2011
PHP Turbinado com CodeIgniter - Conisli 2011Evaldo Junior
 
Python com baterias incluídas v2.0
Python com baterias incluídas v2.0Python com baterias incluídas v2.0
Python com baterias incluídas v2.0Jonh Edson
 
Introdução à Programação Python e Tk
Introdução à Programação Python e TkIntrodução à Programação Python e Tk
Introdução à Programação Python e TkCarlos Campani
 
Aprenda a programar python
Aprenda a programar pythonAprenda a programar python
Aprenda a programar pythonLourenço Junior
 
Desenvolvimento web com python e django
Desenvolvimento web com python e djangoDesenvolvimento web com python e django
Desenvolvimento web com python e djangoIgor Sobreira
 
Por Que Python - #PUGCE
Por Que Python - #PUGCEPor Que Python - #PUGCE
Por Que Python - #PUGCETiago Freire
 
PARADIGMAS_LINGUAGENS_PROG_aula02.pdf
PARADIGMAS_LINGUAGENS_PROG_aula02.pdfPARADIGMAS_LINGUAGENS_PROG_aula02.pdf
PARADIGMAS_LINGUAGENS_PROG_aula02.pdfAthena542429
 
01 -Aula IPE - Apresentando o Python.pdf
01 -Aula IPE - Apresentando o Python.pdf01 -Aula IPE - Apresentando o Python.pdf
01 -Aula IPE - Apresentando o Python.pdfGustavomacieldesouza2
 
Vagrant uma ferramenta realmente útil e versátil
Vagrant   uma ferramenta realmente útil e versátilVagrant   uma ferramenta realmente útil e versátil
Vagrant uma ferramenta realmente útil e versátilWanderlei Silva do Carmo
 

Semelhante a Tutorial Django + Python (20)

Canivete python
Canivete pythonCanivete python
Canivete python
 
Desenvolvimento de aplicações embarcadas utilizando Python
Desenvolvimento de aplicações embarcadas utilizando PythonDesenvolvimento de aplicações embarcadas utilizando Python
Desenvolvimento de aplicações embarcadas utilizando Python
 
Automação de Aplicativos: Scripting com Python
Automação de Aplicativos: Scripting com PythonAutomação de Aplicativos: Scripting com Python
Automação de Aplicativos: Scripting com Python
 
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação WebDjango Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
 
Introdução à linguagem python
Introdução à linguagem pythonIntrodução à linguagem python
Introdução à linguagem python
 
Administração de sistemas usando Python
Administração de sistemas usando PythonAdministração de sistemas usando Python
Administração de sistemas usando Python
 
Aula 01 python
Aula 01 pythonAula 01 python
Aula 01 python
 
Django Básico
Django BásicoDjango Básico
Django Básico
 
Por Que Python É Tão Lento?
Por Que Python É Tão Lento?Por Que Python É Tão Lento?
Por Que Python É Tão Lento?
 
PHP 5 de Forma Correta e Segura
PHP 5 de Forma Correta e SeguraPHP 5 de Forma Correta e Segura
PHP 5 de Forma Correta e Segura
 
Apresentação python fábio jr alves
Apresentação python   fábio jr alvesApresentação python   fábio jr alves
Apresentação python fábio jr alves
 
PHP Turbinado com CodeIgniter - Conisli 2011
PHP Turbinado com CodeIgniter - Conisli 2011PHP Turbinado com CodeIgniter - Conisli 2011
PHP Turbinado com CodeIgniter - Conisli 2011
 
Python com baterias incluídas v2.0
Python com baterias incluídas v2.0Python com baterias incluídas v2.0
Python com baterias incluídas v2.0
 
Introdução à Programação Python e Tk
Introdução à Programação Python e TkIntrodução à Programação Python e Tk
Introdução à Programação Python e Tk
 
Aprenda a programar python
Aprenda a programar pythonAprenda a programar python
Aprenda a programar python
 
Desenvolvimento web com python e django
Desenvolvimento web com python e djangoDesenvolvimento web com python e django
Desenvolvimento web com python e django
 
Por Que Python - #PUGCE
Por Que Python - #PUGCEPor Que Python - #PUGCE
Por Que Python - #PUGCE
 
PARADIGMAS_LINGUAGENS_PROG_aula02.pdf
PARADIGMAS_LINGUAGENS_PROG_aula02.pdfPARADIGMAS_LINGUAGENS_PROG_aula02.pdf
PARADIGMAS_LINGUAGENS_PROG_aula02.pdf
 
01 -Aula IPE - Apresentando o Python.pdf
01 -Aula IPE - Apresentando o Python.pdf01 -Aula IPE - Apresentando o Python.pdf
01 -Aula IPE - Apresentando o Python.pdf
 
Vagrant uma ferramenta realmente útil e versátil
Vagrant   uma ferramenta realmente útil e versátilVagrant   uma ferramenta realmente útil e versátil
Vagrant uma ferramenta realmente útil e versátil
 

Tutorial Django + Python

  • 1.
  • 2. HISTÓRIA Django é um framework para desenvolvimento rápido para web, escrito em Python. Utiliza o padrão MTV (model - template - view). Foi criado originalmente como sistema para gerenciar um site jornalístico na cidade de Lawrence, no Kansas. Tornou-se um projeto de código aberto e foi publicado sob a licença BSD em 2005. O nome Django foi inspirado no músico de jazz Django Reinhardt.
  • 4. "The web framework for perfectionists with deadlines" "Framework web para perfeccionistas com pequenos prazos" FILOSOFIA
  • 5. PRINCÍPIO BÁSICO 1. Escreva uma aplicação (site) do zero 2. Escreva outra aplicação do zero 3. Perceba que muito do site 1 se repete no site 2 4. Com isso se repete muito os passos 1 e 2 5. Com isso nasceu o Django Portanto o Django usa o príncipio: Não se repita (Don’t repeat yourself, DRY)
  • 6. PRINCIPAIS CARACTERÍSTICAS Mapeamento Objeto-Relacional (ORM) Define a modelagem de dados através de classes em Python. Com isso é possível gerar suas tabelas no banco de dados e manipulá-las sem necessidade de utilizarSQL (o que também é possivel). Interface Administrativa No Django é possivel gerar automaticamente uma interface para administração para os modelos criados através do ORM. Formulários É possível gerar formulários automaticamente através dos modelos de dados.
  • 7. PRINCIPAIS CARACTERÍSTICAS URLs Elegantes No Django não há limitações para criação de URLs elegantes e de maneira simples. - Nada elegante, difícil para o usário e ruim para buscadores: www.meusite.com.br/index.jsp?id=12&nome=ciclano - Elegante, fácil leitura e memorização e ótimo para buscadores: www.meusite.com.br/12/ciclano Sistema de Templates O Django tem uma linguagem de templates poderosa, extensível e amigável. Com ela você pode separar design, conteúdo e código em Python.
  • 8. PRINCIPAIS CARACTERÍSTICAS Internacionalização Django tem total suporte para aplicações multi-idioma, deixando você especificar strings de tradução e fornecendo ganchos para funcionalidades específicas do idioma. Sistema de Cache O Django possui um sistema de cache que se integra ao memcached ou em outros frameworks de cache.
  • 9. UM POUCO DE PYTHON O que é Python? Python é uma linguagem de altíssimo nível (VHLL - Very High Level Language) com código fonte aberto. Python é Interpretado ou compilado? Python é executado de forma interpretada via bytecode, ou seja, escrevendo apenas uma vez o código Python podemos executá-lo em qualquer sistema operaciona
  • 10. UM POUCO DE PYTHON Tipagem forte? Python possui tipagem forte pois não aceita conversões automáticas de tipo. Exemplo: ● >>> a = 1 ● >>> b = “2” ● >>> a + b ● >>> Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unsupported operand type(s) for +: 'int' and 'str'
  • 11. UM POUCO DE PYTHON Declacarão de variavéis Dinâmica Não precisamos declarar variavéis e elas podem conter qualquer tipo de valor ao longo da execução do programa.
  • 12. INSTALANDO PYTHON a. http://www.python.org/download/ b. Instalação no Windows i. http://docs.python-guide.org/en/latest/starting/install/win/ ii. Após baixar o Python e instalá-lo na máquina é necessários setar as variáveis de ambiente para encontrar e rodar o interpretador. ● Procure por “variavés de ambiente” em iniciar -> pesquisar. ● Procure pela aba “Avançado” depois clique em Variáveis de Ambiente. ● Em Variáveis do sistema procure por PATH e clique em editar ● Adicione o local onde se encontra o interpretador Python. ○ Ex: C:Python27;C:Python27Scripts c. Instação no Linux e MAC i. O Python é nativo nesses sistemas operacionais
  • 13. INSTALANDO SETUP_TOOLS 1. https://pypi.python.org/pypi/setuptools 2. Após download utilizando a console navegue até a pasta que contem o arquivo que foi baixado e execute o comando: 3. C:dir_que_contem_o_arquivo_baixadopython ez_setup.py install 4. Adicione as variáveis de ambiente o diretório que se encontra o EasyInstal: Ex:C:Python27Scripts Importante: Sem esse caminho não conseguimos acessar o easy_install através da console
  • 14. "Uma ferramenta para instalar e gerenciar pacotes Python". Agora instalamos o PIP(Python Package Index) através do easy_install com o comando na console: c:<qualquer_diretorio>easy_install pip Links: https://pypi.python.org/pypi/pip http://www.pip-installer.org/en/latest/ INSTALANDO PIP
  • 15. INSTALANDO VirtualEnv "VirtualEnv é uma ferramenta para criar ambientes de desenvolvimento isolados em Python". Com o PIP instalamos o VirtualEnv executando o comando na console: c:<qualquer_diretorio>pip install virtualenv Links: https://pypi.python.org/pypi/virtualenv http://klauslaube.com.br/2011/03/18/python-django-virtualenv/ http://www.youtube.com/watch?v=oT1A1KKf0SI http://www.saltycrane.com/blog/2009/05/notes-using-pip-and- virtualenv-django/
  • 16. Configurando Ambiente 1. virtualenv <nome_do_ambiente> 2. entra no ambiente criado a. cd <nome_do_ambiente> b. cd Scripts c. activate.bat 3. pip install django 4. easy_install mysql-python
  • 17. Criando meu primeiro projeto (env) c:<qualquer_diretorio>python Scripts/django-admin.py startproject mysite
  • 19. Super Referencias (free) 1. http://osantana.me/pydjango/ 2. http://ericstk.wordpress.com/2013/05/08/django- fontes-de-estudo-e-referencias/ 3. https://docs.djangoproject.com 4. http://pressedweb.com/screencast/windows-setup/ 5. http://www.codecademy.com/pt/tracks/python (pagos) 1. http://www.schoolofnet.com/ 2. http://welcometothedjango.com.br/grade/
  • 20. OBRIGADO email: mateuspaduaweb@gmail.com face: /mateus.padua.3 link desta apresentação: http://www.slideshare.net/mateuspadua3/django- python