NetBeans 5.5

Foi anunciada hoje a versão final do IDE (ambiente integrado de desenvolvimento) Java NetBeans 5.5. A ferramenta de desenvolvimento, projeto de software mantido pela comunidade e fortemente apoiado pela Sun, evoluiu muito com a incorporação dos componentes do Sun Java Studio, linha de produtos comerciais baseados no NetBeans, que a Sun primeiro tornou gratuitos e depois doou os fontes para o próprio projeto NetBeans.

Como conseqüência, agora o add-on NetBeans Enterprise Pack oferece ferramentas profissionais para o desenvolvimento Java EE, com suporte ao novo Java EE 5.0 — incluindo opções de download de bundle com Sun Java System Application Server PE 9 ou JBoss Application Server 4.0.4 — e amplos recursos para construção, teste e depuração de aplicações service-oriented architecture (SOA) usando XML, BPEL e Java web services. Além disso, inclui a funcionalidade de modelagem UML (ainda considerada em beta) com os diagramas UML sincronizados em tempo real e bidirecionalmente com o código Java da aplicação.

O NetBeans 5.5 ainda possui add-ons específicos: Mobility Pack voltado ao desenvolvimento para dispositivos móveis; ferramenta de NetBeans Profiler para medição de gargalos de tempo de execução, excessos de uso de memória etc.; Visual Web Pack (atualmente em beta) para desenvolvimento visual de interface web com componentes drag-and-drop; e C/C++ Pack para criação de aplicações em linguagem C ou C++ utilizando o NetBeans IDE.

O NetBeans vem se mostrando uma alternativa de peso ao já consagrado Eclipse IDE, também software livre, que está comemorando seu quinto aniversário.

A competição entre NetBeans e Eclipse parece estar se dando até no visual dos respectivos sites dos projetos: O Eclipse.org recentemente adotou logo no topo da tela principal um destaque às especialidades de uso do Eclipse, com grandes ícones em uma fila horizontal: Enterprise Development, Embedded + Device Development, Rich Client Platform e Java/C/PHP Language IDE; abaixo, vêm as notícias e destaques de conteúdo do portal.

O visual é muito parecido com o que o portal do NetBeans adotou com o advento do NetBeans 5.5 Beta, que apresentava na horizontal grandes ícones para seus principais componentes: IDE, Mobility Pack, Enterprise Pack, Profiler, C/C++ Pack e Platform. Talvez não seja mera coincidência mas sim uma reação o fato que também neste dia 30 o portal NetBeans.org está inaugurando novo design. Para quem tiver curiosidade de comparar, o layout antigo ainda pode ser visto mantido no cache do mecanismo de busca Alexa.

Para saber mais e baixar o IDE e seus Add-ons:

Acrônimos

Você sabe o que é um acrônimo?

Segundo os dicionários, este substantivo e adjetivo masculino significa:

[Do grego acr(o)- (extremo, ponta) + -ônimo (nome)] Palavra formada por uma ou mais letras iniciais de cada um dos segmentos sucessivos de uma locução, ou pela maioria destas partes.

Em termos mais simples, é uma sigla ou espécie de abreviatura com as iniciais de uma expressão formada por várias palavras.

O Houaiss dá como exemplo o acrônimo Sudam = Superintendência de Desenvolvimento da Amazônia. O Aurélio cita o sonar = sound navigation ranging (do termo inglês).

Os americanos também adoram usar siglas e acrônimos. As mensagens — de correio eletrônico e principalmente as instantâneas — na Internet, especialmente as em inglês, costumam conter muitos destes nas frases, para acelerar a digitação. Exemplos: sitcom = situation comedy (comédia de situação, seriado [TV] de situações cotidianas engraçadas), ASAP = as soon as possible (tão logo quanto possível, mais rápido possível), BTW = by the way (diga-se de passagem, a propósito, por falar nisso), AFAIK = as far as I know (até onde sei, pelo que sei), até um caprichado como ROTFLOL = rolling over the floor laughing out loud (rolando no chão de tanto rir).

