Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Wiki Wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Sem Barreiras
  • WikiWiki
  • Wiki
  • backend

backend · Changes

Page history
Update backend authored Mar 17, 2024 by Fernanda Ferreira de Mello's avatar Fernanda Ferreira de Mello
Hide whitespace changes
Inline Side-by-side
backend.md
View page @ 8005cae2
......@@ -9,8 +9,11 @@ Esta página centraliza informações sobre o [repositório Backend do projeto S
- [Organização do repositório](#organização-do-repositório)
- [Padrões de código](#padrões-de-código)
- [Nomenclatura](#nomenclatura)
- [Tratamento de exceções](#tratamento-de-exceções)
- [Nomenclatura de classes](#nomenclatura-de-classes)
- [Nomenclatura de variáveis](#nomenclatura-de-variáveis)
- [Nomenclatura de métodos](#nomenclatura-de-métodos)
- [Tratamento de exceções](#tratamento-de-exceções)
- [Documentação do Swagger](#documentação-do-swagger)
## Organização do repositório
......@@ -33,10 +36,59 @@ Diante disso, os pacotes do projeto estão divididos da forma abaixo:
## Padrões de código
### Nomenclatura
### Nomenclatura de classes
Classes do projeto devem ser nomeadas em inglês e seguir o padrão **PascalCase**, ou seja, devem iniciar com letra maiúscula e cada palavra ou abreviatura no meio da frase também deve iniciar com letra maiúscula. Por exemplo:
- UserController :heavy_check_mark:
- User_Controller :x:
- Usercontroller :x:
- userController :x:
Além disso, com exceção do pacote model, os nomes das classes devem refletir o pacote onde elas estão localizadas, conforme o exemplo abaixo:
- :file_folder: config: ExemploConfig
- :file_folder: controller: ExemploController
- :file_folder: dt.request: ExemploRequest
- :file_folder: dt.response: ExemploResponse
- :file_folder: exception: ExemploException
- :file_folder: repository: ExemploRepository
- :file_folder: service: ExemploService
- :file_folder: util: ExemploUtil
### Nomenclatura de variáveis
Variáveis devem ser nomeadas em inglês e seguir o padrão **camelCase**, ou seja, devem iniciar com letra minúscula e cada palavra ou abreviatura no meio da frase deve iniciar com letra maiúscula. Por exemplo:
- isAdmin :heavy_check_mark:
- isadmin :x:
- is_Admin :x:
- IsAdmin :x:
A exceção são as variáveis constantes (que devem ser estáticas e finais) e enums, que devem seguir o padrão **SCREAMING_SNAKE_CASE**, onde as palavras no meio da frase são separadas por *underscores* (_) e as letras devem ser todas maiúsculas. Por exemplo: API_BASE_URL
Além disso, para criar um código limpo e fácil de entender e realizar a manutenção depois, sempre nomeie as variáveis de forma que fique claro o seu propósito/o tipo de informação que ela possui. Para isso, seguem algumas dicas:
- Evitar abreviações.
- Para variáveis booleanas, não nomear apenas com substantivos, para deixar claro que é um booleano. Por exemplo, ao invés de "publish", usem "isPublished".
- Criar variáveis fáceis de pronunciar.
- Evitar dar nomes muito parecidos para duas variáveis.
- Não usar números mágicos. Se existir algum número que precisa ser utilizado no código, criar uma variável para este número para deixar claro o que ele significa.
### Nomenclatura de métodos
Variáveis devem ser nomeadas em inglês e seguir o padrão **camelCase**, ou seja, devem iniciar com letra minúscula e cada palavra ou abreviatura no meio da frase deve iniciar com letra maiúscula. Por exemplo:
- findUserByName :heavy_check_mark:
- finduserbyname :x:
- find_User_By_Name :x:
- FindUserByName :x:
Além disso, para facilitar a leitura do código, em uma classe os métodos sempre devem estar organizados na ordem abaixo:
1. Métodos `public`
2. Métodos `protected`
3. Métodos `private`
## Tratamento de exceções
TODO
### Tratamento de exceções
## Documentação do Swagger
TODO
Clone repository
  • Banco de Dados
  • Sprint 0
  • Sprint 1
  • Sprint 2
  • Sprint 3
  • Sprint 4
  • arquitetura
  • backend
  • configuracao
  • design_mockups
  • escopo
  • frontend
  • gerencia
  • Home
  • processo
View All Pages