Skip to content

Reutilização Django

1. Versionamento

Versão Data Descrição Autor(es)
1.0 27/03/2022 Abertura do documento Thiago
1.1 27/03/2022 Adição da introdução Thiago
1.2 27/03/2022 Adição dos plugins Thiago
1.3 27/03/2022 Revisão por pares Brenno e Carlos

2. Introdução

O back-end da Caderneta de Campo digital também reutilizou diversos softwares para conseguir prover um serviço web, visando aumentar a qualidade do produto e a produtividade da equipe. Dessa forma, o Django foi o framework escolhido para implementação do back-end.

O Django é um framework web python de alto nível que permite desenvolver de forma rápida, segura e manutenível um serviço web [1]. Ele fornece diversas ferramentas que facilitam o desenvolvimento. Uma delas, Django ORM, permite fazer um mapeamento objeto-relacional e foi muito utilizada para a comunicação com o banco de dados relacional.

A comunicação entre o front-end e back-end é por meio de uma API REST. O Django Rest Framework, que é uma extensão do Django [2], concede uma grande liberdade, fornecendo ferramentas, como serializers, rotas e validações pré-prontas, para reutilização e implementação de uma API REST.

3. Plugins

Também foi utilizado plugins para complementar as funcionalidades do Django e do Django Rest Framework. Eles foram muito úteis, uma vez que fornecem diversos serviços feitos e testados pela comunidade para que não haja a necessidade de reinventar a roda. Os plugins são listados abaixo.

  • django-cors-headers: adiciona cabeçalho do tipo Cross-Origin Resource Sharing (CORS) nas respostas.
  • djangorestframework-simplejwt: fornece autenticação por meio de JSON Web Token.
  • django-fake-model: permite criar instâncias falsas de uma entidade do banco de dados para serem utilizadas em testes.
  • django-filter: fornece novos meios de filtrar os conjuntos de dados do Django ORM.
  • django-phonenumber-field: fornece um campo de número de telefone para as entidades do Django ORM
  • django-polymorphic: simplifica o uso de herança em entidades do Django ORM.

4. Referências

[1] Django introduction. Disponível em: https://developer.mozilla.org/en-US/docs/Learn/Server-side/Django/Introduction. Acesso em: 27 mar. 2022.

[2] O que é o Django Rest Framework. Disponível em: https://www.treinaweb.com.br/blog/o-que-e-o-django-rest-framework. Acesso em: 27 mar. 2022.