sábado, 21 de dezembro de 2013

Java: a função Main, cabeçalho de uma função

Criamos um projecto novo de Java no NetBeans, e o que nos aparece?
A nossa classe (que tem um nome à vossa escolha), e uma função main.

E o que é a função main?
Por convenção e definição, a função main é a função que é executada em primeiro lugar aquando da execução do programa. Por outras palavras, quando queremos executar o nosso programa no fim de estar feito e clicamos no "Run", a primeira coisa a fazer é executar a função main. Se tivermos mais funções (mais tarde irei falar disso), elas só serão executadas se forem chamadas pela função main, caso contário não servirão de nada para o nosso programa quando for executado.

Toda e qualquer função tem um cabeçalho, cada uma com normas diferentes.
Vejamos o seguinte exemplo de código Java:


Vamos começar por analisar este pedaço de código.
public class 9lessons
Este excerto diz respeito a uma classe pública, de nome "9lessons".

public -> significa que pode ser acedida por todos

class -> diz respeito a uma classe

9lessons -> o nome da classe

"{" -> devemos sempre abrir e fechar qualquer classe, função, ciclo, etc. Tudo o que estiver dentro das chavetas está contido no código, ou seja, tudo o que estiver fora das chavetas não pertence.


Prosseguimos com o seguinte...
public static void main (String args[])
Aqui está a nossa função main. Ela tem sempre o mesmo cabeçalho, e é uma função que vão sempre usar, pois como disse é a primeira função a ser executada no programa, e é inalterável. Vamos então analisar este cabeçalho:
public -> significa que pode ser acedida por todos

static -> significa que é (neste caso uma função) global, ou seja, será sempre acedida directamente em qualquer lugar

void -> uma função pode devolver valores ou não. "void" significa que a função não devolve valores.

(String args[]) -> o argumento da função é um array ( [] ) do tipo String, com o nome args.

"{" -> também colocamos as chavetas para delimitar a função, ou seja, onde ela começa e onde acaba.

O resto do código explicarei mais à frente. Para já o fundamental é entender o que é a função main, e saber que ela tem sempre o mesmo cabeçalho.

Porém, os cabeçalhos poderão mudar. Depende do que nós pretendemos.

1º - public ou private
Uma classe ou função pode ser pública ou privada. Se for pública, pode ser acedida por todos. Se for privada já não.

2º - static ou não-static
Uma função, variável, etc, pode ser global (static) ou local (não-static). Caso queiramos declarar uma função "não-static", não se escreve nada, já se for static, temos de o colocar no cabeçalho.

3º - o que devolve
Uma função pode ou não devolver um valor, seja ele inteiro, real, um caracter, uma String, um array, uma estrutura de dados, etc. Aqui deverá ser colocado o que é que pretendemos devolver. Caso a função não devolva nada colocamos "void". Se a função devolver, lembrem-se de colocar "return" antes do fecho da função.

4º - nome da função
Aqui colocam o nome da função. Por convenção, está definido que o nome da função deverá começar por letra minúscula, e não pode ter espaços. Ex: lerNumero, escreverData, etc

5º - argumentos da função
Uma função pode ou não ter argumentos. (explicarei mais à frente, por agora não necessitam disto) Se os tiver, colocam-se dentro de parênteses. Se não tiver, não se coloca nada dentro dos parênteses. No entanto, terão sempre de colocar parênteses no cabeçalho.

Exemplos de funções:
public static void funcao1()
private int funcao2(int numero)

terça-feira, 26 de novembro de 2013

Java: Objecto, Classe e Métodos

Estás pronto para começar a programar? Achas mesmo?

Hoje vou-te falar sobre o que é um Objecto, uma Classe e um Método em Java. Antes de começares sequer a programar tens de saber obrigatoriamente o que são estas três coisas.
Um programa em Java (que é uma linguagem de programação orientada a objectos) é definido como um conjunto de objectos que comunicam uns com os outros chamando métodos uns dos outros. Ou seja:

  • Objecto - um objecto tem estados e comportamentos.
    Exemplo: um cão tem como estado uma "cor" e uma "raça", bem como comportamentos tais como "ladrar" e "comer". Um objecto é uma instância (criação / exemplo) de uma classe.
  • Classe - uma estrutura com atributos que abstrai um conjunto de objectos com características semelhantes.
    Exemplo: "animal" é uma classe, que tem como atributos o seu "tipo" e "género";
    "cão" é uma instância (ou deriva) de "animal" (ou seja, tem um tipo e um género) e apesar de possuir todas as características da classe "animal", é completamente independente de outras instâncias de "animal", ou seja, um "cão" é diferente de um "gato".
  • Método - comportamento dos objectos de uma classe. Uma classe pode conter vários comportamentos.
    Exemplo: um "cão" tem como comportamentos "ladrar", "comer" e "lamber".

Este tema pode ser um pouco confuso, mas como sempre estou disponível para vos explicar de outra forma que vos seja mais clara. Basta comentar. As dúvidas serão tiradas logo que possível.

segunda-feira, 25 de novembro de 2013

Aula Básica de NetBeans

instalámos o Java e o NetBeans no computador, agora está na altura de conhecermos minimamente o NetBeans por dentro. Para isso, não há melhor forma de explicar do que num vídeo. Pessoalmente acho este vídeo bastante didático e que ensina muito bem como de facto trabalhar com o NetBeans.

No entanto, qualquer questão que tenham, não hesitem em contactar-me! Comentem a publicação, assim a vossa dúvida poderá ser a mesma que outra pessoa e assim ajuda-se todos os que estejam em apuros.

sábado, 23 de novembro de 2013

Como instalar o Java no computador

Já vos introduzi minimamente ao Java, agora está na altura de instalarmos o necessário para que possamos começar a programar!

A primeira coisa a fazer é fazer download do Java Development Kit (Kit de Desenvolvimento do Java), com os seguintes passos:

De seguida, iremos instalar um IDE ("Integrated Development Environment", tradução de Ambiente de Desenvolvimento Integrado), que é um programa que tem ferramentas e características adaptadas a linguagens de programação, que nos irá ajudar a programar (detecção de erros de sintaxe, etc).
Existem imensos IDE's, mas para esta linguagem em específico, recomendo o NetBeans.

Para instalar o NetBeans, sigam os seguintes passos:
  • Aceder a este website: https://netbeans.org/downloads/
  • Escolher uma das seguintes opções de download: Java SE ou Java EE;
  • Descarregar o ficheiro;
  • Instalar!

E pronto! Já temos tudo o que precisamos para programar em Java!

sexta-feira, 22 de novembro de 2013

Java 101: uma breve introdução

Agora que sabemos praticamente tudo o que tínhamos a saber, vamos começar a programar. A linguagem que escolhi para começarmos é o Java.



O Java é uma linguagem de programação orientada a objectos (POO) que foi criada na década de 90 na Sun Microsystems, e hoje em dia é bastante utilizada por todos nós em vários sítios (caixas multibanco, jogos, entre outros).

Escolhi esta linguagem pela sua simplicidade e facilidade em aprender, e por ser uma das linguagens que normalmente se aprende no ensino superior.

Vamos começar?

quinta-feira, 21 de novembro de 2013

Constantes e Variáveis

Após falarmos sobre os vários tipos de dados que podemos encontrar num programa, vou-vos falar de constantes e variáveis, pois é algo interessante que é usado sempre num programa.

O que é uma constante? É algo que tem sempre o mesmo valor, tão simples quanto isto.
Ex: o valor de pi é 3,1416...

Já uma variável é algo cujo valor poderá mudar, como o nome indica, pode variar.
Ex: pegando no exemplo de cima, a área de um círculo pode variar consoante o seu raio.

Dados Primitivos

Espero que tenham percebido tudo até agora.

Hoje, o assunto é Dados, mais propriamente os Primitivos. A partir de agora já estamos a entrar dentro das linguagens de programação e de algumas coisas que irão ser necessárias aquando da criação de programas.

A informação é armazenada num computador através de dados, e estes podem ter vários tipos. São eles os seguintes:

- Inteiro: número que não tem parte fraccionária. Contém os positivos, negativos e nulos.
- Real: todos os números: fraccionários, inteiros, etc. Também pode ser chamado de vírgula flutuante.
- Caracter: um e apenas um número, letra ou símbolo (ou conjunto alfanumérico). As letras e símbolos são armazenadas num computador através do código ASCII, a que corresponde um número em binário.
- Lógico (ou Booleano): verdadeiro ou falso / True ou False / 0 ou 1.

Eventualmente poderão surgir outros tipos de dados, como o seguinte:

- String: cadeia de caracteres. Exemplo: uma frase.

Por hoje é tudo!
Peço mais uma vez, se não estiver a explicar bem ou querem ver outro assunto cá escrito, ou tiverem alguma dúvida: comentem as publicações. Só assim vos poderei ajudar e ter a certeza que estão a compreender tudo.

quarta-feira, 20 de novembro de 2013

Como representar um algoritmo: Pseudocódigo

Hoje trago-vos mais uma maneira de representar um algoritmo: Pseudocódigo.

Existem n linguagens de programação que não entendemos, que não sabemos ao exacto a sua sintaxe nem como raio iremos fazer alguma coisa com aquilo. Então, porque não falarmos numa linguagem que nós próprios possamos entender e perceber? Pois, essa linguagem chama-se Pseudocódigo.

Vejamos então um exemplo simples onde é usado o Pseudocódigo para um algoritmo:

início
   ler (numero);
   se (numero > 10) então
      escrever ("Este número é maior do que 10");
   senão
      se (numero = 10) então
         escrever ("Este número é igual a 10");
      senão
         escrever ("Este número é menor do que 10");
      fim-se
   fim-se
fim

Esta representação torna-se então mais fácil a conversão para uma linguagem de programação (como poderás ver mais à frente, quando começarmos a programar a sério!).

terça-feira, 19 de novembro de 2013

