Parece um pouco estranho misturar as palavras “criatividade” com “processo”. Porém, a nossa criatividade muitas vezes é “criativa demais” e acaba mais nos atrapalhando do que ajudando, pois muitas vezes nos faz sair do nosso foco principal.
Devido a isso, é importante que pensemos em como estabelecer uma linha de pensamento. Até para processos que em são em si criativos, ter um guia é sempre bom! Qualquer processo de design e criação tem suas metodologias, que ajudam, e muito, a te orientar para já saber o que fazer.
Neste conteúdo, voê irá conferir um breve exemplo de metodologia para criação de componentes no Front-end.
Criando nosso processo
Primeiramente, o que o nosso processo vai fazer?
Basicamente, vamos elaborar algumas etapas do que fazer e em que ordem fazer. É claro que isso pode variar mas, via de regra, vai nos ajudar bastante a parar de ficar olhando para a tela do computador, sem saber o que fazer e se perguntando “por onde eu começo?”.
Escolhendo as ferramentas
Neste exemplo, irei criar um componente em React, usando styled-components na estilização, typescript para a tipagem, o storybook para prototipar, e o jest para testar.
Atenção! Não se atente muitos aos códigos, eles são meramente ilustrativos e para nos orientar nos processos, o importante é entender a metodologia e como estabelecer uma linha de pensamento produtiva.
1º Passo – Visualizar o componente
Pense no que você vai fazer, pegue inspirações, designs, faça um esboço, etc. Mas tenha em mente o que será o seu componente.
2º Passo – Defina o que ele vai receber
Com o componente visualizado e sabendo o que ele vai fazer, é fácil saber o que ele precisa receber. Já aproveite e faça isso direto na typagem.
Agora que já sabemos o que o nosso componente irá receber, vamos fazer os testes do que vamos esperar que aconteça quando o nosso componente receber cada uma dessas propriedades. Isso irá nos guiar para sabermos o que vamos implementar mais para frente.
Se você não utiliza testes, não se preocupe, você pode apenas pular essa etapa. Mas, se ainda não tem o hábito de fazer testes, dê uma olhada! Testes são ótimos para manter boas práticas, aplicações escaláveis, e garantir de que nada vai quebrar de repente nas suas aplicações.
Lembrando que o “TDD” em si, significa fazer os testes antes de qualquer outra coisa, mas eu, particularmente, acabo variando um pouco a esse respeito no frontend, pois criar a estrutura de dados inicial às vezes me ajuda a ter uma ideia melhor e mais “prática” do que eu realmente tenho que testar, e me evita alguns retrabalhos. Porém, isso é bem variável, e dependendo do componente, essa etapa pode ser facilmente a etapa 7º, ou qualquer outra.
Agora vamos criar cada elemento do nosso componente para que ele fique com os estilos bem escopados e definidos. No nosso caso, vamos usar o styled-components:
Já temos nossos argumentos e nossos elementos, está na hora de preparar nosso código para começarmos o design e a prototipação. Para isso, vamos colocar alguns valores defaults na nossa story:
// stories.tsx
import { Story, Meta } from '@storybook/react'
import Banner, { BannerProps } from '.'
export default {
title: 'Banner',
component: Banner
} as Meta
export const Default: Story<BannerProps> = (args) => <Banner {...args} />
Default.args = {
img: '<https://images.unsplash.com/photo-1504630083234>',
title: 'ATP Coffee',
subtitle: '<p>The <strong>best</strong> coffee in the world',
buttonLabel: 'Compre agora',
buttonLink: '/products/atp-coffee'
}
6º Passo – Incluindo os elementos
Com o protótipo recebendo nossos argumentos e nossos elementos criados, agora vamos criar a estrutura dos nossos elementos no nosso componente:
Pronto, finalizamos o nosso processo de criação e já temos nosso componente pronto:
Concluindo
Esta é a metodologia que eu normalmente utilizo para criar meus componentes no Front-end, onde eu crio uma linha de pensamento para orientar a minha mente, saber exatamente qual é o próximo passo e no que eu preciso pensar. Mas tudo isso varia bastante de pessoa para pessoa e a minha sugestão é que você adapte da melhor maneira para você, e que este método te guie como exemplo.
No atual cenário de desenvolvimento de software, a pressão por eficiência e velocidade de entrega nunca foi tão intensa. Empresas de todos os tamanhos estão buscando maneiras de acelerar o
Quando falamos em gestão de um time de engenharia de software, os principais desafios que vem à cabeça são como estimar as atividades, e como lidar com as expectativas dos
Se você trabalha na área de engenharia de software, e se interessa por gestão de projetos, com certeza já deve ter ouvido falar na metodologia Shape-up ou no produto desenvolvido