Entradas Recentes »

Olá pessoal, tudo bem?

To iniciando no blog uma nova área que será chamada de Ponto Zero . Nela irei apresentar do zero o desenvolvimento de alguns projetos, sejam eles pessoais ou solicitados por terceiros (quando permitidos,  é claro). Quando falo em apresentar do zero, falo zero mesmo,  postando todas as etapas  possíveis (descrição da solicitação,  análise e modelagem do software, estudo de tecnologias, elaboração de telas, codificação e apresentação do produto final).

Inicialmente tenho três  projetos para postar nessa nova área, um deles é para web, outro para desktop e o terceiro  ainda em análise.  O projeto para web é um sistema de controle de vendas solicitado por um parente, já o desktop é um sistema de gerenciamento de grupos que foi solicitado pelo pastor da minha noiva e o terceiro é um joguinho que sempre sonhei em jogar, mas nunca vi ninguém desenvolver. Em todos esses projetos irei ter que estudar novas tecnologias, então certamente teremos novos artigos técnicos no blog.

Espero que tenham gostado das novidades.  Em breve estarei postando alguma coisa mais sobre cada um dos projetos.

Abraço a todos e até mais.

Bem pessoal, conforme prometido estou postando um artigo técnico que me  parece relevante para quem quer aprender a programar em Java ou quem busca reavaliar seus conceitos de programação Orientada o Objetos. Digo relevante porque quando tive a brilhante idéia de aprender a programar em Java ( a alguns anos atrás), busquei na internet por diversos tutoriais, tentei ler o livro java como programar ( tente ler e vai entender o porque apenas tentei ler ele)  e dentre os matérias pesquisados poucos me ensinaram a utilizar get e sets corretamente. Alguns materiais me ensinaram bem, entretanto  muitos me passaram apenas aquela velha idéia de classe POJO (criar seus atributos, encapsular  com o private e gerar get e sets para todos atributos)  sem me deixar próximo da realidade que eu estava buscando, que era  a lógica do negócio.  Pensando nisso que resolvi passar esse artigo para vocês, pois nele vocês poderão ver quando que se deve criar os gets e sets e como os deixar próximo a lógica do negócio.

Como foi acordado com o pessoal da Caelum, eu não irei postar o artigo em meu blog, então deixarei o link para que vocês possam acessar e desfrutar desse material de excelente qualidade. Segue o link do artigo .

Abraço a TODOs

Fóruns

Bem pessoal, segue abaixo o link de alguns fóruns que tratam sobre a tecnologia Java.

GUJ: O GUJ não é apenas um fórum, ele é  um portal de notícias sobre o mundo Java. Lá tu vai encontrar matérias sobre a tecnologia, artigos técnicos, ofertas de emprego e também um fórum com muitos desenvolvedores qualificados e dispostos a te ajudar a crescer nos conhecimentos Java. Vale muito a pena conferir.
JavaFree:  O javaFree segue o mesmo padrão do GUJ. É um portal de notícias com informações sobre o mundo Java que agrega um fórum com desenvolvedores qualificados para te ajudar a tirar suas dúvidas.  Quando não tiro as minhas dúvidas pelo GUJ, eu consigo tirar elas no JavaFree Vale também a pena conferir.
JavaRanch:   Tu já imaginou em tirar suas dúvidas com os autores da prova de certificação java? Sim, isso é possivel! O forum JavaRanch foi criado pelos criadores da certificação Java e nele tu vê pessoas consagradas como Katy Sierra tirando dúvidas sobre a tecnologia Java. Ah sim, claro, tudo é em inglês.

Estamos de volta

