✏️
Jeito Vizir
  • Prefácio
  • Marco zero
  • Processo Base
  • Padrões de código
  • Git
  • CI & CD
  • Testes
  • Segurança
  • Caminhos
    • Front-End
    • Teste de Software
    • UX
  • Checklists
    • Base
  • Cookbooks
    • Criando APIs
  • Estilos
    • Configuração base de estilo
    • JavaScript
    • Ruby
Powered by GitBook
On this page
  • Nunca fazer
  • Fluxo de trabalho e git
  • Práticas de codificação
  • Ambiente de desenvolvimento e documentação

Was this helpful?

  1. Checklists

Base

A ideia do checklist abaixo, é auxiliar diferentes momentos do desenvolvimento, e principalmente o início do desenvolvimento, onde algumas escolhas são menos custosas.

Nunca fazer

  • Não adicionar chaves (da AWS, banco, etc) no projeto, usar sempre variável de ambiente

Fluxo de trabalho e git

  • Definir um padrão para o fluxo do git em todos os projetos.(pelo menos os novos)

  • Antes de fazer o PR/commit, analisar o código gerado com git diff e olhar por possíveis erros e melhorias que podem ser feitas

  • Gerar commits pequenos que facilitam o entendimento do que foi feito

    • git add --patch

  • Dividir os commits em escopo de responsabilidades. Às vezes rola de fazer um único commit e colocar na mensagem que fez X e Y. Nesse caso, melhor fazer dois commits separados, um para X e outro para Y. Se precisar reverter, fazer cherry pick de somente uma parte, facilita bastante

  • Enviar para o master sempre com no-ff

Práticas de codificação

  • Usar injeção de dependência

  • Separar código de infraestrutura, do código de domain

  • Não criar código procedural, evitando funções longas, ifs complexos, muito alinhamento (https://williamdurand.fr/2013/06/03/object-calisthenics/)

  • Não criar mais de 3 níveis de alinhamento

  • Separar as funcionalidades, primeiro em funções, depois em arquivos, camadas, módulos, etc (http://blog.caelum.com.br/principios-do-codigo-solido-na-orientacao-a-objetos/)

  • Encapsular códigos de terceiro para você poder ter controle sobre o uso dele e facilitar caso seja necessário trocar

  • Funções de controles devem ser pequenas e tratar apenas o retorno HTTP para o client

Ambiente de desenvolvimento e documentação

  • Rodar o projeto no docker

  • Criar um README e testar o README, principalmente o setup do projeto

  • Criar um CONTRIBUTING (https://pastebin.com/ndFpBTFr)

  • Se não estiver usando algum framework, ou estiver estendo alguns conceitos do framework, documentar qual a abordagem/conceitos estão sendo usados (ex: https://bitbucket.org/myvizir/bemvc-app/src/master/)

  • Configure o lint (https://bitbucket.org/myvizir/eslint-config-vizir/src/master/) e use o https://github.com/typicode/husky pra configurar rodar ele antes de cada push, e também rodar os testes

  • Definir se o projeto será documentado (README, Wiki, comentários, commits, etc) em pt-br ou en (en para código sempre)

  • Configurar o CI e CD do projeto (usar o BitBucket Pipelines)

PreviousChecklistsNextCookbooks

Last updated 5 years ago

Was this helpful?