Voltar para todos os artigos

21 de setembro de 2020

Saiba tudo o que um Web Developer pode fazer

Ironhack - Changing The Future of Tech Education

Web Development

Todos os cursos

Nos últimos anos, a carreira de Web Developer (Desenvolvedor Web) passou a ser muito atrativa, porém, há muito desconhecimento em torno dessa profissão, por isso, vamos explorar nesse post desde o básico-do-básico até outros caminhos alternativos mais interessantes.

Afinal, de que se trata o Desenvolvimento Web?

Vamos começar falando sobre o termo que abrange tudo o que você vai ler mais para frente: o desenvolvimento web refere-se a qualquer projeto que utiliza as bases de programação em projetos orientados a navegadores com HTML, CSS y JavaScript.

Muitas das ferramentas que apresentaremos a seguir vão exigir que você tenha um conhecimento sólido sobre esses tópicos principais, mas vamos começar devagar para que você possa transitar mais facilmente entre as tecnologias/campos.

Desenvolvimento Web Front-end: o que é e o que abrange?

Este pode ser o primeiro passo em direção à sua carreira como Desenvolvedor Web. O front-end é toda a camada visível e pública de um site, consiste em documentos HTML para exibir o conteúdo, CSS para tratar de estilo e layout e JavaScript para tudo aquilo que seja interativo, como redirecionamentos, responder a ações do usuário como cliques, determinadas teclas, etc.

Uma vez dentro do universo de front-end, existem várias possibilidades de escolha quando atingimos um determinado nível; quando chegamos a esta etapa, podemos estruturar frameworks/bibliotecas de front-end. Para tal, existem opções de sobra!

Os mais populares são: Reactjs, Vuejs, Angular ou o Svelte. Essas ferramentas são a maneira mais fácil e rápida de desenvolver um site e sua interface com o usuário, pois permitem o aproveitar o código que outras pessoas/empresas já escreveram e testaram.

Ok, e o que é Desenvolvimento Web back-end?

Back-end costuma ser o pesadelo de alguns, e o paraíso de outros, já que é, de certa forma, a parte mais complexa de um produto digital. No passado, o back-end já foi bem mais difícil pela complexidade do código, mas hoje em dia, não é muito diferente do front-end.  Podemos dizer que ambos têm quase a mesma dificuldade, já que o papel do front-end enfrenta a incursão de tecnologias cada vez mais modernas para realizar determinadas ações em seu navegador.

Este ramo de desenvolvimento é famoso por ser responsável por partes delicadas de uma aplicação/site/sistema, por exemplo: processamento de pagamentos, sessões de usuários, segurança, informações sigilosas, entre muitas outras coisas. Ao mesmo tempo, é super interessante, porque o back-end constitui a lógica de negócios de cada produto.

O ecossistema de um Desenvolvedor Back-end é mais amplo, já que permite realizar uma  aplicação em várias linguagens, sendo que as principais são: Ruby, Python, Javascript (com o Node Js), Go  e PHP.

Além da linguagem, você também terá a opção de escolher entre frameworks de back-end como por exemplo:On Rails para Ruby, Django ou Flask para Python, Express/Koa/Nest para Node Js, etc. Você também terá que escolher e dominar alguns bancos de dados, tema que poderíamos falar por dias e dias, mas os mais populares são: MongoDB, MariaDB, PostgreSQL e MySQL.

Uma coisa interessante é que não desenvolvemos apenas coisas simples no back-end, é possível criar até videogames com vários jogadores em tempo real com o NodeJS.

Quer saber quais projetos um desenvolvedor pode fazer?

1.Crie seu próprio videogame

Uma parte fascinante do desenvolvimento Web é que você está a poucos passos de desenvolver um videogame caso você já tenha tomado a decisão de aprender a programar. O navegador conta com ferramentas que permitem trabalhar com gráficos 2D e 3D, por isso, a única coisa que falta para criar um videogame é uma ideia, pensar na lógica e pronto. Também existem bibliotecas que te ajudam a acelerar o desenvolvimento do seu videogame com ferramentas de apoio e até com uma base bastante extensa para o seu game.

Aliás, no módulo 1 do bootcamp de Desenvolvimento Web construímos um videogame para consolidar os conhecimentos básicos de programação. Veja alguns exemplos de projetos realizados por ex-alunos:

2. Desenvolva um app!

Neste caso, existem inúmeras opções, mas já faz tempo que, como programadores, procuramos tornar possível o desenvolvimento de aplicativos não apenas aprendendo outra linguagem, mas também usando aquela que conhecemos desde sempre, JavaScript.

2.1 Progressive Web Apps (aplicativos progressivos para a web): o que significa e por que criar o seu?