Galera, o blog está voltando com novo visual e apresentando nova proposta de trabalho.  Na versão anterior a proposta era falar sobre Java em si, coisas como sintaxe, boas práticas de programação, dúvidas do ambiente, etc . Agora transcenderemos isso e iremos além, falando sobre JEE (frameworks, design patterns, Containers , JDBC), JSE (GUI), JME, Java Básico, Orientação Objetos, Engenharia de software, analise e desenvolvimento de sistemas, notícias e novidades sobre o mundo Java, artigos técnicos, certificação, links, downloads, construindo um sistema do zero… Em fim muita coisa nova. Muitas dessas novidades  estarão sendo apresentadas com o tempo. O que  posso adiantar é que algumas delas (Ex. artigos técnicos, notícias e novidades) receberão um atendimento especial para que você leitor, possa ficar por dentro dos assuntos de interesse.

Outra novidade é o tempo de postagens. Os assuntos que forem tratados por mim terão um prazo maior para serem postados  no blog. Não irei dar prazos, porque não posso garantir que  irei cumprir. Já os artigos técnicos, notícias do mundo Java, eventos, etc terão uma postagem em tempo menor. A idéia é não deixar o blog nunca parado, então por isso estou adotando essa medida de ter artigos de outras pessoas (devidamente referenciados é claro).  Aliás, você leitor é bem vindo a estar postando novidade, artigo técnico, evento, dando dicas de blogs, sites ou o que tua imaginação permitir.

Antes de finalizar, quero informar que o layout não tá 100% como eu gostaria. Isso é porque ainda não aprendi a mexer 100% com o WordPress, por isso solicito um pouco de paciência caso vejam alguma coisa que esteja errada ou “estranha”, como por exemplo a categoria link entre os assuntos a serem abordados.  Com o tempo estarei mexendo no layout, então não se apavore caso encontre um fundo diferente, categorias em outros locais ou alguma coisa duplicada. Isso é um blog e estarei tentando deixar com uma boa cara para todos, isso inclui vocês  leitores como para mim.

Bem, é isso, sejam bem vindos ao novo DevJava.

Apostilas

Nessa categoria vocês encontrarão alguns sites com materias de qualidade para que possam aprender java.

Caelum Acho que esse link  dispensa apresentações. A Caelum é um referencial nacional no que se trata de cursos ou materias de tecnologia. Aqui vocês poderão encontrar alguns dos melhores materias para que possam aprender java.

T2TI : A T2TI tem uns materias muito bacanas sobre a tecnologia Java. O intuíto da empresa é ensinar tecnologia  através de video aulas e como muitas outras empresas, eles tem uma área que disponiblizilam materias gratuitos. Para a nossa sorte essa área se chama JavaStarter e como o nome diz  “java inicial”. Lá vocês encontram tudo o que é preciso para iniciar a trabalhar com java. Todos os materias são de ótimas qualidade.

Projeto JEDI :  O JEDI (Java Education and Development Initiative)  é um projeto que inicou nas Filipinas que tinha como intuito ensinar as pessoas a programarem em Java através do uso da internet. Esse projeto deu tão certo que o DFJUG (Grupo de usuários java do Destrito Federal) aderiu a idéia e começou a trabalhar nos materias para os traduzir para o Português. Hoje eles contam com diversos materias traduzidos e um forum para auxiliar os alunos em suas dúvidas. Aqui tu conhece Java desde a sintaxe, orientação a objetos até o mais complicado como Engenharia de Software, segurança e redes.

Sobre

Olá!

Meu nome é Ari Cesar e sou formado em Sistemas de Informação pela Universidade Luterana do Brasil (ULBRA). Atualmente moro em Canoas e trabalho como desenvolvedor de sistemas na Getnet Tecnologia de Porto Alegre. Lá faço de tudo um pouco, trabalho com Java, Shell Script, SQL, suporte e atendimento ao CAC (central de atendimento ao Cliente)  e um pouco de PHP ( bem pouco!).
Ainda não sou casado, mas to com o pezinho no altar. Gosto de matemática, física , Informática (óbvio) e Teologia. Sou um cristão convicto, com isso quero dizer que acredito em Jesus como o Cristo e o tenho como meu Senhor e Salvador e creio que Jesus é capaz de mudar qualquer situação que possa existir nesse mundo. Loucura essa minha ultima colocação? Também achava até ter Jesus como filho de Deus, depois que acreditei  vi que não era loucura não.

