Skip to content

About

Sistema de gerenciamento de tarefas desenvolvido em sala para matéria de Frontend II

Resources

Stars

0 stars

Watchers

0 watching

Forks

 
 

Latest commit

 

History

88 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Instituto Federal de Santa Catarina - Análise e Desenvolvimento de Sistemas - Programação Frontend II - 2025.1


Projeto 1 / Sistema de Gerenciamento de Tarefas : Vinagrito

Programação Orientada a Objetos


Pimentão Amarelo Pimentão Verde Pimentão Vermelho


Professor: Adriano Lima
Equipe: Júlia Manuela Turnes, Sofia Alves Toreti e Sant Semeghini

Podre Claro Nosso Projeto

Vinagrito é um sistema de gerenciamento de tarefas projetado para acompanhar os usuários em suas diversas atividades diárias. Por meio da criação de listas personalizáveis, o Vinagrito permite que o usuário agrupe tarefas, defina prioridades, prazos, descrições e datas, facilitando a visualização, organização e conclusão de suas metas.


Pimentão Amarelo



Podre Claro Conceitos de POO utilizados

  1. Encapsulamento

    1. Em programação orientada a objetos, o “encapsulamento” refere-se a “esconder” atributos de uma classe de quem for utilizá-la, tornando-os inacessíveis fora da classe. Na implementação do Vinagrito, esse conceito foi utilizado para garantir que a lógica interna estivesse protegida de modificações e/ou acessos indevidos, promovendo a segurança e integridade do código.

    2. Pode ser visto na classe DOM, a qual utiliza métodos e propriedades privadas, como #qtdLista, #renderizarLista, #newTask e etc.. (linhas de código 42, 52, 85 em DOM.js)


  1. Polimorfismo

    1. O “polimorfismo” é a maneira com que objetos de diferentes classes podem responder à mesma situação de formas diferentes, por meio de heranças, interfaces ou classes abstratas. Na implementação do Vinagrito, esse conceito é visto na classe Dialog, a qual se altera em diferentes aplicações, expressando a mesma interface com diferentes comportamentos.

    2. Pode ser visto em :

      “this.taskDialog” → Resulta na criação de uma nova tarefa, chamando #newTask (linhas de código 14 e 223 em DOM.js),
      “editarDialog” → Resulta na edição de uma lista, chamando #editarLista (linhas de código 215 e 218 em DOM.js).


  1. Abstração

    1. Outro pilar da POO é a "abstração", um conceito que visa o foco nos aspectos essenciais do objeto, criando um modelo simplificado de algo complexo. No Vinagrito, esse conceito pode ser visto na classe DOM, a qual oculta detalhes da manipulação de listas e tarefas, utilizando-se de métodos públicos como loadListasFromStorage() e newList(). Usos assim permitem que o código seja segmentado e funcional no contexto de equipe e eficiência do código.

    2. (linhas de código 17 e 78 DOM.js)


  1. Instanciação de Objetos

    1. Em POO, a “instanciação de objetos” consiste na criação de objetos a partir de uma classe, propiciando a modelagem de entidades do mundo real, assim como a flexibilização do código. No Vinagrito, isso foi utilizado através da chamada do construtor do objeto, o qual carrega seu próprio conjunto de dados e comportamentos.

    2. Pode ser visto em :

       // main.js (linhas de código 5 e 10)
      
          const dom = new DOM();
          new Dialog(criarLista, callback);
      
      
      // Controle.js (linha de código 30)
      
          const novaLista = new Lista(data);
      
      

  1. Relacionamento

    1. A “associação” ou “relacionamento” entre duas ou mais classes é um conceito fundamental da POO, onde uma classe utiliza objetos de outra como parte de sua operação. No Vinagrito, isso foi utilizado para garantir a simplificação de testes e instanciações.

    2. Pode ser visto em :

       // DOM.js (linhas de código 10, 14 ..)
      
        this.controle = new Controle();
        this.taskDialog = new Dialog(...);
      
      

About

Sistema de gerenciamento de tarefas desenvolvido em sala para matéria de Frontend II

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages