Versionando um sistema de verdade
Durante esta aula vamos entender como identificar diferentes versões de um site, sistema ou aplicativo.
Você verá exemplos práticos de MAJOR , MINOR e PATCH .
Aprendendo Versionamento
O que é Versionamento?
Identificando a evolução de um sistema.
Versionamento é uma forma de identificar as diferentes versões de um sistema, site ou aplicativo durante seu desenvolvimento.
Conforme o sistema recebe novas funcionalidades, melhorias ou correções de problemas, podemos alterar o número da versão.
Site
│
├── Versão 1.0.0
│
├── Versão 1.1.0
│
├── Versão 1.1.1
│
├── Versão 1.2.0
│
└── Versão 2.0.0
Como funciona uma versão?
Conhecendo MAJOR.MINOR.PATCH.
Um formato muito utilizado para representar versões é:
MAJOR
Grandes mudanças no sistema.
MINOR
Novas funcionalidades.
PATCH
Correções e pequenos ajustes.
MAJOR.MINOR.PATCH
2.1.3
2 = MAJOR
1 = MINOR
3 = PATCH
O que significa 2.1.3?
Interpretando cada número.
Primeiro número: 2
O número 2 representa a versão principal do sistema.
Uma mudança de 1 para 2 normalmente indica uma atualização importante ou uma mudança significativa.
Segundo número: 1
O número 1 representa uma nova funcionalidade adicionada à versão 2.
Terceiro número: 3
O número 3 representa uma correção ou atualização pequena realizada nessa versão.
2.1.3 significa que estamos na versão principal 2, com a atualização de funcionalidade número 1, e já foram realizadas correções incrementais nessa versão.
2.1.3
2 = MAJOR
1 = MINOR
3 = PATCH
MAJOR — Grandes mudanças
Quando o sistema recebe uma grande atualização.
O primeiro número representa o MAJOR.
Ele normalmente muda quando o sistema recebe uma grande atualização.
1.0.0
↓
2.0.0
↓
3.0.0
Imagine que temos um site simples na versão:
Depois o sistema recebe:
- Novo design
- Sistema de login
- Painel administrativo
- Banco de dados
- Novos recursos
Podemos considerar uma nova versão principal:
MINOR — Novas funcionalidades
Evoluindo o sistema sem uma grande mudança.
O segundo número representa o MINOR.
Ele pode ser alterado quando adicionamos uma nova funcionalidade sem realizar uma grande mudança no sistema.
1.0.0
↓
1.1.0
↓
1.2.0
↓
1.3.0
Exemplo
1.0.0
Site inicial.
1.1.0
Adicionada página de produtos.
1.2.0
Adicionada página de notícias.
PATCH — Correções
Corrigindo problemas e pequenos ajustes.
O terceiro número representa o PATCH.
Ele normalmente é utilizado para indicar correções de problemas e pequenos ajustes.
1.2.0
↓
1.2.1
↓
1.2.2
↓
1.2.3
Imagine que encontramos um erro no formulário.
Corrigimos o problema:
Encontramos outro problema:
Outra correção:
Exemplos de versões
Comparando diferentes versões.
Observe como cada alteração pode representar um tipo diferente de evolução.
| Versão | Tipo | Exemplo |
|---|---|---|
| 1.0.0 | Inicial | Primeira versão do sistema |
| 1.1.0 | MINOR | Nova funcionalidade |
| 1.1.1 | PATCH | Correção de problema |
| 1.1.2 | PATCH | Outra correção |
| 1.2.0 | MINOR | Nova funcionalidade |
| 2.0.0 | MAJOR | Grande atualização |
| 2.1.0 | MINOR | Nova funcionalidade |
| 2.1.3 | PATCH | Correções |
Versionamento com JavaScript
Mostrando automaticamente a versão no HTML.
Podemos armazenar a versão em uma variável JavaScript.
const versao = "2.1.3";
Depois podemos colocar essa informação automaticamente no HTML.
HTML
<p>
Versão <span id="versao"></span>
</p>
JavaScript
const versao = "2.1.3";
document.getElementById("versao").textContent = versao;
Versão 2.1.3
Demonstração interativa
Simulando a evolução de um sistema.
Clique nos botões para simular diferentes tipos de alteração em um sistema.
Versão atual:
Correção altera o PATCH.
Grande atualização altera o MAJOR.
Exercício — Sistema Escolar
Aplicando MAJOR.MINOR.PATCH.
Situação
Você está desenvolvendo um Sistema Escolar .
A primeira versão do sistema possui:
- Página inicial
- Alunos
- Professores
Questão 1
Foi adicionada uma página de cursos.
Qual seria a nova versão?
Questão 2
Foi corrigido um erro no cadastro de alunos.
Qual seria a nova versão?
Questão 3
Foi realizada outra correção.
Qual seria a nova versão?
Questão 4
O sistema recebeu uma grande reformulação.
Qual seria a nova versão?
1. 1.1.0
2. 1.1.1
3. 1.1.2
4. 2.0.0
Ela representa a evolução do sistema.
2.1.3
2 = MAJOR
1 = MINOR
3 = PATCH
Versione seu próprio projeto
Agora aplique o conhecimento em um site ou sistema que você esteja desenvolvendo.