Se em algum momento você se deparar com uma sequência de letras “suspeita” e desconfiar que trata-se de um acrônimo, eis aqui vários locais onde você pode tirar a dúvida:

Tomcat 5.5.20

O servidor de aplicações web Java Tomcat está com a série 5.5.x bem estável, sem nova versão oficial há quase meio ano desde o lançamento 5.5.17 em 15 de abril de 2006. Agora, está disponível para download desde 28 de setembro o Apache Tomcat 5.5.20. A nova versão traz apenas alguns acertos e correções de bugs.

A página de download do Tomcat 5.5 permite baixar, além da instalação principal Tomcat Core (disponível em pacote compactado multi-plataforma ou instalador específico para Windows), os pactoes opcionais de Deployer autônomo, Embedded (versão para embutir em servidores de aplicação web), Aplicação de Administração do Tomcat via Web, Pacote de Compatibilidade com o JDK 1.4 (o Core básico é compatível com Java SE 5.0 ou superior) e Documentação avulsa (também inclusa no download Core).

Para saber mais:

Microsoft Windows Defender

Desde janeiro de 2005, a Microsoft oferecia em versão beta para avaliação o Windows AntiSpyware, depois renomeado para Windows Defender, fruto da aquisição da empresa Giant Software que desenvolvia originalmente o produto. A versão Beta 2 expira a validade em 31 de dezembro deste ano.

Agora em 23 de outubro, depois de quase 2 anos de avaliação e amadurecimento, foi disponibilizada gratuitamente a primeira versão final (não beta) do Microsoft Windows Defender. Este programa utilitário ajuda a proteger o computador contra ameaças de segurança, pop-ups e perda de desempenho do Windows causados por programas espiões (spyware) e outros softwares indesejados. Funciona em tempo-real, monitorando continuamente o sistema Windows.

O programa, compatível com Windows XP (Service Pack 2) e 2003 e atualmente com opções de interface apenas em inglês, alemão e japonês, é oferecido para download gratuito, como parte do programa de Vantagens de Software Microsoft Original (Windows Genuine Advantage – WGA). Assim, o download exige primeiro que o Windows do usuário seja validado como software original.

Para saber mais:

Fraude do dia: Bagle com senha

A praga virtual (tecnicametne classificada como verme ou, em inglês, worm) Bagle continua a se proliferar, circulando como um anexo de e-mail. A característica que mais me impressiona é que, para tentar despistar os antivírus, o Bagle.GN vem compactado em um arquivo ZIP protegido por senha e anexa também na mensagem uma imagem GIF contendo a senha!

Um exemplo do texto da mensagem de e-mail do Bagle.GN é:

Assunto: Registration is accepted

Thanks for use of our software.
Use password [imagem] to open archive.

O usuário ingênuo praticamente tem que insistir para “conseguir” ter seu computador infectado com o Bagle, pois terá algum trabalho:

  1. Deve abrir o arquivo ZIP anexo. No Windows XP, já existe o Assistente de Pastas Compactadas que já lida com arquivos ZIP. Em versões anteriores do Windows, o usuário teria que possuir instalado um programa à parte capaz de tratar arquivos ZIP, como PowerArchiver ou WinZip.
  2. Ao extrair, é solicitada senha. O usuário teria que digitar a senha fornecida na imagem.
  3. Ao descompactar o executável do programa maléfico, os bons antivírus detectariam o Bagle e o eliminariam. Para chegar até aqui, então, o otário, quero dizer, usuário deveria usar um antivírus ruim ou desatualizado, ou pior ainda: não manter nenhum antivírus ativo.
  4. Por fim, o campeão da ingenuidade ainda tem que executar o programa malicioso extraído, para aí finalmente ativar o Bagle.GN.

Ufa! Hoje em dia é trabalhoso até para ser infectado por verme, hehe. 🙂 E não é que ainda tem gente que cai numa dessa?

[photopress:bagle_senha.png,full,centered]

O Bagle.GN foi primeiramente detectado pela empresa de segurança antivírus Sophos. Ele se instala para execução automática ao iniciar o Windows, se replica por e-mail e permite que um invasor domine o computador infectado.

Para saber mais:

