Skip to content

Nomenclatura

João Victor Tavares Fróes edited this page Jun 26, 2025 · 5 revisions

Sumário

🧱 Conceitos Fundamentais

  • 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 (Controle de Versão)

  • 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 (Hospedagem de Código)

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.


🗂️​ Abas do GitHub

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.


🧭 Padrão de Projeto MVC (Model-View-Controller)

  • Model: Representa os dados e a lógica.

  • 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.


🎲​ Manipulação de Arquivos em Java


💾​ Estrutura de Projeto Java (com Visual Studio Code)

Clone this wiki locally