A área de desenvolvimento é bastante ampla e de múltiplas habilidades. Até que um produto final chegue nas mãos dos usuários, há um longo processo que vai desde o planejamento de negócios até a publicação. Uma etapa importante neste emaranhado é o desenvolvimento front-end, responsável pela aparência das aplicações e comumente confundido com o papel do design.
Entenderemos melhor do front-end a seguir.
O que é front-end?
O desenvolvimento front-end é o responsável por criar as interfaces visuais as quais os usuários interagem. Dessa forma, os profissionais da área são os que entendem dos códigos para construir aquilo que foi projetado pelos designers. Ou seja, ainda que o trabalho de uma pessoa front-end seja com o visual, ele não projeta o visual das aplicações e sim dá vida à elas através do código.
Os profissionais front-ends podem desenvolver interfaces tanto para softwares desktop como websites, ferramentas web e aplicativos — embora seja menos comum chamarmos desenvolvedores mobile de front-end.
Diferença front-end e back-end
Ainda que o front-end se comunique com o back-end, suas atribuições são diferentes. Enquanto o front é responsável pela interface, o back-end está por trás através das regras de negócios, construção de APIs e SDKs, funcionalidades e também manipulação do banco de dados. Dito isso, um precisa do outro para que uma aplicação chegue completa até os usuários.
Para ser mais claro, vamos imaginar o cenário de uma interface de um chat entre duas pessoas. Para que os usuários digitem suas mensagens e as veja na tela, há todo um trabalho do front-end para a construção daquele visual.
Enquanto isso, a atuação do back-end está na ação após o clique, no qual o front-end conecta o botão com um endpoint que acionará as regras trabalhadas pelo back-end até que a mensagem chegue ao servidor e seja transmitida para o remetente.
Por isso chamamos “back-end” de “back”, pois interagimos com ele de forma indireta, sendo acionado a partir do front-end. Com isso, ambas as áreas são complementares
Tecnologias usadas pelo front-end
São várias as tecnologias que podem ser utilizadas, desde linguagens de programação, de estilo, demarcação assim como frameworks e bibliotecas que auxiliam no desenvolvimento. As três tecnologias básicas a serem utilizadas são o HTML, CSS e JavaScript, mas ainda há várias outras:
JavaScript
O JavaScript é a principal linguagem de programação utilizada. É através dela que as pessoas desenvolvedoras escrevem as regras e funções para as interfaces. Em analogias, o JS é como o cérebro e o sistema nervoso de nosso corpo, pois ele traz movimento e vida para o corpo.
HTML
Ainda dentro da analogia, o HTML é a linguagem de demarcação, funcionando com o esqueleto de nossos corpos. É com ele que determinamos a estrutura dos sistemas, sinalizando quais informações são partes da tag <head>, <body> e <footer>, por exemplo.
CSS
Já o CSS é responsável pelo estilo, uma vez que a sigla significa Cascading Style Sheets. Dentro da analogia, ele é como a pele e demais características físicas que possuímos em nossos corpos. Com ele determinamos as cores, formatos, tamanhos, animações, dentre outros fatores.
Bibliotecas e frameworks front-end
Os frameworks são estruturas de códigos já pré-prontas feitas para otimizar o desenvolvimento. A partir deles adquirimos funções disponíveis para a criação de sites e ferramentas web.
A principal vantagem de utilizá-los é o aumento da produtividade com o ganho de tempo uma vez que os códigos já estão prontos, evitando construí-los do zero. No entanto, a utilização de frameworks JavaScript não dispensa a necessidade de conhecer a linguagem de programação, pois ainda será necessária a aplicação da linguagem e habilidades de lógica de programação.
Dos frameworks JavaScript mais utilizados, podemos destacar:
React
Criado em 2011 por desenvolvedores do Facebook, a biblioteca React surgiu para facilitar a manutenção do código. Afinal, a crescente no volume de funcionalidades fez com que a equipe também precisasse crescer para manter a aplicação estável e dar a devida manutenção.
Muitas escolas de programação focam seus esforços em ensinar o React por ter grande aceitação no mercado.
VueJS
Criado de forma independente em 2014 pelo engenheiro Evan You, o Vue é um framework open source que mantém Evan como seu líder.
O framework é principalmente utilizado para a criação de Single Page Application, isto é, aplicações de página única como o caso de painéis administrativos, também chamados de dashboards. Uma de suas principais características é a alta performance e também rígido comportamento para paradigma reativo.
Angular
Com uma abordagem orientada a componentes e baseado em typescript, o Angular é uma versão aprimorada do Angular JS, também desenvolvido pelo Google.
Das suas vantagens podemos destacar a injeção de dependência bem como maior facilidade para a manutenção dos sistemas, roteamento e gerenciamento de estados manipulação de formulários.
Bootstrap
Já com o objetivo de facilitar a estilização através do css de sites e sistemas web, o bootstrap foi criado para o Twitter (atual X) pelos engenheiros Mark Otto e Jacob Thornton.
A popularidade do framework se dá pela boa documentação e comunidade ativa que facilita na curva de aprendizado. Outra vantagem a se destacar é o suporte a maioria dos navegadores.
Softskills para desenvolver front-end
Uma habilidade que pode ser atribuída a todos os desenvolvedores é a habilidade de solução de problemas, pois a programação exige um grande raciocínio lógico que demanda de uma alta capacidade analítica e articulação para contornar bugs, por exemplo.
Outro fator é ter atenção à experiência do usuário uma vez que a interface a ser desenvolvida ser utilizada. Assim, ter a sensibilidade às necessidades dos usuários se faz necessário, bem como no uso de componentes, exibição de elementos, animações, acessibilidade, dentre outros
Com isso, a comunicação é outra habilidade a se destacar, sobretudo para ter uma proximidade ao tipo de UX design para fazer uma melhor troca de como oferecer experiências espetaculares aos usuários. Com isso, reforço a desobrigatoriedade de desenvolvedores front-end saberem de design, pois essa não é a sua atribuição.
Como se tornar front-end?
Podemos começar com o aprendizado do HTML, CSS e alguma linguagem de programação web, seja ela JavaScript ou Typescript. Para isso, existem muitas comunidades disponíveis online para otimizar o aprendizado, bem como cursos em plataformas de educação como Udemy, Alura, Rocketseat ou cursos gratuitos no YouTube.
Outra forma de aprender e ingressar no mercado de desenvolvimento é a participação em bootcamps, pois, além de oferecerem cursos, também é uma forma de criar um networking com recrutadores. Esse é o caso do Use Academy Bootcamp, promovido pela Usemobile.
Hackathons também são outra opção. Ainda que costumam exigir algum nível técnico, são bons para se criar habilidades de trabalho em equipe, empreendedorismo e gestão de projetos. Geralmente, os hackathons premiam os projetos de destaque durante o evento, seja com investimento, reconhecimento ou outras formas de incentivo.
Em suma, desenvolver as habilidades, técnicas ou humanas, são requisitos essenciais para se tornar uma pessoa desenvolvedora front-end, assim como a construção de um bom networking.
Uma resposta
Hooks in React and their Use
In this article we will explore what React Hooks , their advantages, why they were needed, and what developers used before their introduction.
https://erpsolutions.oodles.io/developer-blogs/Hooks-in-React-and-their-Use/
#Hooks #React