O motivo da criação desse blog é porque eu queria ver como que iria me sair escrevendo sobre um assunto que amo, apesar de não conhecer muito. Espero que eu consiga agregar um pouco de conhecimento à você leitor. Já aviso que meu estilo literário é a linguagem comum do “povo”, por isso não me espere ver usando palavras difíceis ou complicadas. Eu gosto de ser simples e creio que na simplicidade das coisas que estão os maiores tesouros. Sendo assim, irei trazer informações na forma de “bate-papo”, para que qualquer pessoa tenha condições de entender e aprender sobre o assunto.
O blog vai tratar sobre a tecnologia java em geral, então veremos de tudo um pouco, indo desde a parte prática (sintaxe, boas práticas, metodologias, frameworks, Java Web, Java mobile , Java desktop) até  novidades sobre a linguagem e eventos que estão ou irão ocorrer por ai.

Pessoal

To reestruturando o blog para voltar a ativa. Peço perdão ai para a galera que entrou por mais de 1 ano em busca de algo novo e não encontrou. FAlL ME!
Como minha vida tá bem corrida eu não terei condições de ficar postando toda semana algo novo, mas sempre que tiver alguma coisa interessante estarei postando. Aproveito para solicitar que deixem sugestões de quais os assuntos ou tipo de assuntos que gostariam de ler. Lembrem-se que é sobre java, nada de Python, dot net, Ruby, php ou qualquer outra coisa do tipo. O negócio é java na veia tela.
Meus planos é no inicio de agosto tá com um a cara novo e um post novo. Vamos ver se consigo fazer isso. Ah! Agosto de 2011!!! ^^

Bom, é isso.

Até breve.

Algumas vezes quando estamos iniciando nossos estudos sobre JAVA e seu complexo universo, nós encontramos  algumas apostilas e livros que nos “ensinam” a programar sem o uso de IDE. Essas apostilas e livros nos levam a um prompt do DOS e pedem para compilarmos o nosso “primeiro programa” com uma linha de comando semelhante a essa:

javac HelloWorld.java

Normalmente nós nem nos damos conta que existe esse comando e outros inúmeros , porque quando trabalhamos com JAVA utilizando alguma IDE como o Eclipse, Netbeans ou Jcreator e elas os utilizam “por baixo dos panos”. Mas o que faria se caso ocorresse algum problema e todos os códigos que mande compilar pela IDE não compile (isso é, gerar o .class)? E se esse projeto fosse algo urgente e não existe o tempo hábil para ficar procurando a solução ou baixando uma nova IDE? E se fosse teu trabalho de conclusão de curso e tu precise urgente testar para ver se está tudo certo? Sei que isso se parece muito com alguma das leis de Murphy , mas eu mesmo já vivenciei situações como essas em que precisei urgente compilar e testar as classe, porém estava preso à IDE. Pensando nisso e em alguns outros fatores em que a ciência holística da informática nos proporciona ( ah, tu também aprendeu que a informática faz parte das exatas? É que tu ainda não dependeu completamente dela) irei falar sobre alguns componentes importantes do JDK, o que são JAVA_HOME, CLASSPATH E PATH e como configura-los.

O que são????

Quando se instala o JDK ( Java Development Kit) muitas pastas são criadas com uma infinidade de arquivos. Entre esses arquivos alguns são especiais e são usados para que as classes possam ser compiladas (isto é, gerar o bytecode que é o .class) e executadas. Normalmente ao instalar as IDEs o caminho em que se encontra esses arquivos são criados de forma automática para que quando se clique em RUN (rodar) o código desenvolvido compile e apresente o resultado desejado (ou não né??heheeh). Porém a pergunta é: Quais são esses arquivos, onde se encontram e para que servem?

