-
Notifications
You must be signed in to change notification settings - Fork 25
Nomenclatura
- 🧱 Conceitos Fundamentais
- 🔹 Git (Controle de Versão)
- 🔸 GitHub (Hospedagem de Código)
- 🗂️ Abas do GitHub
- 🧭 Padrão de Projeto MVC (Model-View-Controller)
- 🎲 Manipulação de Arquivos em Java
- 💾 Estrutura de Projeto Java (com Visual Studio Code)
-
Classe: Estrutura que define os atributos (variáveis) e comportamentos (métodos) de um objeto. Ex: class Pessoa { ... }
-
Objeto: Instância de uma classe, criada com a palavra-chave new. Ex: Pessoa p = new Pessoa();
-
Atributo: Variáveis dentro da classe que representam características do objeto. Ex: String nome;
-
Método: Funções dentro da classe que definem comportamentos. Ex: public void falar() { ... }
-
Encapsulamento: Princípio que oculta os dados internos de um objeto. Usa modificadores como private, public, protected.
-
Herança: Capacidade de uma classe herdar atributos e métodos de outra. Ex: class Aluno extends Pessoa { ... }
-
Polimorfismo: Permite que métodos com o mesmo nome se comportem de formas diferentes dependendo da classe.
-
Abstração: Ocultar detalhes e expor apenas o essencial do objeto. Pode ser feita com classes abstratas (abstract) e interfaces.
-
Construtor: Método especial que inicializa objetos. Tem o mesmo nome da classe. Ex: public Pessoa(String nome) { ... }
-
Interface: Contrato que define métodos que uma classe deve implementar. Ex: interface Animal { void emitirSom(); }
-
Pacote (package): Organização lógica de classes. Ex: package com.meuprojeto.models;
-
Importação: Uso da palavra-chave import para trazer classes de outros pacotes.
-
Modificadores de acesso - Visualizadores:
-
public: Acessível de qualquer lugar.
-
private: Acessível apenas dentro da classe.
-
protected: Acessível dentro do pacote e por herança.
-
-
this: Referência ao próprio objeto atual.
-
Sobrecarga (Overload): Vários métodos com o mesmo nome, mas diferentes parâmetros.
-
Sobrescrita (Override): Redefinir um método herdado da superclasse.
-
Git: Sistema de controle de versões que registra o histórico de alterações em arquivos e projetos.
-
Repositório (repo): Local onde o projeto com controle de versão é armazenado.
-
git remote add origin : Liga o repositório local ao repositório remoto no GitHub.
-
git push: Envia as alterações do repositório local para o remoto. Ex: git push origin main
-
git pull: Atualiza o repositório local com as alterações do remoto.
-
git init: Cria um novo repositório Git no diretório atual.
-
git clone: Copia um repositório remoto (do GitHub, por exemplo) para sua máquina local.
-
git status: Mostra o estado atual dos arquivos monitorados e não monitorados.
-
git add: Adiciona arquivos ao stage (preparação para o commit). Ex: git add Main.java
-
git commit -m "mensagem": Salva alterações com uma mensagem descritiva.
-
git log: Lista o histórico de commits.
-
git diff: Mostra o que foi modificado desde o último commit.
-
git branch: Lista ou cria ramificações (branches) do projeto.
-
git checkout: Troca entre branches ou versões antigas. Ex: git checkout desenvolvimento
-
git merge: Une alterações de outra branch na atual.
-
.gitignore: Arquivo onde se define os arquivos/pastas que o Git deve ignorar (como bin/, *.class).
GitHub: Plataforma para armazenar repositórios Git na nuvem e colaborar em projetos.
Repositório remoto: Versão do repositório hospedada no GitHub. Pode ser acessada por qualquer membro autorizado.
Fork: Cópia de um repositório GitHub para sua própria conta, para estudar ou contribuir.
Pull Request (PR): Proposta de alteração em um projeto. Usado em projetos colaborativos.
README.md: Arquivo em Markdown com descrição do projeto.
Code (ou "Código")
-
Função: Exibe todos os arquivos do repositório (código fonte, pastas, README, etc.).
-
Aqui você também encontra:
-
O botão verde "Code" para copiar o link de clonagem (HTTPS, SSH ou GitHub CLI).
-
O histórico de commits recentes.
-
A seleção de branches (ramificações do projeto).
-
-
📌 É a aba principal onde o código está disponível para visualização e download.
Issues
-
Função: Gerencia tarefas, bugs, melhorias e sugestões relacionadas ao projeto.
-
Qualquer usuário (com permissão) pode abrir uma issue, como: “Erro ao compilar”, “Adicionar login”, etc.
-
Pode ser comentada, atribuída a pessoas, marcada com labels e milestones.
📌 Usada como ferramenta de gerenciamento ágil para organizar o que precisa ser feito.
Pull Requests (ou PRs)
-
Função: Mostra todas as propostas de alterações feitas no código.
-
Um PR é criado quando alguém edita o projeto e deseja que essa mudança seja adicionada à branch principal (main, master, etc.).
-
Os donos do projeto podem revisar, comentar, testar e aceitar (merge) ou rejeitar a alteração.
-
📌 Muito usada em projetos colaborativos com vários desenvolvedores.
Actions
-
Função: Configura integrações automáticas (CI/CD) como testes, builds, deploys.
-
Usa arquivos .yml em .github/workflows/.
-
Exemplo: rodar testes automaticamente toda vez que alguém fizer um push.
Projects
-
Função: Área de gerenciamento de projeto, usando quadros estilo Kanban.
-
É possível criar colunas como: “A Fazer”, “Em Andamento”, “Concluído”.
-
Pode ser vinculado a issues e pull requests.
Wiki
-
Função: Criação de páginas de documentação estruturada.
-
Exemplo: como rodar o projeto, padrões de código, instruções de uso etc.
-
Ideal para projetos maiores ou que envolvem muitas pessoas.
-
📌 Uma espécie de "manual" interno do projeto.
Security
-
Mostra alertas de segurança, dependências vulneráveis e permite configurar regras de proteção de branches e permissões.
-
Pode integrar com Dependabot para alertas automáticos.
Insights
-
Função: Gráficos e estatísticas sobre o repositório.
-
Exibe:
-
Atividade dos contribuidores.
-
Commits por período.
-
Principais autores.
-
Gráfico de rede de branches.
-
Settings Função: Configurações do repositório.
-
Aqui você pode:
-
Alterar o nome, descrição e visibilidade (público/privado).
-
Configurar Webhooks, GitHub Pages.
-
Gerenciar colaboradores, permissões e branches protegidas.
-
-
Ex: classes como Aluno, Livro, Conta.
-
View: Interface com o usuário.
-
Ex: menus, telas de entrada (Swing, JavaFX ou console).
-
Controller: Intermedia as ações entre View e Model.
-
Ex: classe que recebe ações da interface e executa lógica.
✅ O padrão MVC facilita manutenção, organização e escalabilidade do sistema.