Skip to content

Tag: netbeans

Cursos Java de Graça para Estudantes

Sun University

Página: http://www.sunstudentcourses.com/

  • A Sun está com um projeto novo com cursos sobre a plataforma Moodle (meu velho conhecido). O nome do curso é Real World Technologies: NetBeans GUI Builder, JRuby, JavaFX, and JavaME. É uma introdução rápida e bem prática sobre cada um desses temas. O curso é dividido em seções e no final de cada seção há um dever de casa para você submeter. Sim, é bem no estilo do Java Passion e não é à toa, o Sang Shin também está por trás disso.

Esses slides são a apresentação inicial do curso:

Algumas vantagens de se fazer esse curso:

  • O Preço. É de graça 😀
  • É Livre. São tecnologias de Software Livre como o Netbeans, o Java, JavaFX e JRuby. Além disso o próprio curso está disponível sob uma licença livre (Berkley).
  • São Novidades. são tecnologias novas como o JavaFX e JRuby, é bom se manter atualizado.
  • É Fácil. São tutoriais pela web que você pode fazer sozinho no seu computador e no final de cada seção você faz um dever de casa.
  • É Rápido. A duração estimada no curso é de 5 horas.
  • Tem Certificado. No final do curso, entregando todos os deveres de casa, você recebe um certificado que participou do curso.
  • Inglês. O curso é todo em inglês e é bom que você treina. 😉

Eu já estou fazendo.

SOA, JSR 223 e Netbeans

Silveira Neto palestra sobre Netbeans

Ontem tivemos no Atlântico mais uma edição do evento javeiro mensal promovido pelo Cejug, o Café com Tapioca. Eu tive o prazer de compartilhar uma mini palestra sobre algumas funcionalidades no Netbeans 6. Os slides estão aqui (ODP ou PDF). Eu espero que os participantes comecem a olhar o NB com mais carinho. 🙂


Nós tivemos 75 participantes, um número superior ao do evento passado e que deve ser batido pelo CCT de fevereiro que contará com a presença internacional da Sun.

SOA: a palestra do Rafael Tabosa foi bem direta e sucinta, cobrindo a parte “filosófica” do SOA. Agora eu já conheço um pouquinho sobre o assunto. Fazendo o gancho com o Netbeans, no portal netbeans.org há uma seção dedicada as novidades da versão 6 relacionadas a SOA, é aqui. Há também o SOA Learning Trail, com o conjunto de tutoriais e documentações sobre SOA no Netbeans que é bem extensa. Eu recomendo que dêem uma olhada.

JSR 223: foi ótima a palestra do Milfont. Eu não conhecia essa funcionalidade do Java de utilizar linguagens de script dentro da plataforma. É algo que eu tenho o maior interesse e eu vou em breve fazer alguns experimentos.

As fotos que eu tirei no evento estão aqui. As que o Rafael Carneiro tirou estão aqui.

Hoje tem Café Com Tapioca!

O CEJUG realizará hoje mais um evento Café com Tapioca que acontecerá no Instituto Atlântico (mapa) a partir das 18 horas.

Duke comendo café com tapioca

A palestra desse m̻s ̩ Introdṳ̣o a SOA РArquitetura Orientada a Servi̤o com o Rafael Tabosa. Adicionalmente eu estarei fazendo uma mini-palestra sobre as novidades no Netbeans 6 e o Christiano Milfont em Conhecendo a JSR 223: Scripting for the Java Platform.

Como é de costume, haverá coffe-break e vários sorteios de brindes. A entrada para o evento é 1kg de alimento não perecível.

Se você está na cidade de Fortaleza não perca essa oportunidade.

  • Informações: site do evento.
  • Endereço: Avenida Oliveira Paiva 941, CEP 60822-130, Bairro Cidade dos Funcionários.

Atualizado: esses são os slides que eu vou utilizar na minha mini-palestra:

Bixos da Computação 2008.1