Quais são os arquivos?

Esses arquivos são o java e javac e se localizam na pasta bin do diretório em que foi instalado o JDK. Junto com eles existem mais 47 arquivos executáveis ( no JSE 6). Abaixo explico um pouco sobre o arquivo java e javac e aproveito para apresentar alguns outros que considero importante e que estão localizados nessa pasta.

java: É executável do java em si. Tem como função lançar a aplicação java, isto é, iniciar o JRE, carregar a classe especificada na JVM e invocar ela no método main. Se escrever java no prompt do DOS  irá ver uma imensidão de linha com os argumentos que ele suporta.

javac: É o compilador que transforma o .java em .class. Sem ele não seria possível criar uma aplicação java.

javadoc: É o responsável por gerar os comentários localizados no código fonte e apresentar no momento da programação. Pode-se gerar o próprio javadoc utilizando algumas linhas de comentários específicas (/** */) ou ver os existentes para os diversos métodos e classes existentes na linguagem. Para testar escreva na IDE a palavra String e deixe o mouse em cima para verificar o javadoc dela.

jconsole: Serve para monitorar e gerenciar os recursos da aplicação java tanto na JVM local como remota. Muito útil para verificação de problemas e rendimento.

policytool: Cria e modifica politicas internas de arquivos de configuração que foram definidos na instalação do JDK.

jrumscript: É um shell com linha de comando para se escrever scipts. Por padrão ele utiliza o javascript , mas pode ser alterado para outras linguagens.

jvisualvm: Apresenta de forma gráfica as informações que estão rodando na JVM.

Caso tenha interesse nos demais executaveis, de uma olhada no site de documentação da sun ou na lista de programas instalados na JDK 6 – Update 16.

Existem também alguns .jars ( na verdade 4) que são utilizados. Esses se encontram na pasta lib e jre/lib do JDK (por favor, não se confunda com a pasta JRE para rodar aplicativos java.) Se lembra das funções do executável java que se localiza na pasta bin do JDK? Pois é, esse cara quando executado ( e sempre é executado porque em caso contrário não existiria o JAVA rodando na tua maquina) inicia a JVM e a JVM por sua vez procura e carrega alguns .jars. Entre esses .jars que são carregados estão os da pasta lib e jre/lib do JDK. Esse assunto da JVM é muito profundo, então caso tenham interesse postem nos comentários que no próximo post eu escrevo sobre isso ou acesse o site da sun que fala sobre o assunto.

Agora que sabemos algumas coisas do funcionamento do JDK, vou explicar o que é o JAVA_HOME, CLASSPATH e PATH, para o que servem e como os montar.

JAVA_HOME: JAVA_HOME, como o nome já diz é a CASA_JAVA (tradução estranha!). É nele que se indica onde que foi instalado o JDK (casa == morada == local em que “MORA” o JDK). Por exemplo: o meu JAVA_HOME é C:\Program Files\Java\jdk1.6.0_17 . Muitas vezes as pessoas pensam que o JAVA_HOME é onde está instalado o JRE. NÃOOOO É ISSO! Quando se pensa JAVA_HOME,CLASSPATH e PATH se usa o JDK e não o JRE.  Esqueça o JRE!!!!!

CLASSPATH: Ele significa caminho de classe. É onde se indica os .jars que estão localizados na pasta lib e jre/lib do JDK.

PATH: Ele significa caminho. Nele se indica onde está os executáveis (aquela pasta bin que comentei antes) do JDK. Em meu caso é C:\Program Files\Java\jdk1.6.0_17\bin.

Como criar o JAVA_HOME, CLASSPATH e PATH?

Para se criar o JAVA_HOME, CLASPATH e PATH é necessário acessar as variáveis de ambiente do windows. Para isso existem diversas maneiras. A partir do Windows XP pode se utilizar a seguinte combinação de tecla de atalhos: Bandeira do windows (aquela ao lado do alt esquerdo) + pause. Irá aparecer uma janela e entre as opções aparecerá as configurações avançadas do sistema. Acessando ela irá aparecer as propriedades do sistema (figura 1). Acesse a aba avançado e clique no botão variáveis de ambiente (figura 2).