Como representar um algoritmo: Fluxograma

Vejamos agora uma das formas de representar um algoritmo: Fluxograma.

Um Fluxograma é um diagrama que representa esquemática e gráficamente um algoritmo, para que seja mais fácil compreender o seu modo de funcionamento.

Exemplo de um algoritmo, representado num fluxograma

O início e fim de um algoritmo são indicados por uma elipse, as acções que serão executadas nesse algoritmo são representadas num rectângulo, e as estruturas de controlo (que explicarei mais à frente) serão indicadas por losangos (com 2 direcções, uma para quando a expressão é verdadeira, outra para quando a expressão é falsa).

Para mim, esta é sem dúvida uma das formas mais fáceis de compreender e esquematizar um algoritmo. Mas atenção! Para algoritmos mais complexos e compridos, esta não é uma opção recomendada. (Haja espaço para escrever!)

segunda-feira, 18 de novembro de 2013

Algoritmos

Agora vamos falar sobre algoritmos. Algo.. quê? Algoritmos!

Um algoritmo nada mais é que um procedimento para fazermos algo.
Vejamos um exemplo, "beber um copo de água". Para isso precisamos de:
- abrir a porta do armário;
- pegar no copo;
- fechar a porta do armário;
- colocar o copo debaixo da torneira;
- abrir a torneira;
- encher o copo de água até o copo ficar cheio;
- fechar a torneira;
- levar o copo até à boca;
- beber água.

Pois bem, estes são os passos e procedimentos necessários para resolvermos o nosso problema (que foi "beber um copo de água". Poderia muito bem ser outro problema qualquer! Este é um exemplo de um algoritmo.

Num computador, os algoritmos são compostos por (pelo menos) 3 partes:
- Entrada de dados (input)
- Processamento de dados (ou cálculos)
- Saída de dados (output)

Na entrada de dados, serão pedidos ao utilizador as informações necessárias para executar o algoritmo (por exemplo, no algoritmo "área do quadrado" precisamos de saber o lado do quadrado);

No processamento de dados iremos então usar os dados que pedimos ao utilizador para calcular o que se pretende desse algoritmo (com o exemplo dado acima, iremos calcular a área do quadrado com a sua respectiva fórmula -> lado*lado);

Na saída de dados, os dados são apresentados ao utilizador através de um (ou mais) dispositivos de saída de dados (neste caso iríamos apresentar o valor da àrea).

O computador; Entrada e saída de dados (input e output)

Pois bem, após sabermos o que é uma linguagem de programação, temos de saber (basicamente) como funciona um computador, para sabermos o que fazer com ele e usá-lo para nossa conveniência. Mais teoria, portanto!

Um computador não é mais que uma máquina de calcular. Todas as operações que lá fazemos envolvem números (somas!). A soma é sem dúvida a operação principal na informática: a subtração, divisão e multiplicação derivam da soma!

Mas não vamos entrar por aí. O que é importante saber é que os programas que se usam no computador usam as entradas (input) e saídas (output) de dados. E o que é isso?

Entrada de dados: o que é escrito no teclado, clique do rato, foto digitalizada pelo scanner, etc.
Saída de dados: o que é impresso no ecrã, uma foto / documento imprimida pela impressora, etc.

Durante a construção e execução de um programa iremos utilizar estas funções para pedir dados ao utilizador (input), para então podermos fazer cálculos e mostrar ao utilizador o resultado (output).

Mais uma vez, se tiveres dúvidas ou achas que devo acrescentar mais alguma coisa, comenta a publicação!

domingo, 17 de novembro de 2013

O que é afinal uma linguagem de programação?

Antes de sequer começarmos a programar, precisamos de saber o que estamos a fazer, não acham? Sim, vou vos dar teoria. "Que seca!", deve ser o que vocês estão a dizer neste momento... mas o que é certo é que após saberem como as coisas funcionam na teoria, pôr isso em prática será uma grande ajuda, e de certeza que saberão programar melhor.

Pois bem, a nossa primeira discussão será sobre as linguagens de programação. Existem dezenas de linguagens de programação, cada uma utilizada para um certo fim, cada uma tem as suas diferenças e limitações... umas mais fáceis que outras obviamente... e é aí que vamos começar.

Uma linguagem de programação é nada mais nada menos que uma maneira de comunicarmos com um computador. (Simples, não acham?) Nós somos portugueses, e falamos português. Quem entende o português sabe o que estamos a dizer e sabe comunicar connosco. Num computador acontece praticamente a mesma coisa. Falamos numa linguagem que ele entenda, e ele executa as instruções que lhe "mandamos" fazer. Sim, instruções... esse é o "dicionário" de uma linguagem de programação. Cada instrução faz uma coisa em específico.

E agora perguntam: terei de saber todas as instruções? Não.. ninguém sabe todas as instruções de uma linguagem de programação. Como "O Google é nosso amigo", a qualquer momento que estejam "à rasca" podem sempre utilizá-lo para saber uma instrução em específico. É normal!

Bem, por agora é tudo! Qualquer dúvida, comentem!