Locaweb: mais espaço, mais recursos, mesmo preço

Sou cliente do excelente provedor de hospedagem e serviços Internet Locaweb, a maior — e certamente uma das melhores — empresa desse ramo no Brasil. Quando acessei meu Painel de Controle no dia 6 passado, tive uma surpresa: vi os valores de máximo de espaço em disco e de banda de transferência mensal 5 vezes maiores que o normal. Quis confirmar se aquilo era uma promoção, um erro ou realmente o que eu imaginei…

Agora é oficial: os Planos de Hospedagem Locaweb passaram a oferecer (muito) mais espaço, mantendo o mesmo preço.

O espaço em disco e a banda de transferência mensal quintuplicaram, e o espaço em cada caixa postal dobrou, em todos os planos. O plano mais básico Profissional I, que sai por R$29,90 por mês, passou a oferecer 500 MB em disco, 25 GB de transferência mensal e as 20 caixas postais que podem ser criadas passaram a comportar 1 GB cada.

Isso além das inúmeras características técnicas e serviços agregados já oferecidos em todos os planos, incluindo até um blog (como este!) com mais 100 MB gratuito. Na plataforma Linux, tem Java (JSP e Servlet), PHP5, Ruby on Rails, CGI em Perl, Python e C/C++, banco de dados MySQL ou PostgreSQL.

Em junho, a Locaweb já tinha dobrado o espaço nas caixas postais e também se tornado a primeira empresa a comercializar o registro de domínios .BR, além do próprio Registro.br do Comitê Gestor da Internet Brasil. Agora, mais esta boa nova. Dá-lhe, Locaweb! Os clientes agradecem.

Tomcat 4.1.34

Enquanto o Java EE 5.0 começa a ser suportado pelos servidores de aplicação Java, e inclui as novas versões de especificações Java para web Servlet 2.5 (JSR 154-MR), JavaServer Pages (JSP) 2.1 (JSR-245-FR) e JavaServer Pages Standard Tag Library (JSTL) 1.2 (JSR 52-MR2), um anúncio de lançamento da Fundação Apache me surpreendeu.

Foi liberada hoje nova versão do Tomcat 4.1, release 4.1.34, de uma série que eu imaginava terminada. A série 4.1.x do Tomcat suporta as especificações Servlet 2.3 e JSP 1.2 de duas gerações passadas, parte do J2EE 1.3. O atual lançamento vem depois de dois anos da última versão estável da série, a 4.1.31 de 25/set/2004. A atualização traz muitas correções de bugs, atualizações de documentação e algumas melhorias.

Enquanto isso, ainda está no forno “em fogo brando” o Tomcat 6, que suportará as APIs web do Java EE 5 — Servlet 2.5 e JSP+EL 2.1 — além de recursos como Advanced I/O, alta disponibilidade e comunicação em grupo (Catalina Tribes).

Desde que a Sun adotou o projeto livre GlassFish como a implementação de referência para a plataforma Java EE 5.0, aparentemente o desenvolvimento do Tomcat esfriou bastante. O Tomcat 6 só começou a decolar em dezembro de 2005, com a contribuição de Jacob Hookom, que cedeu seu código de suporte a JSP e EL 2.1 que implementou para o projeto GlassFish.

Para saber mais:

Horário de verão e a segurança dos computadores

De acordo com o Decreto 5.920 de 03 de Outubro de 2006 do Ministério das Minas e Energia, o horário de verão 2006/2007 no Brasil terá início à zero hora (00:00) do dia 05 de novembro de 2006 (1º domingo do mês), com término à zero hora do dia 25 de fevereiro de 2007 (quarto domingo).

O Alerta do CAIS 20061004, de 4 de outubro, ressalta a importância em manter os relógios dos computadores e equipamentos eletrônicos certos e sincronizados para a segurança da informação. No rastreamento de incidentes de segurança, a consistência dos logs é essencial para se obter e cruzar informações, imprescindível nas investigações e identificação de responsáveis.

Para saber mais:

Commons Lang 2.2 lançado

