Primeiros passos com o Angular

Primeiros passos com o Angular

Se você está inserido dentro do cenário do Desenvolvimento Web, é extremamente provável que você já tenha ouvido falar sobre o Angular. Juntamente com o React.js e o Vue.js, ele compõe o triunvirato das ferramentas JavaScript mais populares, requisitadas e utilizadas pelas empresas e desenvolvedores. Neste artigo aprenderemos um pouco mais sobre o Angular e criaremos nosso primeiro projeto juntos.

Vamos lá?

O que é o JavaScript?

Se você está caindo de paraquedas e não sabe o que é o JavaScript, saiba que esta é uma linguagem de programação aplicada geralmente em Desenvolvimentos Web e de Software, desempenhando ótimos resultados tanto para o Front End quanto para o Back End. Esta linguagem de alto nível está entre as principais tecnologias Web, juntando-se a outras como HTML e CSS.

O que é o Angular?

O Angular é uma plataforma de aplicações web lançado em 2012 pelos engenheiros da Google, Misko Hevery e Adam Abrons, utilizado para construir páginas dinâmicas em aplicações web que até então exigiam um nível de complexidade considerável.

O Angular utiliza a arquitetura Model-View-Controller (MVC), que consiste em dividir uma aplicação em uma estrutura com três blocos principais, onde um é responsável por receber as solicitações recebidas e gerenciá-las (model), a outra é responsável por apresentar as informações (View) e, por fim, a terceira (controller) responde aos comandos e se relaciona diretamente com a primeira camada citada.

Trazendo para o cenário do Angular, o mesmo é o modelo, o HTML é a visão e o JavaScript é o controle. Ao combinar JavaScript e HTML, o Angular sincroniza o código entre eles, tornando o trabalho dos desenvolvedores mais fácil e reduzindo a quantidade de código necessário para criar páginas dinâmicas.

Agora que aprendemos um pouco sobre o Angular, sua importância na época em que foi lançado e sua relevância na atualidade, que tal irmos para a prática?

Instalando e criando o primeiro projeto Angular


Vamos começar nossa jornada com o Angular executando a sua instalação (e sempre com a documentação debaixo do braço, para tirar qualquer dúvida que surja!). Utilizaremos para a instalação o npm como ferramenta de gerenciamento de pacotes, mas escolha qual você achar melhor, visto que em nada irá atrapalhar no nosso desenvolvimento, contanto que seja instalado corretamente. Dito isto, execute o comando a seguir para instalar o Angular em seu computador:

npm install -g @angular/cli

Uma vez concluída a instalação, vamos criar o nosso primeiro projeto. Utilize o comando a seguir para tal ação:

ng new nome-do-projeto

Substitua o prefixo “nome-do-projeto” pelo nome que você achar mais válido para a aplicação que irá criar. No nosso caso, utilizaremos um nome genérico, “angular-js”. Após a execução do comando citado, você notará que, no terminal que utilizou, após questionar qual será a forma de estilização (CSS puro, SASS, Less, etc.), o projeto será criado. Ele terá uma cara mais ou menos assim:

Figura 1 - Estrutura básica de um projeto Angular

Execute o comando “npm start” em um terminal aberto na raiz deste projeto para que ele seja executado no seu navegador. Se tudo deu certo com a criação do projeto, será gerado no seu terminal uma url que, ao clicar nela, você será redirecionado para a seguinte página:

Figura 2 - Código inicial de um projeto em execução

Criando Componentes

O componente responsável por criar esta página é o conjunto de arquivos dentro do diretório “app” que começam com o prefixo “app.component…”. Aqui, vem uma primeira grande característica do Angular: sempre que um componente é criado, é criado um arquivo HTML, um arquivo CSS, um arquivo Typescript e um arquivo de testes para ele. Desta forma, para editar um determinado componente, basta manipular estes arquivos. Tente apagar todos os elementos criados no arquivo “app.component.html”, insira algum outro elemento, salve e você verá que a página inicial da nossa aplicação terá mudado completamente:

Figura 3 - Inserindo a frase “Hello World no arquivo “app.component.html”

Figura 4 - Código da Figura 3 em execução


Agora que você entendeu a estrutura básica de um componente, que tal criarmos o nosso primeiro? Execute em um terminal inicializado na pasta raiz do projeto o seguinte comando:

ng generate component nome-do-componente

Substitua o prefixo “nome-do-componente” pelo nome que você acredita que se encaixa melhor para o componente criado. Ao executar este comando, será criado um diretório com o nome que você indicou, com quatro arquivos dentro dele (com extensões “.html”, “.css”, “.spec.ts” e “.ts”, como já foi explicado anteriormente).

E como utilizar este componente? É simples demais! No arquivo com extensão “.ts” haverá um objeto com uma chave “selector”. Para o seu valor, é criado um elemento que você pode utilizar dentro do componente “app”! Entenda melhor:

Figura 5 - Verificando o valor criado para a chave “selector” do componente header que foi criado