fig1 Figura 1 – Propriedades do sistema.

fig2 Figura 2 – Tela com as variáveis de ambiente.

É nessa tela que tu irás criar o JAVA_HOME, CLASSPATH e editar o PATH adicionando as informações desejadas.

MUITA ATENÇÃO NESSA HORA!!!!!

Esse ponto é crucial!!!! Na figura dois, pode ser visto dois tipos de variáveis e respectivos botões. Esqueça por completo os botões NOVA, EDITAR e EXCLUIR da caixa das variáveis de usuário e clique em NOVA na variável do sistema(figura 3).

fig2nova Figura 3: Utilize as variáveis do sistema e não variaveis do usuário.

Clicando em nova irá aparecer a seguinte tela (figura 4).

fig3Figura 4: Adicionando nova variável de sistema.

Nessa tela iremos adicionar o JAVA_HOME e o CLASSPATH.

Atenção de novo!

O nome da variável irá receber o nome JAVA_HOME e o valor da variável será o endereço que foi instalado o JDK. Em meu caso ele foi instalado em c:\program files\java\jdk1.6.0_17 (figura 5). Adicione os valores e clique em OK para validar as informações setadas.

fig_JAVA_HOME Figura 5: Adicionando JAVA_HOME.

Adicionado o JAVA_HOME chegou a vez de criarmos o CLASSPATH. Esse ai será um pouco trabalhoso por se tratar de diversos arquivos .jars. A lógica para criação é parecida com a das figuras 3, 4 e 5, porém mudando apenas o nome e o valor da variável.

fig_CLASSPATH figura 6: Adicionando CLASSPATH.

Agora que temos a JAVA_HOME não é preciso colocar todo o caminho do JDK para a pasta lib e jre/lib, isto é, c:\program files\java\jdk1.6.0_17\lib e c:\program files\java\jdk1.6.0_17\jre\lib. O que precisa-se é indicar a variável de sistema JAVA_HOME e a pasta desejada (figura 6). A seguir como que deve ficar as informações do valor de variável.

.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\htmlconverter.jar;%JAVA_HOME%\jre\lib;%JAVA_HOME%\jre\lib\rt.jar

Escreva exatamente como está acima ( inclusive com o .; no inicio, as %% entre o JAVA_HOME e os ; antes de escrever o novo caminho) ou apenas copie e cole no valor da variável(muito mais fácil né :) ).

Imagino que já tenhas observado que nas variáveis de sistema existe uma variável com o nome PATH. Selecione ela e clique em EDITAR ou de um duplo clique em cima (figura 7). É muito improvável que não exista o PATH nas variáveis do sistema, mas caso não, crie ela.

fig2editarFigura 7: Editando o PATH.

Dentro do PATH devemos adicionar a exata linha de comando: ;%JAVA_HOME%\bin . O PATH editado deverá ficar igual a imagem abaixo.(figura 8). Apenas para lembrar, o igual que eu digo é a linha de comando (;%JAVA_HOME%\bin ) e não o que tem antes dela.

fig_PATH figura 8: Adicionando o valor da variável no PATH.

Feito isso clique Ok para fechar todas as caixas abertas e as validar e acione um prompt do DOS. Dentro dele escreva os comandos que comentei no meio do post (javac, jconsole, jpolicytool, jvisualvm). Caso funcione a aplicação é que está tudo configurado corretamente, caso contrário, verifique se adicionou corretamente o endereço do JAVA_HOME ou se não se esqueceu de algum detalhe como ponto e virgula.

Blog no WordPress.com. | Tema: Motion até volcanic.
Seguir

Obtenha todo post novo entregue na sua caixa de entrada.