domingo, 26 de julho de 2009

Vantagens e Desvantagens JAVA

Quais são as vantagens de se usar a Linguagem de Programação Java e quais são as suas desvantagens também. Vamos começar citando os contras, logo depois citaremos os prós!

Desvantagens:

A pré-compilação exige tempo, o que faz com que programas Java demorem um tempo significativamente maior para começarem a funcionar. Isso não é um grande problema para programas que rodam em servidores. No entanto isso pode ser bastante indesejável para computadores pessoais.

O padrão Java tem uma especificação rígida de como devem funcionar os tipos numéricos. Essa especificação não condiz com a implementação de pontos flutuantes na maioria dos processadores o que faz com que o Java seja significativamente mais lento para aplicações que utilizem bastante processamento numérico quando comparado a outras linguagens.

Os bytecodes produzidos pelos compiladores Java podem ser usados num processo de engenharia reversa para a recuperação do programa-fonte original. Esta é uma característica que atinge em menor grau todas as linguagens compiladas.

Lembrando que as desvantagens de Java em relação à performance não significam que suas aplicações sejam lentas ao ponto de não serem viáveis para utilização em desktops. Java hoje já possui um desempenho próximo do C++. A grande diferença na performance das aplicações escritas em Java em relação as outras linguagens pré-compiladas se dá no “Start” da aplicação, quando ocorre a geração dos bytecodes.

Entretanto Java não suporta herança múltipla de implementação e nem aritmética de ponteiros, que são aceitos em C++, isso tem um pequeno e importante impacto na produtividade do programador.

Vantagens:

A tecnologia Java é Free, o custo quase totalmente zero, como já foi explicado anteriormente, os editores e ambientes de produção também são gratuitos (NetBeans, Eclipse, Jcreator, entre outros.) e ainda tem a gratuidade dos Servidores de Aplicação (TomCat, Jboss, Jetty e outros.).

A Linguagem é Orientada a Objetos (OO), segue o paradigma OO, o que a torna uma ferramenta extremamente poderosa. E é também Multi-Threaded, o que significa dizer que ela suporta processamento paralelo múltiplo.

Possui portabilidade, onde o mesmo código Java roda em diversas plataformas sem a necessidade de alteração de código e as aplicações podem ser facilmente migradas entre servidores. Tornado desnecessário ficar preso a somente um fabricante.

Java é padronizada e mantida pela JCP (Java Community Process)‏. A JCP é mantida por diversas empresas: Sun, Oracle, IBM, Novell, Xerox.

Pelo fato de Java ser OO, é possível fazer reuso de código já produzido.

E o suporte dado a Tecnologia Java é satisfatório, pois a comunidade Java, hoje, é a mais extensa. Existem inúmeros JUGs (Java User Groups), que promovem eventos, disponibilizam material, artigos, revistas especializadas e fórum de discussoões.

E ainda é possível graças a otimizações como a compilação especulativa, que aproveita o tempo ocioso do processador para pré-compilar bytecode para código nativo. Outros mecanismos ainda mais elaborados como o HotSpot da Sun, que guarda informações disponíveis somente em tempo de execução para otimizar o funcionamento da JVM, isso possibilita que a JVM vá “aprendendo” e melhorando seu desempenho. Isto é uma realidade tão presente que hoje é fácil encontrar programas corporativos e de missão crítica usando tecnologia Java. No Brasil, por exemplo, a maioria dos Bancos utiliza a tecnologia Java para construir seus home banks, que são acessados por milhares de usuários diariamente. Grandes sites como o eBay utilizam Java para garantir alta performance. E a cada ano Java tem se tornado mais rápido, na medida em que se evolui o compilador dinâmico.

Como resultado da diferença entre vantagens e desvantagens, é possível dizer que as vantagens são muito maiores, por tanto, o uso da Tecnologia Java continuará crescendo estromboticamente por todo mundo.

Textos originais retirados de:http://blogetilico.wordpress.com/2007/03/20/java-conceitos-basicos-primeira-parte e www.inpe.br/twiki/bin/viewfile/Competencia/SunInpe?rev=1;filename=Aula-01-Leonardo%5B1%5D.ppt

quinta-feira, 2 de julho de 2009

Princípios da Oracle

Princípios da empresa orientada pelas informações
Ao seguir estes três princípios, a Oracle economizou mais de 1 bilhão de dólares em custos operacionais – até agora. Com estes princípios, que estão incorporados ao projeto do nosso software, coordenamos e agilizamos todos os nossos processos de negócios em todo o mundo.