O macro-projeto Jakarta lançou dia 4 de outubro a biblioteca Java Commons Lang versão 2.2. A nova versão traz apenas correções de bugs e pequenas melhorias neste excelente componente utilitário de programação.

Jakarta Commons

O projeto Jakarta Commons, da Fundação Apache, provê componentes reusáveis Java comumente necessários em diversas necessidades de programação Java e que complementam a API Java padrão. Inclui desde bibliotecas Java com uma grande quantidade de métodos utilitários provendo funcionalidades não encontradas na API Java, ou melhoradas em relação ao equivalente na API padrão, até componentes mais sofisticados provendo recursos de grande utilidade geral ou específica.

Em outras palavras, Jakarta Commons são componentes úteis para você não “reinventar a roda” em Java. Se algum recurso de programação ou estrutura de dados de uso freqüente já não estiver na extensa e abrangente API padrão do JDK, então muito provavelmente deve estar pronta em um dos componentes Commons. Se você não encontrou uma funcionalidade que lhe parece básica nem na API Java SE nem nos componentes Commons, sugiro procurar neles outra vez antes de implementar por si mesmo.

O projeto Commons provê mais de 30 componentes: Attributes, BeanUtils, Betwixt, Chain, CLI, Codec, Collections, Configuration, Daemon, DBCP, DbUtils, Digester, Discovery, EL, Email, FileUpload, HttpClient, IO, Jelly, Jexl, JXPath, Lang, Launcher, Logging, Math, Modeler, Net, Pool, Primitives, SCXML, Transaction, Validator, VFS.

Commons Lang

O componente Commons Lang, como o próprio nome sugere, complementa funcionalidades do núcleo da API da linguagem Java, como as classes do pacote java.lang. Você pode pensar que a API Java SE, já caminhando para seu sexto release, já deve ter praticamente todo o básico, mas Commons Lang ainda oferece muitos recursos complementares, às vezes simples, mas sempre muito úteis e que podem tornar sua codificação Java mais ágil, concisa, clara, prática, robusta e eficiente.

Por exemplo, na manipulação de texto (String), a classe StringUtils oferece dezenas de métodos para manipulação de strings, todos null safe, isto é, tratam sempre a possibilidade do objeto String nulo (null) para que nunca gerem a exceção NullPointerException.

isEmpty(str) verifica se uma String é vazia (“”) ou null. Claro que sempre pode-se fazer um teste como
if (texto == null || texto.length() == 0)
Mas não fica muito mais conciso e elegante fazer um import static [JDK5+] do método StringUtils.isEmpty e testar simplesmente como abaixo?
if (isEmpty(texto))

E que tal um equals(str1, str2) que trata a possibilidade de um ou ambos os parâmetros serem nulos? Trivial, mas muito útil.

Mudando para o pacote time a classe DateUtils oferece métodos como addDays(), addHours(), addWeeks(), addYears() etc. que retornam um novo objeto resultante do cálculo data + campo; além de métodos para comparar se dois objetos Date estão no mesmo dia, e para arrendondar e truncar uma data (até o nível especificado, como hora, dia, mês etc.). Já FastDateFormat é uma implementação mais rápida e thread-safe da classe SimpleDateFormat do Java.

Isto é só uma pequena amostra. Sugiro você conferir por si mesmo. E se gostar do Commons Lang (aposto que sim!), não deixe de conhecer os demais componentes do projeto Commons.

Spring 2: simples, poderoso e comprovado

Hoje o Spring Versão 2.0 final foi lançado. A nota de lançamento declara:

Esta distribuição estável e em nível de produção vem depois de 9 meses de ativo desenvolvimento. Neste curto período de tempo a série Spring 2.x foi amadurecida imensamente, se beneficiando dos mais de 150 mil downloads dentre as 9 versões preliminares, resultando em mais de 750 chamados (bugs) no JIRA resolvidos, 50 deles introduzindo novos recursos relevantes.

O que há de novo?

Os produtores acreditam que três atributos capturam o que os usuários esperam da série Spring 2.0: Simples, Poderoso e Comprovado.

O anúncio oficial detalha os recursos pontuados por estes três atributos principais, e lista recursos adicionais da nova versão.