Variáveis

Diego Telles
Unicórnio Academy
Published in
4 min readJun 3, 2019
Intro

Olá, nesse artigo vamos falar de uma forma bem direta sobre variáveis e como cada declaração se comporta.

Variáveis são nomes atribuídos à endereços na memória de um computador onde se guardam dados. A declaração de uma variável consiste em dar um nome para a posição de memória a ser usada e especificar qual tipo de dado a guardar na memória.

Quando falamos em tipos de variáveis, temos as linguagens chamadas de fortemente tipadas e fracamente tipadas.

Em linguagens fortemente tipadas, definimos o tipo da variável no momento de sua criação.
Exemplos de linguagens do tipo: Java; C; C++.

Em linguagens fracamente tipadas, não precisamos definir o tipo da variável, ela é tipada automaticamente quando recebe um valor.
Exemplos de linguagens do tipo: Python; Ruby; Javascript.

Vamos ver como cada uma dessas declarações se comportam e qual a diferença entre elas citando 2 linguagens:

  • JAVA
  • JAVASCRIPT

Ex: JAVA — fortemente tipada

Usamos o seguinte padrão para declaração de variáveis:
modificador tipo identificador;
Assim podemos ter a seguinte nomenclatura:
static int ano;
Onde no código de declaração a cima podemos ter varias variáveis, mas sempre seguindo um padrão que é o de colocar vírgula após cada uma delas ficando dessa forma:
static int ano, ano1, ano2;

Isso evita que o código fique poluído e a gente escreva muitas linhas de código com a mesma informação ficando assim:

static int ano;
static int ano1;
static int ano2;

Vamos falar sobre essa estrutura que usamos no Java onde temos Modificador, tipo e identificador, o que são essas coisas? Vamos lá:

Modificador

Os modificadores de acesso são palavras-chave que modificam a forma como podem ser acessadas as classes, métodos e/ou variáveis.

Níveis de acesso dos modificadores.

Public, pode ser acessado globalmente em qualquer parte/momento no seu código.
Protected: O modificador protected torna o membro acessível às classes do mesmo pacote ou através de herança, seus membros herdados não são acessíveis a outras classes fora do pacote em que foram declarados.

Default: Tem acesso a um atributo default (identificado pela ausência de modificadores) todas as classes que estiverem no mesmo pacote que a classe que possui esse atributo.
Private: A única classe que tem acesso ao atributo é a própria classe que o define, ou seja, se uma classe Animal declara um atributo privado chamado nome, somente a classe Animal terá acesso a ele.

Resumindo em uma imagem

Tipos

Os tipos de dados são como eles vão ser, vamos ver alguns existentes:

Tipos de dados

Identificador

Fica a sua escolha qual será o identificados, no caso o nome da variável.

Ex: JAVASCRIPT — fracamente tipada

Como disse lá no começo, linguagens fracamente tipadas recebem o tipo da variável em suas declarações, vamos ver essa diferença.

Quando declaramos uma variável no JavaScript(JS) temos a facilidade de escrever somente o seguinte:

var pessoa = "Diego Telles";
var anoAtual = 2019;
var temGato = true;

E por meio de uma declaração assim o compilador interpreta que o que esta dentro de aspas é um tipo String, o que é booleanvai ser sempre o que conter true/false como valor e que o tipo num é tudo que contenha valores numéricos, lembrando que tudo que estiver entre aspas será considerado String (texto).

Podemos ter outras formas de declaração de váriaveis usando let e const, onde podemos ver essa diferença em outro artigo meu sobre Javascript aqui.

E o que seria modificadores no Java acaba sendo algo parecido com o escopo que você podem ver nesse artigo.

Concluindo:
Uma variável (variable) é basicamente um local nomeado para armazenar um valor (numérico, texto, simbólico ou até mesmo booleanos [true, false]). Dessa forma, um valor pode ser acessado através de um nome predeterminado onde algumas linguagens definimos o tipo e outras não precisamos nos preocupar com essa definição.

Espero que esse artigo ajude você, duvidas/sugestões deixem nos comentários =D
Abraços!

--

--

Diego Telles
Unicórnio Academy

AWS Community Builder | Tech Manager | Front-end | Mozillian Member 🦊| Subscribe: youtube.com/UnicornCoder