Bixo que ainda não tem a menor noção do que o aguarda
Bixo pintado é bixo feliz!

Minhas boas vindas aos “bixos” do curso de Computação 2008.1 da Universidade Federal do Ceará na sua caminhada que agora se inicia rumo a sua formação de computólogo. 😀 As fotos tiradas com minha câmera estão aqui.

Bixo pintado
Bicho azul.

Caloura
Sim, nós temos bixetes.

Bixo careca
Rapaz, eu achei esse bixo parecido comigo na época que eu entrei no curso. 😮

Bichete ganhou um teclado sem fio
Bixete feliz ganhadora de um incríveis mouse e teclado sem fios. Cortesia do Laboratório LIA.

Bixos
Acostumem-se. Na computação é trote o ano todo!

Bixo ganha camisa

camisa_laranja.JPG

Bixo ganhador da camisa “Eu faço programa”.

Mais uma bixete
Mais uma bixete pintada.

Eu peguei o email da maioria dos calouros. Estamos organizando a nossa tradicional Semana Zero e provavelmente vamos ter três cursos: Software Livre, Java e Netbeans. Eu aproveitei para entregar para cada bixo um CD com o Netbeans para aqueles mais curiosos. Não é a última versão do Netbeans mas já é uma IDE utilizável e há o ambiente Java dentro do CD. É um desses bons CDs para se ter sempre na mochila.

Netbeans 5.5

Eu pegando o mail de um bixo

Os cursos vão ser no laboratório LEC e no LIEST ainda estão em reformas e eu não apostaria que eles estarão prontos a tempo do início das aulas.

LEC

Mas não se preocupem, vamos dar um jeito nisso. 😉

obs: Meu irmão foi ontem receber os bichos da engenharia, as fotos estão aqui.

Monitor de Memória do Netbeans

Você já viu em algum screencast um monitor de memória na barra de ferramentas do Netbeans?

Monitor de memória

Bem lega, né? Essa ferramenta mostra um gráfico animado do consumo de memória do Netbeans. Ele também permite que você chame a Coleta de Lixo clicando nele

Para ativar essa ferramenta no Netbeans 6 (download), vá em View → Toolbars → Memory.

View → Toolbas → Memory

Desenhando com Java e Netbeans

Criar um componente flexível, derivado do Swing, para fazer desenhos não é difícil. Você pode criar um componente gráfico para plotar funções, mostrar gráficos, jogos, etc.

Para ilustrar esse tutorial eu vou usar o Netbeans 6.0 (download), uma IDE livre, multiplataforma e multilinguagem. Provavelmente você poderá seguir todos esses passos em versões anteriores do Netbeans ou, com um pouco mais de dificuldade, sem usar o Netbeans.

Netbeans aberto e vazio
Figura 1. Netbeans aberto e sem nenhum projeto.Passo 1 – Criando um novo projeto: Inicialize o seu Netbean e vá em File → New Project.

Janela de New Project
Figura 2. Janela New Project

Em Categories escolha Java, em Projects escolha Java Desktop Application. Em seguida clique no botão Next.

Janela New Desktop Application
Figura 3. Janela New Desktop ApplicationFique a vontade para escolher o campo Project Name, eu chamei de Desenho. Os outros campos deixe como já estão por padrão. Clique em Finish.

Passo 2 – Criando a classe JDesenho:

Ambiente Netbeans com o projeto já inicializado
Figura 4. Ambiente Netbeans com um projeto de Aplicação Desktop Java já inicializado.Agora já temos o esqueleto do projeto pronto, inclusive já compilável e executável.

New Java Class
Figura 5. New → Java Class.Com o botão direito do mouse vá na aba de projetos, na esquerda, e clique no pacote (um pacotinho amarelo dentro de Source Packages) e vá em New → Java Class.

Tela New Java Class
Figura 6. Janela de Criação de classe Java

Em Class Name coloque JDesenho e o resto deixa com o padrão (Project Desenho e em Package desenho). Clique no botão Finish.

Com isso temos uma classe JDesenho vazia. Vamos faze-la ser uma subclasse da classe JPanel do Swing.

public class JDesenho extends JPanel{
}

Dica de importação
Figura 7. Recurso da IDE para adicionar importação

Quando você escrever isso você verá um pequeno ícone de lâmpada com uma plaquinha vermelha no lado esquerdo da linha de código. Isso quer dizer que esse seu código não compila mas há uma dica de como resolver o problema. Selecione a opção Add import for javax.swing.JPanel.
O problema aí era que o nome JPanel não estava no espaço de nomes. Isso foi resolvido importando o pacote JPanel.

Passo 3 РSobrescrevendo o m̩todo PaintComponent: coloque o cursor de edi̤̣o dentro da classe JDesenho e aperte as teclas control e espa̤o.

Control+Espaço é o atalho para completação de código. Comece a escrever PaintComponent, nas primeiras letras você vai achar o método e o editor vai mostrar a documentação. Pressione enter para escolher sobrescrever o método PaintComponent.

Editor com dica de código
Figura 8. Completação de código.

Nessa altura do campeonato o código-fonte da JDesenho estará mais ou menos assim:

package desenho;

import java.awt.Graphics;
import javax.swing.JPanel;

public class JDesenho extends JPanel{
    @Override
    protected void paintComponent(Graphics g) {
        super.paintComponent(g);
    }
}

O Graphics é a classe abstrata base para qualquer classe que permita desenhos. É através dela que vamos fazer nossos desenhos.

Só para fazer um teste vamos escrever um código que pinta o Graphics de preto (na verdade pinta um retângulo preto no Graphics). O seu método paintComponent vai ficar assim:

    protected void paintComponent(Graphics g) {
        g.setColor(Color.black);
        g.fillRect(0, 0, 500, 500);
    }

(lembre-se de adicionar os imports usando as dicas de código)

Passo 4 – Trocando um JPanel por um JDesenho: agora vamos testar nossa classe JDesenho.

Customize code
Figura 9. Escolha Customize Code.

Vá na aba DesenhoView.java e clique no meio da janela. Um menu vai aparecer e você escolhe Customize Code.

Janela Code Customizer
Figura 10. Janela Code Customizer

Na primeira linha, mude a caixa do lado direito de default code para custom creation. Na caixa de texto troque o JPanel pelo nosso JDesenho:

mainPanel = new JDesenho();

Note que a variável mainPanel é do tipo JPanel. Como JDesenho herda JPanel então estamos usando polimorfismo.

Agora é só testar, apertando F6 ou clicando no ícone run.

Janela Preta
Figura 11. Tá preto? Então funcionou.

Passo 5 – Desenhando: Para fazer mais desenho é só colocar código dentro do método paintComponent da classe JDesenho.

Por exemplo, com a classe JDesenho dessa forma:

package desenho;

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import javax.swing.JPanel;

public class JDesenho extends JPanel{
    @Override
    protected void paintComponent(Graphics g) {
        g.setColor(Color.white);
        g.fillRect(0, 0, 500, 500);
        g.setColor(Color.darkGray);
        g.fillOval(150, 200, 200, 40);
        g.setColor(Color.red);
        g.fillOval(100, 80, 150, 150);
        g.setColor(Color.pink);
        g.fillOval(120, 105, 30, 30);
        g.setColor(Color.blue);
        g.setFont(new Font("Arial Bold", Font.PLAIN, 36));
        g.drawString("http://silveiraneto.net", 30, 50);
    }
}

Você obtém esse desenho:

Desenhando uma string e algumas figuras ovais
Figura 12. Desenho de 3 figuras ovais, um retângulo e uma String.

Você também pode carregar imagens de vários formatos e há muitas formas de se fazer isso. Nesse exemplo eu vou abrir um arquivo chamado silveira.jpg que está na pasta “/tmp”, em seguida vou desenhar ele no Graphics e fazer alguns outros desenhos por cima dele.