Figura 6 - Utilizando o elemento app-header, que é equivalente ao valor da chave “selector”

Simples demais, não acha? É só descobrir o nome que foi criado para o componente (que sempre estará no arquivo com extensão typescript e geralmente é nomeada como “app-nome-do-componente”) e utilizá-lo como uma tag HTML no arquivo desejado, que no nosso caso foi o principal. Já que estamos por aqui, vamos embelezar um pouquinho mais o nosso cabeçalho, aproveitando para revisar os pontos principais para manipular componentes com o Angular:

Figura 7 - Primeiro passo: Criar um elemento no HTML do componente header

Figura 8: Segundo passo: Estilizar este componente utilizando o arquivo CSS criado para ele

Figura 9 - Componente “header” em execução


OBS - Sempre que for necessário criar estilizações gerais para toda a aplicação, ou que afetem mais de um componente, utilize o arquivo “styles.css”, conforme exemplo:

Figura 10 - Utilizando o arquivo “styles.css” para definir estilos globais

Exibindo dados existentes no componente

Analisando o cabeçalho que criamos, constatamos rapidamente que ele não faz muito sentido, porque o nome do usuário é digitado estaticamente direto no HTML, ao invés de ser de fato um dado que pode ser alterado. Precisamos corrigir isto.

O Angular é desenvolvido com o uso de classes, de forma que podemos usar as propriedades criadas nela sem muita dificuldade na nossa exibição. Dito isto, vamos criar, na classe criada para o nosso cabeçalho, uma propriedade chamada “name”:

Figura 11 - Criando uma propriedade do tipo string para a classe do cabeçalho

Agora, lá no documento HTML, iremos utilizar esta propriedade, utilizando duplos colchetes para trazer o valor que inserimos para a exibição:

Figura 12 - Utilizando a propriedade que foi criada na classe do cabeçalho

Exibindo dados do componente Pai

Para fins de compreensão, chamaremos de “componente pai” um determinado componente que possua outros componentes em seu conteúdo e, por consequência, de “componente filho” aquele que está contido em um determinado componente. Vamos enxergar o seguinte código como exemplo:

Figura 13 - Exemplo de um “componente pai” e um “componente filho”

Perceberemos na figura 13 que o componente Header (linha 3) é inicializado no conteúdo do componente App. Desta forma, App é o componente pai do componente Header e, consequentemente, Header é o componente filho de App.

Vimos, até então, que é possível trabalhar com dados de um determinado componente que esteja na sua classe correspondente. Todavia, também é possível acessar informações que estejam contidas no componente pai e é isto que veremos agora: imagine que o atributo name não seja inicializado com nenhum valor na classe relacionada ao componente Header:

Figura 14 - Atribuindo uma string vazia para o atributo name

Suponha que a informação do nome do usuário seja criada no componente App e não mais em Header. Para isso, criaremos um atributo no componente citado:

Figura 15 - Criando o atributo userName no componente App

Agora, só precisamos definir que o atributo “name” existente em Header receberá os dados contidos em userName existente em App. Para tal, criamos uma propriedade no elemento “<app-header />” entre colchetes com o nome do atributo contido no elemento filho, onde seu valor será uma string com o nome do atributo do elemento pai:

Figura 16 - Atribuindo para o atributo “name” o valor de “userName”

Por fim, utilizamos “@Input()” antes do atributo “name”, visto que ele está recebendo um valor via propriedade de outro componente:

Figura 17 - Aplicando o “@Input()” no componente Header

Tudo pronto! Nosso código já exibirá no componente Header a informação que está contida no componente App:

Figura 18 - Exibindo o nome do usuário contido no componente App

Considerações finais

No artigo de hoje aprendemos os motivos pelos quais o Angular é uma poderosa ferramenta para o desenvolvimento web, além de entender sua estrutura básica e traçar os primeiros passos com ele. Se você está interessado em aprender mais sobre o desenvolvimento web com o Angular, criar seu primeiro projeto e explorar seus recursos, vale a pena investir tempo e esforço nessa ferramenta poderosa.

Nos artigos posteriores, trabalharemos mais o Angular, de forma que sejam abordados todos os conceitos cruciais para a programação com o mesmo. Se você achou esse artigo interessante, gostaria de tirar quaisquer dúvidas ou somente está afim de trocar uma ideia sobre esses e mais assuntos, você também pode entrar em contato comigo, seja por meio do e-mail bruno.cabral.silva2018@gmail.com ou pelo meu perfil do Linkedin!

Te espero ansiosamente!

💡
As opiniões e comentários expressos neste artigo são de propriedade exclusiva de seu autor e não representam necessariamente o ponto de vista da Revelo.

A Revelo Content Network acolhe todas as raças, etnias, nacionalidades, credos, gêneros, orientações, pontos de vista e ideologias, desde que promovam diversidade, equidade, inclusão e crescimento na carreira dos profissionais de tecnologia.