Desenvolvedor front-end, backend e full stack: se você é um programador, ou está estudando isso, você com certeza já ouviu pelo menos um desses três termos.
Você vai ler nesse artigo:
Front-End: Um guia simples para entender
Empresas de desenvolvimento on-demand, e até mesmo de software comercial, travam diariamente uma batalha envolvendo a necessidade e a escassez de profissionais com skills técnicos e maturidade profissional consolidada.
Chegamos ao ponto onde o mundo dos profissionais de desenvolvimento está sendo definida e resumida em apenas três diferentes tipos de programadores:
- Front-end
- Back-end
- Full stack
Neste artigo criamos um breve guia sobre desenvolvedores front-end, back-end e fullstack. A seguir definiremos o conceito de cada um desses profissionais, suas atribuições, conhecimentos desejados e enquadramentos possíveis.
O que Front-End
É óbvio dizer que um desenvolvedor front-end se concentra na construção da interface de um sistema, seja ele software, SaaS ou até mesmo um site. Mas afinal, o que significa front-end?
Front-end pode ser definido como a parte visível de um software ou site. É na interface visual onde o usuário de fato interage com o sistema, por isso é comum chamarmos ela de interface de usuário.
Qualquer resposta esperada pelo usuário será fornecida pelo front-end, dessa maneira se desconsiderarmos problemas com requisitos não funcionais – performance e disponibilidade, por exemplo, toda a experiência do usuário será baseada nesta interface.
Se considerarmos sistemas baseados na web, a construção de qualquer interface de usuário é baseada em três principais pilares: HTML, CSS e JavaScript. A seguir vamos entender um pouco mais de cada um.
HTML: Define o que será exibido
Qualquer profissional de desenvolvimento de software e até mesmo das demais áreas da tecnologia da informação já conhece de alguma forma a linguagem HTML. O contato com esta linguagem se estende a qualquer pessoa que de alguma maneira já utilizou a web.
HTML é o acrônimo de ‘HyperText Markup Language’, traduzido normalmente para o português como: ‘Linguagem de Marcação de HiperTexto’.
Como já dito, o HTML é uma linguagem de marcação – markup, construída com uma infinidade de instruções e marcadores universais, que são interpretados pelos browsers (navegador de internet como o Google Chrome, Mozilla Firefox, Microsoft Edge e outros).
A partir dessa interpretação, o navegador organiza a interface de usuário, conforme aquilo que foi especificado pelas tags de marcação.
A entidade responsável pelo manutenção de gestão desta tecnologia é a W3C – Wide Web Consortium. Atualmente ela está em sua 5ª versão.
Em referência à versão atual, é normal encontrarmos o termo HTML5, também é válido esclarecer que a versão 5 da linguagem possui algumas sub-versões.
CSS: Define como a informação será exibida
Já entendemos que o HTML é o responsável por definir e apresentar aquilo que deve ser exibido, mas quem determina como as informações serão exibidas é o CSS – Cascading Style Sheets, que em português pode ser chamada simplesmente de ‘folhas de estilo’.
É o CSS que faz toda a mágica visual acontecer, ele é responsável por determinar toda a aparência da interface de usuário: dimensões e posicionamento dos elementos, cores e efeitos, formatação de fonte, inserção de imagens. Enfim, são as folhas de estilo que definem como tudo será exibido.
A combinação dessas duas linguagens, CSS e HTML foi por muito tempo utilizada somente no desenvolvimento de sites, mas isso mudou radicalmente quando o JavaScript foi aceito e incluído nesse cenário.
JavaScript: Torna tudo interativo e funcional
Você não deve nunca cometer o erro de confundir JavaScript com Java. Cada uma delas são linguagens de programação independentes, que possuem aplicação e função totalmente diferentes.
O JavaScript é uma linguagem de script – por vezes chamada apenas de JS, criada especificamente para ser utilizada no desenvolvimento de interfaces de usuário – interface visual.
A utilização do JavaScript não se resume apenas em animações, modals e joguinhos de navegador. Foi através do uso do JS que foi possível desenvolver sites e sistemas web interativos e totalmente funcionais.
A evolução da internet e da web direcionou esta linguagem à uma evolução fantástica, que possibilita hoje, a construção de sistemas complexos, estáveis e seguros totalmente baseados nela.
O dinamismo e aplicabilidade do JavaScript é exponencialmente aumentada através da criação e uso de patterns, libraries e frameworks, permitindo que projetos de desenvolvimento de software utilizando essa linguagem sejam mais eficientes e assertivos.
Frameworks JS: Tornando tudo mais simples e rápido
De forma simples é possível resumir uma biblioteca JavaScript – library em inglês, como um conjunto de funções, recursos e objetos que podem ser utilizados comumente entre os mais diferentes componentes.
O uso de frameworks e bibliotecas JS fornecem uma série de vantagens durante o desenvolvimento do projeto:
- Rapidez: Através da utilização de funções previamente desenvolvidas possibilita uma significativa economia de tempo durante o desenvolvimento.
- Confiabilidade: O desenvolvimento e manutenção da maioria dos frameworks é feita por uma comunidade internacional (magia do open source) composta por milhões de desenvolvedores que contribuem para a garantia da qualidade de cada recurso.
- Preço: A maioria dos frameworks são open source, dessa maneira não possuem custo, é claro que deve ser observado também, que muitos frameworks são gratuitos, porém com limitações de versionamento, suporte ou recursos. A utilização de um framework deve ser estudada cuidadosamente em cada projeto.
Principais frameworks JavaScript
O pessoal da beCode organizou uma lista exelente sobre 6 frameworks em JS fantásticos. Clique aqui para acessar a lista dos 6 melhores frameworks de desenvolvimento front-end.
Pronto para começar no mundo do desenvolvimento Front End?
Saiba mais sobre gerenciamento de projetos
Se você está ingressando no mercado de gerenciamento de projetos, se é estudante de algum curso de graduação e pós-graduação ou simplesmente deseja conhecer mais sobre como funciona o gerenciamento de um projeto, recomendamos a leitura dos seguintes artigos: