quarta-feira, 9 de abril de 2008

Métodos, parte I: Conceitos e apresentações


          Olá a todos.
          Hoje vamos falar de métodos em Java. O que seria um método?
          Método seria uma ação específica dentro da classe Java criada. Como? Vamos conversar sobre isso:
          No nosso último tutorial, vimos como realizar uma operação matemática de soma dentro de uma classe, correto? Pedi que, para cada operação, fosse criada uma classe, ou seja, para as quatro operações, quatro classes.
          Todas essas operações poderiam ser agrupadas em uma classe Java, assim como poderiam facilmente ser colocadas no método principal (Main), entretanto, gera código espalhado e confuso, o que impede a manutenção do sistema.
          Poderíamos agrupar cada operação na mesma classe, de maneira organizada? A resposta é sim. E em Java, isso se chama método.
          Um método seria um atributo, digamos assim, da classe criada. Logo, teríamos uma classe (que chamaremos de Operações), onde dentro dessa classe teremos 4 métodos de suporte (adição, subtração, multiplicação e divisão) e um método principal (main).
          Vamos imaginar uma casa, onde temos portas e janelas. Para abrir uma porta, eu preciso fazer a ação abrirPorta. Dessa forma, podemos perceber que um método FAZ alguma coisa.
          Da mesma forma, nossa classe Operações teria os métodos responsáveis pelas ações de somar (adição e subtração), dividir e multiplicar dois números.
          Um método é criado por inúmeros fatores, desde organização até reutilização.

Os métodos encerram um conjunto de declarações de dados e de comandos que são executados mediante a chamada do método por seu nome.[i]


          Isso significa que dentro de um método existe um conjunto de declarações ordenadas, que são executadas nessa ordem e que para utilizá-lo, é necessário chamar pelo seu nome.
          O exemplo disso seria o método abrirPorta:


INICIO
          Pegue na maçaneta da porta;
          Gire a maçaneta;
          Puxe/empurre a porta (aqui depende da porta);
          Solte a maçaneta;
FIM

          Para utilizar o método abrirPorta, seria necessário chamá-lo. Vamos acompanhar o caso de entrar em uma casa:

INICIO
          Ficar de frente para porta;
          abrirPorta;
          Entrar na casa;
FIM

          Para fechar a porta da casa, seria um outro método (fecharPorta).
          No próximo post, continuaremos falando mais um pouco a respeito de métodos, antes de começar a implementá-los, ok? (tempo, tempo, tempo.....).
          Cândido Areas.

candido.areas@gmail.com

[1] http://www.dm.ufscar.br/~waldeck/curso/java/part21.html

segunda-feira, 10 de dezembro de 2007

Primeiro Programa em JAVA

Para programar em Java é necessário a utilização da Lógica de Programação, mas se trilharmos pelo caminho de ensinar primeiro toda a Lógica para depois ensinarmos Java, esse blog pode ficar meio entediante.

Pensando nisso, resolvi adotar uma estratégia: a cada exemplo e unidade de Lógica ensinada, iremos ver como seria em Java.

Antes, porém de por “as mãos na massa”, vamos introduzir um conceito importante para programas Java:

Você pode criar um monte de coisa dentro do seu programa, mas se ele não tiver um método chamado Main, quando você for rodar, ele não vai “funfar”, então, um programa Java para visualização necessita de um método Main.

Para começarmos, eu sugiro que cada um faça o download do NetBeans, que está atualmente na versão 6.0 final. Para Baixar o Netbeans, basta ir em www.netbeans.org

Caso alguém tenha alguma dúvida sobre a instalação, basta me enviar um e-mail.

Estou programando em ambiente Windows, portanto, vamos considerar que as dicas abaixo são para ambientes Windows, ok?

Na Área de Trabalho, dê dois cliques no ícone do NetBeans

Espere carregar. Isto pode demorar um pouco, dependendo da máquina que está usando. A tela de carregamento é algo como a figura abaixo:



A tela que se abrirá, será uma parecida com a imagem abaixo:

Vá em File à New Project. Clique em Next e, na próxima tela, em Project Name, digite o nome do seu projeto. Para este projeto, iremos chamá-lo de Operações. Observe que não coloquei o ç, nem o ~.