package desenho;

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Image;
import java.awt.Toolkit;
import javax.swing.JPanel;

public class JDesenho extends JPanel{
    @Override
    protected void paintComponent(Graphics g) {
        g.setColor(Color.white);
        g.fillRect(0, 0, 500, 500);

        Image img = Toolkit.getDefaultToolkit().getImage("/tmp/silveira.jpg");
        g.drawImage(img, 50, 55, this);

        g.setColor(Color.black);
        g.drawLine(75, 100, 75, 150);
        g.drawLine(75, 100, 25, 70);
        g.drawLine(75, 100, 125, 70);
        g.drawLine(75, 150, 100, 200);
        g.drawLine(75, 150, 50, 200);
        g.drawLine(75, 150, 100, 200);

        g.setColor(Color.yellow);
        g.fillArc(200, 50, 150, 150, 140, -270);
    }
}

E vai ficar assim:

oh não! pac man
Figura 13. Corre, corre, corre!

Eu recomendo que você olhe a documentação do Graphics e do Graphics2D. Veja também pode fazer animações fazendo sua classe JDesenho implementar a interface Runnable.

Screencast: Novidades no editor do Netbeans 6.0

Continuando minhas aventuras no mundo dos screencast eu preparei mais um mostrando algumas das novidades no editor de código-fonte do Netbeans 6.0.

Esse screencast cobre o que eu consegui mostrar no café com tapioca de dezembro e eu ainda quero fazer outros mostrando o Matisse (editor gráfico do NB) e o Collaboration (pluggin multiusuário).

Makingoff: Eu usei o Istambul, uma ferramenta para captura de screencasts no Linux. Infelizmente eu ainda não estou conseguindo gravar áudio com ele. Depois eu converti de ogg pra flv com o memcoder e usei o Flash Media Player para criar a página que toca o vídeo.

Relato e fotos da Caravana

Ontem passou aqui por Fortaleza a Caravana da Tecnologia 2007 trazendo muita gente boa e fazendo um grande evento.

Logo cedo da manhã tivemos a primeira palestra com o Tim Jacobson sobre computação de alto desempenho com o Sun Studio.


Pthreads, OpenMP e MPI

Ele mostrou um pouco de história e as diversas ferramentas para se trabalhar com computação de alto desempenho.


A tradução simultânea em ação sendo transmitida via FM para quem trouxe seu radio.

Tim também falou da importância de se aprender a programar para processadores de múltiplos núcleos e também falou um pouco sobre linguagens, programação e mercado de trabalho.


Tim falando sobre processadores multi-core em seu notebook.

Houveram vários benchmarks sobre otimização e também sobre os compiladores da Sun. Uma ótima palestra para quem, como eu, brinca com clusters e supercomputadores.

A segunda palestra foi a do Edward Pilatowicz sobre o sistema operacional livre, o OpenSolaris. Ele é um desenvolvedor do kernel do OpenSolaris e conhece a fundo o sistema.


Ed respondendo às dúvidas da plateia.

De longe o que eu gostei mais foi o DTrace. É algo tão incrível que é difícil de explicar.

O Dtrace é um ferramenta livre do OpenSolaris para fazer inspeção num programa rodando. Eu nunca tinha visto nada parecido. Com o DTrace você consegue inspecionar o código para saber em que função o programa entrou mais, quanto tempo levou, quais os parâmetros e praticamente qualquer coisa.


Ed tirando coelhos da cartola =D

Você pode inclusive ver as chamadas entre diferentes processos, kernel ou libc. É como se você estivesse vendo o mundo com os olhos do sistema operacional.

Ed também fez uma apresentação do ZFS, um robusto sistema de arquivos que eu estou ansioso para usar. É surpreendentemente diferente dos sistemas de arquivos que eu estou familiar.


DTrace em ação.

