Blog do TreinaWeb!

Blog do TreinaWeb

Dicas, notícias e informações sobre cursos, programação, webstandards e desenvolvimento web.

Posts com a Tag ‘Java’



  • Previsões para o desenvolvimento de software em 2011


    19 de January de 2011

    Antever o futuro num mercado tão volátil como o de TI pode ser complicado. Mais complicado ainda é fazer previsões para a área de software, diante de tantas fusões e aquisições. Por exemplo: é natural que muitos programadores estejam preocupados sobre “o que fazer com a Oracle?”. Desde que o gigante concluiu a aquisição da Sun Microsystems, em Janeiro, movimentou-se agressivamente para consolidar o seu controle sobre o portfólio da Sun. Os programadores Java ficaram de baixo de fogo cruzado.

    A decisão da Apache Software Foundation em sair do Java Community Process (JCP), foi uma condenação muito forte ao processo de especificação Java, sob a direção da Oracle, e lançou sérias dúvidas sobre o futuro da Java livre e aberta. Esperam-se mais deserções da JCP, em 2011, embora estes sejam gestos mais simbólicos do que qualquer outra coisa.

    Agora, a questão principal para a Apache Software Foundation (ASF) é saber como proceder. A Java tornou-se muito central nos esforços da organização para ela abandonar a tecnologia. No passado, a ASF contava com o apoio de empresas como a IBM, mas a decisão da IBM de reduzir o seu desenvolvimento sobre Apache Harmony, em favor do OpenJDK, da Oracle, deixa à ASF poucos aliados capazes de ajudar a fazer frente à Oracle.

    A Google deve movimentar-se para preencher esse vazio. A Google usa Java de forma ampla nos seus centros de dados, mas sua batalha legal com a Oracle sobre o uso da tecnologia Java no Android pode deixar um gosto amargo na boca. A Google deve tornar-se mais ativa no seu apoio ao desenvolvimento de código aberto da Apache, e no alojamento de recursos e documentação para dar aos programadores maior confiança na escolha de uma aplicação Java que não esteja sob o calcanhar da Oracle.

    A longo prazo, no entanto, a Google não pode se dar ao luxo de colocar todos os seus ovos na cesta da Java. Haveremos de ouvir falar outra vez da Go, a linguagem Java que a Google lançou em 2009, e que tenta tornar mais fácil aos programadores o desenvolvimento de aplicações de processamento paralelo. Embora a Go seja muito imatura para ser um verdadeiro concorrente para a Java, deve-se esperar uma versão beta no final de 2011 capaz de estimular a dinâmica por trás da linguagem.

    Abalo nas plataformas móveis

    Ironicamente, uma tecnologia que não será muito afetada pela disputa entre a Google e Oracle será a Android. A iniciativa da Google é muito importante para o gigante das buscas para ela desistir sem lutar – não falando já nos investimentos realizados pelas operadoras de telefonia móvel e fabricantes de aparelhos como a HTC, Motorola e Samsung. Por enquanto, os bolsos profundos da Google devem ser suficientes para isolar o ecossistema Android de qualquer efeito colateral.

    O posicionamento na pesquisa em mobilidade da RIM é mais precário. Embora, ao contrário da Google, a RIM dê licenças Java para os seus BlackBerry, ela não pode se dar ao luxo ser abandonada pela Oracle, enquanto o Android e a Apple corroem a sua quota de mercado. A RIM deve finalmente perder o domínio em 2011 e anunciar planos para alargar a próxima geração do sistema operativo QNX, que adquiriu para o seu tablet PlayBook, para todos os seus aparelhos no futuro, deixando para trás as raízes da plataforma BlackBerry Java ME.

    Uma plataforma móvel que deve obter muitas atenções em 2011 é a Palm WebOS. O motivo? Em uma palavra: a Microsoft. Como as vendas do Windows 7 Phone continuam a desapontar, Redmond deverá entrar em pânico. Prevê-se que a Microsoft lance um novo “surto” de publicidade em torno da plataforma, no final do primeiro semestre, afastando os seus parceiros fabricantes de celulares – a HP entre eles. Por isso haverá novos dispositivos da marca HP Windows Phone 7 aparelhos nas prateleiras enquanto os WebOS acumulam poeira – mais um erro no mercado móvel tanto para a Microsoft e HP.

    Novas regras, novas dores de cabeça

    As questões jurídicas terão um impacto muito importante, tanto quanto a tecnologia em 2011. Entre estas terá especial visibilidade o tema da neutralidade da rede, tanto para redes fixas como sem fio. Os programadores de aplicações para smartphones serão os mais afetados, tal como as operadoras de comunicações móveis que devem continuar a rever os seus planos de dados, restringindo largura de banda e aumentando as taxas sobre o uso de mais dados do que o pacote pré-estabelecido, pelo menos em países como Estados Unidos e Brasil.

    A questão que os programadores enfrentam hoje – depois de terem presenciado o surgimento da Web 2.0 e AJAX, depois o SaaS e o cloud computing – será como inovar no mercado de software, quando os prestadores de serviço de rede poderão limitar o acesso à largura de banda.

    Outra área em que se espera alguma ação é na aplicação da privacidade online. O debate em torno do WikiLeaks colocou na cabeça do Congresso dos Estados Unidos e de outras nações no mundo que é uma má idéia para deixar a informação fluir livremente na Internet. Isso, combinado com ocorrências periódicas de fuga de dados e violação da privacidade, poderá estimular os legisladores a elaborar novas leis para regular como as informações podem ser partilhadas online. Infelizmente. Muitos esperam que este seja um pequeno desastre, resultando em procedimentos de conformidade vagos e onerosos não só para os programadores de software, como para todos os usuários da grande rede.

    Fonte: Computer World

  • Oracle processa Google por violação de patentes com Android


    23 de August de 2010

    A Oracle encaminhou, na quinta-feira (12) a um tribunal da Califórnia, processo contra o Google por infração de patente e de direitos autorais no desenvolvimento do Android, utilizado em celulares e em dispositivos móveis.

    Segundo o processo, a Oracle questiona o Google por “conscientemente, diretamente e repetidamente infringiu a propriedade intelectual da tecnologia Java, da Oracle” ao desenvolver o Android. Karen Tillman, porta-voz da empresa, diz que a ação “busca soluções apropriadas.”

    Ao adquirir a Sun Microsystems no início deste ano, a Oracle passou a ser dona da tecnologia Java. De acordo com analistas, a ação contra o Google é um sinal de que a Oracle será mais agressiva na busca por licenciamento do Java, ferramenta utilizada em diversos produtos disponíveis na web.

    Larry Ellison, presidente-executivo da companhia, informa que considera o Java um recurso fundamental, uma vez que é utilizado em diversos equipamentos eletrônicos, de computadores a aparelhos de DVD.

    Já para o Google, o processo da Oracle causa desapontamento e consiste num ataque “sem fundamento” não apenas ao Google mas também contra a comunidade Java de código aberto, disse o porta-voz da empresa Aaron Zamost, na sexta-feira (13/8).

    “A comunidade Java de código aberto vai além de qualquer empresa e trabalha todo dia para fazer da web um lugar melhor. Nós defendemos com vigor os padrões de código aberto e continuaremos a trabalhar com a indústria para desenvolver a plataforma Android”, afirmou.

    Agora é ver aonde isto vai dar.

    Fonte: IDG Now

  • JavaFx com JSP


    31 de March de 2010

    Ontem falamos sobre o JavaFx no NetBeans, e para mantermos o tema, falaremos sobre o  JavFx, mas agora em conjunto com o JSP.

    Há vários pedidos de quem desenvolve Java WEB, para utilizar a rica interface oferecida pelo JavaFX em conjunto com as tecnologias JSP ou JSF.

    Isto é possível, como relata Rakesh Menon, do time do JavaFx da Oracle, no seu blog, contando suas experiências com o JavaFx + JSP.

    Uma opção para quem utiliza o Adobe Flex, na camada de interface.

    A solução proposta não é algo fora do comum do que vemos em sistemas WEB Java, na verdade consiste na utilização de Tag que se encarregariam de colocar o applet JavaFx na página. Esse applet que se comunicará com um WEB Service ou enviará formulários para os servlets.

    No post, ele disponibilizou um código fonte de exemplo, para ajudar-nos.

    Fonte: Java, JavaFX and beyond…

  • Exportando dados para Excel em Java


    11 de May de 2009

    Hoje vamos parar um pouco de falar sobre o C# e trazer um código que será muito útil em alguns momentos do desenvolvimento em JAVA.

    Basicamente o que o código abaixo faz é adicionar o conteúdo do ResultSet em um arquivo Excel, mas se você mudar o final do código é possível exportar os dados para outros tipos de arquivos, como pdf e doc.

    try {
    	StringBuffer contenu; //// acho que seria melhor usar o StringBuilder
    	contenu = new StringBuffer("");
    	ResultSet rs;
    	rs= /// aqui você coloca o sql
    	ResultSetMetaData rsMeta = rs.getMetaData();
    	for(int i = 1; i<=rsMeta.getColumnCount(); i++){
    		contenu.append(rsMeta.getColumnLabel(i)+"\t"); /// nesta linha imprime somente os nome dos campos da tabela
    	}
    	contenu.append("\n"); // e temos que colocar todos os dados no StringBuffer
    	rs.beforeFirst();
    	while(rs.next()){
    		for(int i = 1; i<=rsMeta.getColumnCount(); i++){
    			contenu.append(rs.getString(i)+"\t"); /// aqui mostra todos os dados
    		}
    		contenu.append("\n"); 
     
    	} //fim do while
    	//agora, salvando o StringBuffer no arquivo
    	FileWriter excelFile = new FileWriter("myResultSet.xls"); // nome do arquivo
    	excelFile.write(new String(contenu)); //aqui ele passa a String para salvar
    	excelFile.close();
    } catch (Exception ex) {
    	ex.printStackTrace();
    }

    Boa sorte e até a próxima!

  • Google Java App Engine


    16 de April de 2009

    ae_gwt_java

    Aproveitando o tema do post anterior. Se você estiver interessado em aprender Java, esta notícia vai lhe interessar. Esta semana o Google ouviu os desenvolvedores java e lançou o Google App Engine com suporte a Java.

    Para quem não conhecia (ou não sabia) o AppEngine tinha somente suporte ao Python, mas agora qualquer javeiro pode fazer deploy de servlets nos servidores do Google. Falando rapidamente sobre o que o Google disponibilizou:

    * Plugin de desenvolvimento para eclipse: o Google disponibilizou um plugin com suporte a criação de projetos do GWT e já com todas as bibliotecas (e interfaces dos serviços) que pode-se utilizar no AppEngine. Também existe um botão no estilo “one-click-deploy” que permite a publicação da app direto nos servidores do Google.
    * Bibliotecas de serviços: como o ambiente do app engine tem uma série de limitações (como várias restrições na lib IO) para garantir o uso partilhado dos servidores, o google disponibilizou algumas bibliotecas para fazer coisas bem comuns em app web, como mandar email, editar imagens, pegar conteúdo de urls, uso servidores de cache, etc.
    * Suporte a agendamento de tarefas: para aquelas tarefas básicas como atualizar a base de dados, limpar o cache, mandar emails diários, etc. Funciona assim: você cria e cadastra um servlet que deverá fazer a tarefa desejada; depois você edita um arquivo que vai ficar no diretório da sua app com as configurações de tempo, intervalos, prazo, etc…
    * JDO e JPA como interface do BigTable: parece que ficou fácil guardar e mapear os dados do BigTable (sistema de arquivos e base de dados do Google). Agora basta colocar uma anotação no seu POJO que ele pode ser persistido na base do Google, com direito a sharding automático e sem se preocupar com questão de espaço.

    Então faça seu cadastro e começe a desenvolver suas aplicações. Até a próxima!

    Fonte: Google App Engine Blog

  • Quer ser programador Java ?


    16 de April de 2009

    Hoje não vamos postar noticias (Aleluia!!!!), vamos falar de uma coisa que sempre nos perguntam, e como somos formados em informática, mais precisamente ciências da computação, os nossos amigos ou conhecidos que querem se aventurar neste mundo, sempre perguntam: Qual é a melhor linguagem para aprender a programar? Com qual linguagem eu devo começar?

    Na faculdade, alguns anos atrás todos começavamos aprendendo C/C++, antigamente iniciavam com o Pascal, atualmente ensinam Java e algumas linguagens .NET, mas qual é a melhor? Infelizmente esta pergunta não possui uma resposta. Não é possível falar que uma linguagem é melhor que a outra, ou que ela é a pior. No entanto, é possível mostrar as características, grau de dificuldade e como se aventurar no mundo do desenvolvimento de softwares.

    A primeira linguagem que falaremos, como o título sugere, será o Java.

    Começaremos pelo Java, pois é uma das linguagens mais utilizadas atualmente, possui muito material disponível na internet e os profissionais tem ótimos salários (o que conta muito hoje em dia).

    Mas antes de aprender Java ou qualquer outra linguagem, lembre-se é fundamental ter uma boa lógica de programação, conhecemos casos de várias pessoas que tentaram aprender a programar e não conseguiram porque não tinham um raciocínio lógico. Uma vez, um colega nos disse que “lógica de programação não se aprende, você já nasce sabendo”… Discordamos totalmente, pois sempre é possível aprender tudo, desde que se tenha um pouco de dedicação. Em outras palavras, você não vai desenvolver um sistema com apenas um dia de estudo.  Portanto, não espere um milagre… Estude!

    Finalmente, vamos falar, resumidamente da linguagem:

    O que é Java?

    Java é uma tecnologia, que abrange uma linguagem de programação e um programa de execução chamado de virtual machine (máquina virtual). Quando se programa em Java, usa-se a linguagem Java em um ambiente de desenvolvimento Java para gerar um software que será executado em um ambiente de distribuição Java. Isso mesmo, tudo Java. Ah, e vale lembrar que Java é multi-plataforma, funciona em diversos sistemas operacionais.

    Mas por que Java?

    Antes que alguém nos crucifique, não é para seguir a risca o que dizemos aqui, você pode começar por qualquer outra linguagem.

    Particularmente achamos que Java é uma das melhores linguagens para se começar (atualmente, pois o pascal esteve neste posto durante muitos anos), desde que você tenha raciocínio lógico, ou conheça um pouco de C++  (falaremos dele nos próximos tópicos). O Java é bastante intuitivo, e como já falamos, possui diversos materiais disponíveis, e não exige muito conhecimento para começar a desenvolver pequenos sistemas.

    Se você possuir ao menos um conhecimento básico de inglês, terá ainda mais facilidade, uma vez que a maioria dos comandos vem do inglês.

    E tem mais, quase todos os softwares necessários para utilizar Java, são gratuitos.

    Por onde começar?

    Para começar a aprender, é necessário definir principal: você estudará sozinho ou fará um curso? Se você for autodidata, o melhor é estudar sozinho com base nos tutoriais da internet, mas se você for uma pessoal normal, sugiro fazer um curso, por que poderá tirar suas duvidas e os professores o ajudarão em suas dificuldades. Aqui mesmo no TreinaWeb temos um curso básico para iniciantes, e mais dois cursos em desenvolvimento que vão até o avançado.

    Além disso, existem vários sites / comunidades Java, onde é possível tirar dúvidas e baixar exemplos e dicas. Alguns deles são:

    * www.portaljava.com.br
    * www.javamagazine.com.br
    * www.javafree.org
    * www.guj.com.br

    Mas lembre-se se você aprender sozinho vai demorar um pouco para se tornar um especialista, então não se desespere, de tempo ao tempo.

    Por hoje é só, não se esqueça de comentar e até a próxima!