Em programação, busque sempre utilizar letras e números regulares, nada de sinais de acentuação, cedilha, ou outros caracteres, ok?

Depois de nomear o projeto, desmarque a opção Create Main Class e clique em Finish.

A tela do NetBeans estará como na imagem abaixo:

Clique com o botão direito do mouse onde está escrito Source Packages. Escolha New à Java Class:

Aparecerá outra caixa de diálogo e onde estiver escrito Class Name digite Soma. Agora, clique em finish.

Abrirá uma nova tela, com algumas linhas de código, onde antes tinham algumas informações. Será nela que iremos trabalhar. Note que existe um código já escrito: public class Soma:

Clique com o mouse no espaço em branco, entre as chaves do public class Soma.

Digite psvm e clique em [TAB]. Automaticamente o NetBeans criará o método principal dentro do seu programa: public static void main(String[] args).

Agora, dentro das chaves desse método criado, vamos declarar as variáveis do nosso programa. Declare conforme a figura abaixo:

Agora, vamos precisar criar a interface (Escreva, leia) com o usuário. Para isso, iremos utilizar duas coisas: o System.out.println, que seria o escrever e o Scanner, que seria o ler.

Por enquanto, iremos trabalhar com a interface de terminal, como o DOS. Para isso, necessitamos trabalhar com o System.out.println.

Em Java, temos uma coisa chamada API. Uma API seria um conjunto de classes construídas para auxiliar o programador em alguma tarefa. O Scanner seria uma API. Ele tem como função ler valores de entrada, seja do sistema, seja de um arquivo (sim, futuramente iremos ler arquivos utilizando o Scanner).

Para conseguirmos “pegar” o valor inserido pelo usuário, iremos precisar do Scanner, então, digite Scan e tecle [ctrl]+[space]. Irá aparecer um auxílio a você. Basta selecionar conforme a figura abaixo:

Iremos escolher Scanner (java.util).

Faça, conforme a imagem abaixo:

Isso que acabamos de fazer, foi instanciar um novo objeto. A variável scan (que será um objeto), herdará todos os métodos criados para o a classe Scanner, da API java.util.

Então, diríamos: o objeto scan é um novo Scanner, que lerá o que for digitado no Sistema (System.in).

Agora, abaixo da declaração do scan, iremos declarar a primeira linha da interface com o usuário:

Digite sout e tecle [ENTER]. O próprio NetBeans irá escrever System.out.println(); para você. Dentro do parêntese, nas aspas duplas, digite: Informe o primeiro valor: . Lembre-se de criar esse espaço depois dos :, pois isso fará com que o valor digitado não fique colado nos :.

A figura abaixo ilusra a situação:


A figura abaixo representa o código criado, a partir da declaração do scan:



Observem que dizemos que o valor1 e o valor2 recebem o objeto scan.nextInt() (valor1 = scan.nextInt()). Acima, informo que scan receberá todos os métodos do Scanner, nextInt() é um deles, e significa que os dois valores receberão o próximo inteiro que for "inputado" no sistema.
Em seguida, faça: [alt]+[shift]+[F]. Isso irá organizar o código do programa. O programa ficará assim:



Clique [shift]+[F6] e o NetBeans começará a rodar o seu programa. Para fazer isso, será aberto uma janelinha embaixo do seu código, que é a janela de output do NetBeans:



Informe o primeiro valor (clique dentro do output, onde está escrito Informe o primeiro valor: ) e tecle [ENTER]. Depois, digite o segundo valor e tecle [ENTER] novamente. O Programa irá informar o resultado da soma e terminar a execução do mesmo:


Bem, esse é o nosso primeiro programa em Java. Pode parecer difícil no primeiro momento, mas depois se torna normal essas declarações para você.

Tente criar novos Class para SUBTRAÇÃO, MULTIPLICAÇÃO E DIVISÃO. É a mesma estrutura, apenas a fórmula matemática é que muda.

Qualquer dúvida:

candido.areas@gmail.com ou candido.areas@foton.la

Um abraço,

Cândido Areas.

sexta-feira, 7 de dezembro de 2007

Variáveis e suas utilizações

No último post, trabalhamos com um algoritmo simples, de soma.

Caso vocês observem, declaramos apenas três variáveis, no inicio do código, que serão responsáveis pela soma: valor1, valor2 e soma.

