# Padrões em Front-ends

Bacherelado em Ciências da Computação - Instituto de Matemática e estatística da Universidade de São Paulo

  • Aluno: Francisco Eugênio Wernke
  • Orientador: Fabio Kon
  • Coorientadores: João Daniel Francisco e Renato Cordeiro

# Monografia

Baixar monografia

# Introdução

Este site visa documentar a criação do Trabalho de Conclusão de Curso sobre Padrões Arquiteturais para interfaces (Front-ends).

# Contextualização

Ao longo do tempo, desenvolvedores criaram várias soluções diferentes para problemas que se repetem em vários contextos. A partir destas soluções, extraímos vários aprendizados e conseguimos discernir as que são:

  • Fáceis de serem compreendidas;
  • Escalam bem;
  • São reutilizáveis para vários contextos;
  • São enxutas e simples.

Essas soluções ganharam a alcunha de Padrões Arquiteturais (Design Patterns). São padrões pois aparecem diversas vezes em várias bases de código e são arquiteturais pois organizam o código para um determinado propósito.

# Proposta

Este projeto pretende fornecer um ferramental (ou toolbox) composto de padrões de projetos para a construção de interfaces. Discutiremos padrões de organização de código que são comumente usados para o controle, organização e contextualização de informações e visualizações interativas. Há um grande conjunto de padrões que dizem respeito ao leiaute da interface, porém vamos tratar somente da organização do código.

O meio de propagação deste material será um curso, composto por aulas direcionadas ao público já letrado em Ciências da Computação e Engenharia de Software. Este curso pretende, como introdução, explicar a importância deste ferramental e, posteriormente, aprofundar-se em vários Padrões Arquiteturais de Front-end. A cada aula, teremos um enfoque em determinado Padrão Arquitetural.

# Objetivos

Este trabalho pretende:

  • Convencer o leitor que o uso de padrões arquiteturais em interfaces leva à melhor manutenção, eficiência e escalabilidade do código, dentre outras vantagens;
  • Criar uma documentação fácil de ser consultada por qualquer desenvolvedor de interfaces;
  • Apresentar exemplos de uso, vantagens e desvantagens de uma lista de padrões arquiteturais em interfaces;
  • Criar o material de apoio para um curso de padrões arquiteturais, com conteúdo suficiente para o curso ser ministrado a partir deste material.