Jun 24 2012

Introdução ao AngularJS

Joel

Boa noite pessoal, hoje falaremos de uma nova api javascript desenvolvida pelo Google que me agradou muito por ter várias similaridades com o Flex, o AngularJS.

O tutorial se baseia em um tutorial em inglês do próprio pessoal da Angular que eu achei bem interessante!

 

Vídeo original.

Site do AngularJS.

Donwload do projeto.

 


Aug 26 2011

Entendo OBJETIVE C

Joel

Boa noite a todos!!!!

Esse vídeo foi uma verdadeira luta para ser feito!! Muita gripe unido de uma correria insana na faculdade. Mais ta ai mais um post para o Café com Java.

Ps. desculpem alguns erros no vídeo e algumas partes mal editadas mais é que realmente estava péssimo de saúde!!!



Feb 7 2011

O básico sobre genéricos em Java

Joel

Já vi  muitos materiais que retratam sobre teorias de genéricos e seu funcionamento. Inclusive, seu uso com Reflection, utilizado para um desenvolvimento mais avançado em Java. Todavia, ainda não vi material que mostra um exemplo simples, porém prático, sobre o uso dos genéricos na referida tecnologia.

E esse é meu objetivo neste post. Mostrar uma idéia simples, mas real, do que os genéricos em Java podem fazer.

Diga-se de passagem, que você precisa imprimir em tela 2 tipos de arrays, um de inteiros e um de Strings, logo se você não usa genéricos em Java sua classe poderia ser mais ou menos assim…

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class Main {
   public static void main(String[] args) {
     Integer [] i = {1,2,3,4,5};
     String [] S = {"A","B","C","D","E"};
     Main m = new Main();
     m.printArray(i);
     m.printArray(S);
}
 
   public void printArray(int [] inputArray){
      for( int element: inputArray ){
         System.out.printf("%s", element);    }
   }    
 
   public void printArray(String [] inputArray){
      for( String element: inputArray ){
          System.out.printf("%s", element);
      }
   }
}

Note que nesta situação criei 2 métodos sobrecarregados na linha 14 e na linha 20. Onde um recebe como parâmetro um array de ints e outro um array de Strings .

No método Main (linha 3) crio os 2 tipos de arrays (linha 4 e linha 5) e nas linhas 6 e 7 chamado meu método printArray, passando cada um dos arrays. O compilador do Java como não é ”bobo” nem nada chama a versão correspondente de cada uma das chamadas, conforme o tipo do argumento mencionado em ordem no método. É meus caros amigos, isto é Java!!

O problema é que se pararem pra pensar comigo, isso é legal! Pois criei dois métodos e até aí tudo “lindo”. Mas, digamos que se tivesse que imprimir vários tipos diferentes de array em tela, então logo, para cada tipo de objeto teríamos que ter um método para tal efeito. Correto? Não, se você usar um Genérico.

Vejam….

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class Main {
 
   public static void main(String[] args) {
      Integer [] i = {1,2,3,4,5};
      String [] S = {"A","B","C","D","E"};
      Main m = new Main();
      m.printArray(i);
      m.printArray(S);
   }
 
   public <e> void printArray( E[] inputArray ){
      for( E element: inputArray ){
         System.out.printf(&quot;%s&quot;, element);
      }
      System.out.println();
   }
}

Note que agora eu só tenho uma declaração do método printArray usando o genérico <E> na chamada do método na linha 11.

Assim, fica garantido que mais de um tipo definido de array possa passar para aquele mesmo método. E sem necessidade de escrever as outras versões, de modo que sobrecarregue. E a partir dessa pequena demonstração,  consegue-se ter uma noção do poder dos genéricos em Java.

E para aqueles com um pouco mais de conhecimento na linguagem, peço que pensem na idéia, por exemplo,  de uma classe DAO genérica, que se pode usar em qualquer tipo de VO’s. Para tanto, utilize uma implementação de uma classe AbstractDAO. E isso sem precisar escrever um método para cada tipo de VO. Intrigante, não?


Jan 24 2011

Carrinho controle remoto + java + arduino = cool :) parte 4

Joel

Quarta parte do tutorial que mostra como controlar um carrinho de controle remoto através do Arduino e do Java. Aqui falamos sobre a parte de código do Java.

Código fonte do projeto em java.


Jan 23 2011

Carrinho controle remoto + java + arduino = cool :) parte 3

Joel

Terceira parte do tutorial que mostra como controlar um carrinho de controle remoto através do Arduino e do Java. Aqui falamos sobre a parte de código do Arduino, sendo a última parte relativa à parte de código do Java.

Abaixo segue o código gerado no Arduino.


Jan 22 2011

Carrinho controle remoto + java + arduino = cool :) parte 2

Joel

Essa é a 2ª  parte entre 4  de um tutorial que relata como montar um carrinho de controle remoto, utilizando Arduino e Java. Aqui é demonstrado o Shield que controla os motores DC.

Esquema de ligação