Geralmente, ao criarmos um código, devemos estabelecer logo, de cara, que variáveis trabalharemos. Isso se dá, em primeiro, por organização e, em segundo, para verificação.

Vou explicar para vocês, caso não saibam, porque devemos declarar variáveis principais no início do nosso código.

Um computador funciona com uma memória principal, as memórias RAM. Obviamente, o recurso que existe na memória principal é limitado. Quando você compra um computador com 512 MB de memória RAM, significa que, quando atingir os 512 MB de alocação de memória, a sua memória estará cheia, impossibilitada de receber e armazenar qualquer outra informação.

Se vários processos estão utilizando toda a memória e o seu programa, por falta de organização de sua parte programador, precisa, no meio do código, de memória para alocar uma variável, o seu programa vai ter que esperar.

Então, é bom que as variáveis que o seu programa vai precisar utilizar constantemente sejam criadas logo no início do bloco de código, pois assim elas serão alocadas na memória logo no carregamento do programa. Obviamente, devemos fazer o bom uso de variáveis, colocando somente aquelas que vamos utilizar durante todo o código.

Apenas como comentário:

Uma variável declarada no início do bloco de código e que será utilizada por todo o programa, ou por grande parte dele, é chamada de variável global, ou seja, global significa para tudo.

Uma variável declarada durante um processo interno dentro de um programa, é chamada variável local, e servirá somente para aquele processo interno. Isso será discutido futuramente, mas é importante desde agora já irmos entendendo o que seria uma variável global e local.

Até o próximo post!

Cândido Areas.

Qualquer dúvida:

candido.areas@foton.la ou candido.areas@gmail.com

quarta-feira, 5 de dezembro de 2007

Iniciando...

Para realizarmos determinada tarefa, seguimos passos. Isso seria um algoritmo.

Um algoritmo, nada mais é, do que a seqüência de passos que temos que fazer para realizarmos uma tarefa, como, por exemplo, escovar os dentes.

Primeiro, pegamos a escova de dente, depois pegamos o tubo de creme dental, o destampamos, colocamos o creme dental na escova dental, fechamos o tubo de creme dental, levamos a escova à boca, escovamos por si só, lavamos a escova, a colocamos de volta no seu devido lugar. Observem que não discutimos todos os passos necessários em minúcias, mas que o processo está detalhado.

Um algoritmo é uma seqüência lógica, ordenada, de passos, ou todos os passos que devemos seguir na implementação em uma determinada linguagem de programação.

Um algoritmo pode ser escrito em língua materna mesmo (no nosso caso, o Português BR), pois dessa forma fica mais fácil entendermos. Isso é útil principalmente para aqueles que estão começando a programar.

Antes de começarmos a construir algoritmos, porém, é necessário saber algumas coisas, entre elas:

Em qualquer programa de computador, escrito em qualquer linguagem, vai ser necessária a criação de variáveis, para armazenamento de valores, informações. Para saber declará-las corretamente, temos que saber os tipos de variáveis, então:

  • Textuais: São aquelas que armazenam dados de texto, palavras, frases, letras, etc;
  • Numéricas: São aquelas que armazenam números;
  • Boolenas: Armazenam valores do tipo “verdadeiro” ou “falso”.

Como estamos estudando Java, irei apresentar alguns tipos de variáveis que a linguagem suporta, sendo que o nome em Java estará entre parênteses:

  • Inteiros (int): Destina-se a números inteiros, tipo 1, 5 ,10. Jamais 1.5, por exemplo;
  • Reais (float, double): Destinam-se à números reais, ou seja, aqui entram inteiros, flutuantes (0,2365) etc, todo tipo de número;
  • Frasais (String): Destinam-se à frases, palavras, nomes, etc;
  • Caractere (char): Letras do alfabeto (caracteres).

Como estaremos trabalhando com soma, precisaremos de variáveis numéricas para construirmos o nosso código.

Em Java, // significa comentário, portanto, eu irei colocar comentários em tudo que eu fizer abaixo:

// inicia a declaração das variáveis que o programa conterá

VAR

// declara a variável valor1 como inteiro

int valor1;

// declara a variável valor2 como inteiro

int valor2;

// declara a variável soma como inteiro

int soma;