Simplifique
Acelere a disponibilidade de informações com sistemas integrados e um único banco de dados.
A melhor maneira de simplificar os sistemas de TI – e as operações de negócios – é consolidar as informações. As empresas precisam saber como está sua cadeia de suprimentos, a velocidade com que o estoque gira, o que os concorrentes estão fazendo e em que direção seguem os mercados. Agora. Não no próximo trimestre. Elas precisam de acesso instantâneo a informações precisas e consolidadas para cumprir as exigências legais e regulamentares de responsabilidade e gestão do desempenho corporativo. Para obter essa visão completa de seus clientes e negócios, as empresas precisam simplificar. Todos os sistemas precisam estar conectados e todos os aplicativos de negócios devem compartilhar um único banco de dados de clientes, produtos, informações de serviços e muito mais.
A Oracle Information Architecture consolida todas as informações organizacionais em um único banco de dados para a obtenção de uma visão clara e precisa de cada cliente, cada produto e serviço, cada transação. Uma parte essencial do Oracle Information Architecture é o Oracle Data Hub, que sincroniza dados de produtos de terceiros e de software Oracle em uma definição comum para a empresa inteira – ou seja, uma única fonte de dados.
E no data center, o Oracle Enterprise Manager fornece uma visão global dos sistemas da empresa e permite que seus funcionários entrem em qualquer nível de detalhe que for necessário. As empresas podem centralizar seus aplicativos e informações em menos data centers, melhorando a eficiência e alcançando uma economia significativa.
Agora as empresas podem obter informações—sobre seus negócios e seus sistemas – sob demanda e saber que são precisas e atualizadas. Simples.

Padronize
Reduza os custos e os ciclos de manutenção com componentes abertos e facilmente disponíveis.
Uma infra-estrutura de informação pode se conectar a todos os aspectos de uma empresa – do atendimento ao cliente e a manufatura aos recursos humanos e contas a pagar. A compatibilidade de todos os componentes de TI é fundamental, pois permite que as organizações compartilhem dados entre seus sistemas, no front e no back office.
A padronização de servidores, software e armazenamento baixa significativamente os custos de implementação, manutenção, atualização e treinamento. Por exemplo, processadores Intel ou AMD de baixo custo oferecem os benefícios dos processadores proprietários por uma fração dos custos tradicionais de hardware. O Linux e o Microsoft Windows são sistemas operacionais econômicos e preparados para uso empresarial.
O Oracle Information Architecture é composto por tecnologias integradas e baseadas em padrões para infra-estrutura e aplicativos. O uso de componentes abertos e prontamente disponíveis tanto quanto possível reduz custos, agiliza o gerenciamento e a manutenção, e aumenta a capacidade de adaptação. Além disso, com sistemas e aplicativos padronizados, fica mais fácil agilizar e reproduzir o treinamento, reduzindo ainda mais os custos.

Automatize
Melhore a eficiência operacional com tecnologia e melhores práticas.
O que distingue os aplicativos da Era da Informação dos modelos anteriores é um nível muito superior de automação. A cada lançamento de cada produto, a Oracle oferece mais automação para assegurar que os clientes possam se concentrar no que é crítico para seus negócios em vez do que é crítico para manter seu software funcionando.
O software Oracle inclui recursos de gerenciamento que eliminam muitas das dores de cabeça operacionais do dia-a-dia associadas à manutenção de data centers complexos. O Oracle Enterprise Manager permite aos clientes gerenciar todo o seu software Oracle a partir de um único console. Instalação de software, aplicação de correções, upgrades, balanceamento de carga de trabalho, segurança e muito mais podem ser feitos de forma centralizada. Ou seja, as organizações podem gerenciar toda a sua infra-estrutura como um grande sistema de computação. É possível manter até o maior data center de grid com apenas um ou poucos administradores.
O Oracle E-Business Suite é um conjunto de aplicativos projetados para trabalharem juntos. Os aplicativos da Oracle suportam os fluxos de negócios de ponta a ponta e permitem que as organizações operem todos os seus negócios com um único repositório de dados global. A suíte oferece processos configuráveis e automatizados que se baseiam no fluxo de informações através de vínculos naturais entre as atividades e os objetivos. Um fluxo de negócios pré-integrado, como o das compras ao pagamento, é mais rápido de ser implementado, atinge o ROI mais rápido e baixa os custos gerais de gerenciamento e manutenção associados à implementação de aplicativos individuais. E ao configurar o fluxo em vez de personalizar o aplicativo, os clientes se beneficiam com a redução dos custos de manutenção e atualização do software.

Conclusão
Acreditamos que nossos clientes extraiam mais de suas informações ao usar o software e os serviços da Oracle, aplicando esses princípios. Muitos já melhoraram sua capacidade de usar a informação e a TI como ativos estratégicos e já são capazes de compartilhar dados e processos, medir resultados para aprimoramento contínuo, alinhar suas equipes e oferecer uma única fonte de dados para todos os seus integrantes.