|
3 | 3 | Django (/ˈdʒæŋɡoʊ/ _jang-goh_) é um framework gratuito e de código aberto para a criação de aplicações web, escrito em Python. É um framework web, ou seja, é um conjunto de componentes que ajuda a desenvolver sites de forma mais rápida e mais fácil. |
4 | 4 |
|
5 | 5 | Veja, quando você está construindo um site, você sempre precisa de um conjunto similar de componentes: uma maneira de lidar com |
6 | | -a autenticação do usuário (inscrever-se, realizar login, realizar logout), um painel de gerenciamento para o seu site, |
7 | | -formulários, upload de arquivos, etc. |
| 6 | +a autenticação de usuárias (inscrever-se, realizar login, realizar logout), um painel de gerenciamento para o seu site, formulários, upload de arquivos, etc. |
8 | 7 |
|
9 | | -Felizmente para você, há tempos atrás, outras pessoas notaram várias semelhanças nos problemas enfrentados pelos desenvolvedores web quando estão criando um novo site, então eles uniram-se e criaram os frameworks (Django é um deles) que lhe dão componentes prontos, que você pode usar. |
| 8 | +Felizmente para você, tempos atrás outras pessoas notaram várias semelhanças nos problemas enfrentados pelas desenvolvedoras web quando estão criando um novo site, então uniram-se e criaram os frameworks (Django é um desses frameworks) que lhe dão componentes prontos, que você pode usar. |
10 | 9 |
|
11 | | -Frameworks existem para salvar você de ter que reinventar a roda e ajudam a aliviar a sobrecarga quando você está construindo um |
12 | | -novo site. |
| 10 | +Frameworks existem para salvar você de ter que reinventar a roda e ajudam a aliviar a sobrecarga quando você está construindo um novo site. |
13 | 11 |
|
14 | 12 | ## Por que você precisa de um framework? |
15 | 13 |
|
16 | | -Para entender o que o Django é na verdade, precisamos olhar mais de perto os servidores. A primeira coisa que um servidor precisa saber é que você quer ele para disponibilizar uma página da Web. |
| 14 | +Para entender o que o Django é na verdade, precisamos olhar mais de perto os servidores. Lembra que falamos deles no início? A primeira coisa que um servidor precisa saber é que você quer ele para disponibilizar uma página da Web. |
17 | 15 |
|
18 | | -Imagine uma caixa de correio (porta) que é monitorada por cartas recebidas (requisição). Isso é feito por um servidor web. O servidor web lê a carta e envia uma resposta com uma página web. Mas, quando você quer enviar alguma coisa, você precisa ter um |
19 | | -conteúdo. E o Django é aquilo que vai lhe ajudar a criar esse conteúdo. |
| 16 | +Imagine uma caixa de correio (porta) que é monitorada por cartas recebidas (requisição). Isso é feito por um servidor web. O servidor web lê a carta e envia uma resposta com uma página web. Mas, quando você quer enviar alguma coisa, você precisa ter um conteúdo. E o Django é aquilo que vai lhe ajudar a criar esse conteúdo. |
20 | 17 |
|
21 | 18 | ## O que acontece quando alguém solicita um site do seu servidor? |
22 | 19 |
|
23 | | -Quando chega uma requisição para o servidor web, ela é passada para o Django, que tenta descobrir do que ela se trata. Primeiro |
24 | | -ele pega o endereço web e tenta descobrir o que fazer. Essa parte é feita pelo **urlresolver** do Django. (Note que o endereço de um site se chama URL - Uniform Resource Locator, em português Localizador de Recursos Uniforme, dessa forma o nome *urlresolver*, ou resolvedor de urls, faz sentido). Isso não é muito complexo - ele pega uma lista de padrões e tenta corresponder com a URL. O Django verifica os padrões de cima para baixo e, se algo é correspondido, passa a solicitação para a função associada (que é chamada *view*). |
| 20 | +Quando chega uma requisição para o servidor web, ela é passada para o Django, que tenta descobrir do que ela se trata. Primeiro, ele pega o endereço web e tenta descobrir o que fazer. Essa parte é feita pelo **urlresolver** do Django. (Note que o endereço de um site se chama URL - Uniform Resource Locator, em português Localizador de Recursos Uniforme, dessa forma o nome *urlresolver*, ou resolvedor de urls, faz sentido). Isso não é muito complexo - ele pega uma lista de padrões e tenta corresponder com a URL. O Django verifica os padrões de cima para baixo e, se algo é correspondido, passa a solicitação para a função associada (que é chamada *view*). |
25 | 21 |
|
26 | | -Imagine os Correios entregando uma carta. Uma funcionária vai andando por uma determinada rua e verificando o número de cada casa |
27 | | -com o que está na carta. Se ele corresponder, ela coloca a carta lá. É assim que funciona o urlresolver! |
| 22 | +Imagine os Correios entregando uma carta. Uma funcionária vai andando por uma determinada rua e verificando o número de cada casa com o que está na carta. Se ele corresponder, ela coloca a carta lá. É assim que funciona o urlresolver! |
28 | 23 |
|
29 | | -Todas as coisas interessantes são feitas dentro da *view*: podemos dar uma olhada no banco de dados para procurar algumas informações. Talvez o usuário queira mudar algo nos dados? Como uma carta dizendo: "Por favor mude a descrição do meu emprego." - a *view* checa se você tem permissão para fazer isso e então atualiza a descrição do emprego pra você, enviando em seguida uma mensagem: "Feito!". Então a *view* gera uma resposta e o Django pode enviá-la para o navegador web do cliente. |
| 24 | +Todas as coisas interessantes são feitas dentro da *view*: podemos dar uma olhada no banco de dados para procurar algumas informações. Talvez a usuária queira mudar algo nos dados? Como uma carta dizendo: "Por favor mude a descrição do meu emprego." - a *view* checa se você tem permissão para fazer isso e então atualiza a descrição do emprego pra você, enviando em seguida uma mensagem: "Feito!". Então a *view* gera uma resposta e o Django pode enviá-la para o navegador web do cliente. |
30 | 25 |
|
31 | 26 | Claro, a descrição acima é muito simplificada, mas você não precisa saber detalhes técnicos ainda. Ter uma ideia geral já é suficiente. |
32 | 27 |
|
|
0 commit comments