// inicio do código principal do algoritmo

INICIO

// Escreve na tela para o usuário inserir o valor 1

Escreva (“Entre com o Primeiro Valor:”);


// Manda o sistema ler o que o usuário inseriu como valor1

Leia (valor1);


// Escreve na tela para o usuário inserir o valor 2

Escreva (“Entre com o Segundo Valor:”);


// Manda o sistema ler o que o usuário inseriu como valor2

Leia (valor2);


// Dizemos que a variável soma vai receber o resultado
// da soma das variávei valor1 e valor2

soma = valor1 + valor2;


// Escreve na tela para o usuário o resultado

Escreva (“O resultado da soma é:” + soma);

// Termina o código

FIM

Observe que quando vamos escrever alguma coisa, devemos colocar entre aspas. Caso seja necessário apresentar o valor de alguma variável, devemos fechar as aspas e colocar um sinal de +, seguindo da variável. Por exemplo:

Escreva (“O valor do primeiro e: “ + valor1);

Até o próximo post. Qualquer dúvida, me enviem e-mail:

candido.areas@gmail.com

ou

candido.areas@foton.la

Obrigado pela atenção,

Cândido.

terça-feira, 4 de dezembro de 2007

Primeiros Passos

Antes de começar a programar, vamos falar um pouco sobre ambientes de desenvolvimento, mais conhecidos como IDE.

Uma IDE é um ambiente de desenvolvimento visual, o que facilita a vida do desenvolvedor. Nela (IDE), o desenvolvedor poderá contar com a facilidade de, ao digitar determinados comandos, a própria IDE se encarrega de completar a solicitação.

Um exemplo disso, é o comando sout, do NetBeans. basta digitar sout e apertar [ctrl] + [space] (nas versões antigas, pois na nova 6.0 é a tecla [TAB]) é o próprio NetBeans escreve pra você o comando System.out.println();.

Já pensou se você tivesse que escrever esse comando 50 vezes, em partes diferentes do código-fonte?

Agora, que já sabemos o que é uma IDE, vamos saber o que é necessário para trabalharmos com a linguagem java:

  1. Ambiente de Desenvolvimento JAVA instalado na sua máquina: Conhecido como JDK, está atualmente na versão JDK 1.6.0_03;
  2. IDE de desenvolvimento: trabalharemos com o NetBeans primeiramente e futuramente com o Eclipse.
  3. Conhecimento em Lógica de Programação: Ninguém consegue programar sem entender de lógica de programação.
  4. Força de vontade e ser estudioso(a) para vencer os desafios impostos a quem opta por programar, pois vida de programador não é só flores, exige estudo e dedicação.

Podemos ler sobre a história do JAVA em:

http://weblog.jcraveiro.com/artigos/um-pouco-da-historia-do-java/

http://www.htmlstaff.org/ver.php?id=4383

www.pt.wikipedia.org/wiki/Java_(linguagem_de_programação)

Conforme a leitura, vocês podem perceber que a linguagem JAVA é orientada à objetos. Para ler mais sobre Programação Orientada à Objetos, você pode ir em:

http://www.criarweb.com/artigos/215.php

http://pt.wikipedia.org/wiki/Orienta%C3%A7%C3%A3o_a_objeto

http://www.linhadecodigo.com.br/Artigo.aspx?id=506

Recomendo uma visita nos links acima apresentados, para uma compreensão maior da coisa.

No próximo post, iremos iniciar os nossos estudos mais aprofundados a respeito de JAVA e lógica de programação.

Obrigado pela atenção,

Cândido.

segunda-feira, 3 de dezembro de 2007

Apresentação

Olá, me chamo Cândido Areas, e construí esse blog com o objetivo de difundir o conhecimento a respeito da Linguagem JAVA.

Basicamente, iremos utilizar em nossos exemplos tanto o NetBeans quanto o Eclipse, que são as IDEs de desenvolvimento mais utilizadas.

Em um primeiro momento, iremos descrever o percurso dessa linguagem, assim como os aspectos básicos da mesma.

Começaremos com exemplos simples, mas que são de fundamental importância para o aprendizado de Java.

Nas primeiras postagens, daremos bastante ênfase em ALGORITMO, para implementar em Java.

Agradeço desde já a atenção de todos.

Cândido Areas