Ed falou também sobre o Projeto Indiana, que a partir de agora deve ganhar uma certa popularidade. O projeto Indiana é uma distribuição do Opensolaris mais bonita e fácil de usar, como o Ubuntu é para o Linux.

Ao final da palestra todo mundo que estava lá ganhou um kit com CD e DVD do OpenSolaris e também um livreto de introdução ao opensolaris com práticas de ZFS e DTrace.


Livretos Introdução a Sistemas Operacionais – Uma abordagem prática usando o projeto OpenSolaris.


Eu ganhando o meu DVD =D

Se você ficou sem esse material, não se preocupe. Esse livro está disponível para download aqui. Já os CDs e DVDs você pode baixar no site do OpenSolaris. Você também pode pedir um OpenSolaris Stater Kit para ser entregue em sua casa.


Uma pausa para o almoço =P


Tropa de elite tocando num iphone.


Um kit do SunSPOT, no momento só disponível para venda nos EUA.

A tarde houve uma apresentação sobre o SunSPOT (Sun Small Programmable Object Technology).


Ligando os brinquedos.


Botão de ligar/desligar e saída USB do SunSPOT


Um SunSPOT ligado.

Dentro do SunSPOT há uma Máquina Virtual Java (a Squawk) e diversos brinquedinhos como sensores de luz, movimento, aceleração, temperatura, transmissor de rádio etc.


SunSpot na minha mão.

Foi uma palestra que deu muito o que falar até porque é sempre um assunto que desperta muita curiosidade. Se você quiser saber mais sobre o SunSPOT, vá aqui.

A palestra seguinte foi a do Tim Boudreau sobre Java e Netbeans.

O Tim mostrou um release do Netbeans 6. Foi muito normal escutar ooooh vindo da platéia enquanto ele mostrava as novas funcionalidades.

Eu falei um pouco (e de improviso) sobre o Sun Academic Initiative (SAI) e sobre o programa de Embaixadores de Campus da Sun. Em breve eu faço um post explicando tudo sobre o SAI.

Por fim o Bruno Souza (aka Javaman) deu uma palestra sobre Software Livre e nós tivemos uma maratona de perguntas e respostas sobre os mais diversos temas, sobretudo Java.


Maurício Leal respondendo perguntas.

Foi muito bom também porque eu pude finalmente conhecer o Eduardo Lima pessoalmente. Agora ele não é mais só uma voz misteriosa no telefone. =D


Quase todo mundo junto e mais alguns professores de algumas faculdades daqui.

O pessoal tinha que voar para Salvador a meia-noite então nós fomos jantar no Coco Bambu para a caravana experimentar algumas comidas típicas daqui.


Com certeza foi um dia muito divertido.

Eu queria agradecer a todo mundo que esteve por trás do evento, a caravana, ao Felipe Gaúcho que mesmo lá em Zurique conseguiu estar do nosso lado fazendo tudo, ao CEJUG que esteve suando a camisa para que tudo desse certo, a FANOR pela infra-estrutura e pelo apoio e a todos que compareceram ao evento.

Foi realmente um sucesso e esperamos repetir a dose qualquer dia desses.

  • bônus 1: o restante das fotos que eu tirei estão aqui.
  • bônus 2: O Rafael Carneiro também fez um post sobre o evento, aqui.
  • bônus 3:  O Edward também colocou algumas fotos aqui.

Mini-banner para a Caravana da Tecnologia 2007

Eu fiz um mini-banner (em gif animado) para a Caravana da Tecnologia 2007 que vai acontecer semana que vem. Vou colocar ele nos meus blogs até quarta-feira. Aqui está ele:

Caravana da Tecnologia 2007

Se você quiser ajudar na divulgação do evento, coloque esse código no seu blog:


Você pode fazer seu próprio mini-banner para divulgar o evento quando ele passar na sua cidade.
Eu fiz essa animação no Gimp, o código-fonte do arquivo está disponível para download aqui: mini_banner_caravana.xcf.