Os Progressive Web App (PWAs) são as páginas web como já conhecemos, mas com um  adicional muito interessante que o Google propôs desde 2015, mas que é totalmente suportado pela Apple desde 2019. Uma das principais vantagens dos Progressive Web Apps é que eles podem ser instalados em um dispositivo móvel sem ter que passar por uma loja como a Play Store, basta abrir o site e você verá a opção de instalar o PWA. 

Outra vantagem dos PWAs é que você não precisa escrever outro aplicativo para ir de um site convencional para um PWA, basta adicionar um documento chamado manifest e complementar a informação que o formato exige para poder aproveitar os benefícios de ter um aplicativo com o mesmo código que você escreve para o seu site. Além disso, você pode habilitar para que ele seja visitado sem ter uma conexão com a internet, receber notificações como em um app convencional, entre muitas coisas.

2.2 Aplicativos híbridos: o que são e o que levar em consideração ao desenvolver um.

São aplicativos onde tem um instalador nativo, uma aplicação Android ou IOS, mas na verdade, existe um navegador que proporciona uma experiência semelhante a um app de celular. Eles não são realmente apps nativos, mas funcionam muito bem, um exemplo desse modelo é o Phonegap.

2.3 Aplicativos nativos: em que consistem e como desenvolvê-los.

Esse é o conceito mais inovador dos últimos anos, ter a capacidade de usar a mesma linguagem e framework/biblioteca que você usa em seu site em um produto nativo para Android e IOS, e mesmo entre as duas plataformas é incrível. Essa possibilidade fez com que as empresas tivessem a capacidade de gerar esses tipos de produtos e até mesmo economizar muitos recursos. É o caso de ferramentas como o React Native, que não satisfeitos em conseguir com que qualquer Desenvolvedor Front-end comece a fazer aplicativos móveis, agora adicionam suporte até mesmo para criar aplicativos de desktop, fazem uso de componentes nativos e entregam um aplicativo para Android e IOS com o mesmo código-fonte. Mágico. Existem outras opções como o NativeScript.

3. Crie suas próprias obras de arte

Totalmente possível, o mundo da programação abre portas que são pouco exploradas, mas bem recompensadas. É o caso da arte generativa ou dos gráficos em 3D, que no mundo do Javascript existe para ambos. Começando pela arte generativa, é possível fazer uso de ferramentas como o p5 para atingir esse objetivo.

O Three.js também está na pista, dando vida a projetos como o Decentraland, mostrando para todo mundo gráficos dignos de um console de videogame em nosso navegador!

4. Mergulhe no mundo da realidade virtual e aumentada

Também existem projetos que permitem que você como Desenvolvedor Web tenha a possibilidade total de se aventurar no mundo da realidade aumentada e virtual, que são tecnologias que a indústria exige cada vez mais, já que muitos avanços se deram graças a elas! Existe uma série de projetos para ajudar a desenvolver para este formato, um dos mais versáteis é o Viro, que utiliza o react native para conseguir aplicativos que aproveitem o potencial da realidade aumentada e virtual.

Outra opção é o A-frame que permite criar experiências de realidade virtual no navegador, seu código para iniciar é de apenas 14 linhas. Até um tour virtual ao CERN já foi criado no navegador com esta tecnologia...

O React 360 faz algo semelhante, mas usando o poder do React e de seus componentes.

5. Desenvolva projetos incluindo machine learning


Você quer criar um programa que entenda quando ou não fazer algo, respondendo a qualquer entrada? Por exemplo, treinar o computador para detectar em qual posição está a sua cabeça e com base nisso mover um personagem de um videogame?

Essa é uma das demonstrações que o Tensor Flowjs tem para jogar pacman.

Aqui você não só precisará saber programar, mas também ter um bom domínio de inteligência artificial, por isso, é um longo caminho a percorrer, mas que vale a pena! Estamos falando da tecnologia que permite que os carros andem sozinhos, mas no seu navegador, à sua disposição.

Conclusão:

Nos dias de hoje, aprender a programar não é apenas uma linha reta onde você só tem um caminho para crescer e evoluir, pelo contrário: o universo do desenvolvimento web é um desses ambientes incríveis que permitem que você se expanda para todos os lados. Existem muitos caminhos e diversas possibilidades, depende do seu gosto e dos seus objetivos!

Esse leque enorme de oportunidades fica ainda maior se você vem de outra área e consegue encontrar uma maneira de convergir seus diferentes conhecimentos. Agregar o seu expertise ao mundo do desenvolvimento web pode te dar a chance de criar coisas incríveis.

Se você tem vontade de aprender a programar e se tornar um Desenvolvedor Web, saiba mais sobre o nosso bootcamp de Desenvolvimento Web. 

Artigos Relacionados

Pronto para aderir?

Mais de 10,000 amantes de tecnologia e empresários lançaram as suas carreiras na indústria da tecnologia com as bootcamps da Ironhack. Comece a sua nova viagem de carreira e junte-se à revolução tecnológica!