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.

terça-feira, 16 de junho de 2009

Delphi

O Delphi é um outro ambiente integrado de desenvolvimento antigamente produzido pela Borlando, atualmente quem o produz é a Embarcadero. Sua linguagem é o Object Pascal, a mesma utilizada pelo Turbo Pascal.


Inicialmente foi desenhado para a plataforma Windows, posteriormente ganhou uma versão também para Linux lançada em 2001, chamada de Kylix com as mesmas funcionalidades, este por sua vez possui o desenvolvimento descontinuado. Atualmente vem sendo desenvolvido um projeto chamado Lazarus, sendo que este possui uma interface muito semelhante ao Delphi, porém o Lazarus tem a vantagem de ser multiplataforma, ou seja, roda tanto no windows quanto no Linux.

Uma curiosidade sobre o Delphi, é que seu nome foi inspirado na cidade de Delfos, único local da Grécia onde era possivel consultar o Óráculo de Delfos. Seu nome se deve ao fato de os desenvolvedores buscar uma ferramenta que permitisse acesso ao banco de dados Oracle. Devido a esse fato surgiu o trocadilho "a única maneira de acessar o oráculo é usando Delphi".
Muito utilizado no desenvolvimento de aplicações desktop, aplicações multicamadas e cliente/servidor. Além de ser compatível com os mais conhecidos banco de dados do mercado.
O Delphi foi o primeiro a ser descrito como um ambiente de Desenvolvimento Rápido de Aplicações (RAD). Em 2003, a versão Delphi 8 incluiu suporte para desenvolvimentos de aplicações .NET.

Em 2004, agora com a versão correspondente a 9, além de trazer as funcionalidades das suas versões anteriores, integrou ao ambiente de desenvolvimento a possibilidade de se desenvolver utilizando o ambiente do Delphi, C++ Builder ou c#. Na versão correspondente ao 10, o gerenciador de memória utilizado pelo Delphi foi substituído, toenando os aplicativos compilados em Delphi mais rápidos. Essa é a versão mais rápida do Delphi.

As principais diferenças entre o Delphi/Kylix e outras ferramentas de desenvolvimento são: a programação visual, programação orientada a eventos, as paletas VCL e CLX, forte ênfase na conectividade com diversos bancos de dados e um grande número de componentes produzidos por terceiros, muitos deles disponíveis na internet e grande parte deles com o código fonte disponível. Algumas vantagens do Delphi são: a existência de uma grande quantidade de componentes prontos em sua biblioteca, facilidade de uso e aprendizado e desenvolvimento rápido.

Algumas particularidades do Delphi são:
  • O visual, o usuário pode criar seu programa com a interface da maneira que desejar utilizando os componentes disponíveis na barra de ferramenta;
  • A Linguagem Orientada a Objetos trazida pela linguagem Object Pascal, que traz os conceitos de classe, herança e polimorfismo;
  • Orientação a Eventos, onde cada elemento de uma interface é capaz de capturar e associar ações a uma série de eventos;
  • Compilação, que é a geração de códigos em uma linguagem que a máquina entenda e que possa executar os aplicativos.
A seguir temos um exemplo de uma simples aplicação em Delphi passo a passo:
  • 1° Inicie o Delphi.
  • 2° No formulário que apareceu na tela, coloque um botão(Tbutton).

Nota: para colocar um botão, basta clicar sobre ele na paleta Standard e depois clicar no formulário, caso queira requintar seu aplicativo, altere suas propriedades.

  • 3° Clique duas vezes sobre o botão que apareceu.
  • 4° Deverá aparecer o seguinte código na sua tela:
procedure TForm1.Button1Click(Sender: TObject);
begin
end;
  • 5° Verifique que estamos programando o evento onclick do botão, ou seja o que programarmos irá acontecer quando o usuário clicar no botão.
  • 6° Vamos utilizar a procedure ShowMessage() da unit Dialogs, ela é responsável por mostrar uma mensagem na tela.
  • 7° Entre o begin e o end do evento digite:

ShowMessage('Olá Mundo');

  • 8° O código final deverá ficar assim:
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage('Olá Mundo');
end;
  • 9° Clique no botão verde da barra de ferramentas (uma seta para a direta) ou tecle F9.
  • 10° pronto, seu primeiro programa em Delphi esta rodando.

quinta-feira, 7 de maio de 2009

Oracle migra para Linux!


:. Oracle terminando a migração para Linux

Em outubro, a Oracle migrou para Linux 5000 mil programadores, que estavam envolvidos com o Oracle Applications. Agora, começou a migração dos programadores envolvidos com o gerenciador de banco de dados propriamente dito. A previsão é de que até o final do ano o Linux seja a plataforma de desenvolvimento principal da empresa. De acordo com um dos diretores da Oracle, a migração está sendo feita porque o Linux é mais barato e mais rápido.

E nessa história de migrar para Linux, a Oracle não está sozinha. A Dell também andou mudando alguns de seus servidores internos para o Red Hat, e a Novell também andou trocando o sistema anterior para o seu SUSE Linux.

A Oracle, porém, é pioneira em matéria de grandes migrações. No início dos anos 90, ela migrou do Digital Equipment's VMS para o Solaris. Agora, ela está saindo do sistema da Sun e passando a usar diferentes versões do Red Hat e do SUSE. Segundo o diretor da Oracle, a empresa não optou por usar Windows porque os programas escritos para ele não são portáveis para outras plataformas.

http://news.com.com/2100-7344_3-5220881.html

http://developers.slashdot.org/developers/04/05/27/0117254.shtml?tid=106&tid=185&tid=190

segunda-feira, 27 de abril de 2009

Adaptive Server Enterprise (ASE)

Propriedade da Corporação Sybase, a ASE é um emblemático produto da classe empresarial do modelo relacional de banco de dados. É predominantemente utilizado na plataforma Unix, mas também está disponível para Windows.

História
Originalmente criado em 1987 para plataformas Unix, produto da Sybase Corporation primária no sistema de gestão de banco de dados relacional, foi inicialmente comercializado sob o nome de Sybase SQL Server. Em 1988 o SQL Server OS/2 foi co-desenvolvido pela Sybase, Microssoft e Ashton-Tate. Por demonstrar grande interesse, tornou-se parceiro parceiro da portabilidade do SQL Server para o Windows NT.
Em 1993 o acordo licenciado do desenvolvimento entre a Microssoft e a Sybase terminou culminando na separação das empresas e as mesmas continuaram a desenvolver suas respectivas versões do software.
Em 1995, a Sybase liberou o SQL Server 11.0. Começando com a versão 11.5, lançada em 1996, a Sybase teve de modificar-se para diferenciar o seu produto a partir do Microsoft SQL Server, terminando assim por renomeá-lo para Adaptive Server Enterprise.
A Sybase prevê nativas interfaces de programação de baixo nível para o seu banco de dados que utiliza um protocolo chamado Tabular Data Stream. Antes da versão 10, o DBLIB (Database Library) foi utilizado. A Versão 10 e as seguintes fizeram utilização da CTLIB (Client Library).
Em 1998, a ASE 11.9.2 foi produzido com suporte para linha de nível de bloqueio e melhorado no desempenho SMP. ASE12.0 foi lançada em 1999 para fornecer suporte ao Java, alta disponibilidade e distribuição de gestão de operação.
Em 2001, o ASE 12.5 foi liberado fornecendo recursos como alocação dinâmica de memória com suporte para XML e SSL entre outros.
Em Setembro de 2005, a Sybase liberou a ASE 15. Ele inclui uma reescrita otimizada de query que é suporto para aumentar o desempenho durante o otimizador tradicional e suporte para particionamento de tabelas e linhas em um banco de dados entre os diferentes dispositivos de discos para reduzir a contençao e aumentar a velocidade na qual os dados podem ser acessados, além de "colunas virtuais" que são computadas apenas quando necessário.
Outras alterações que não o fazem diferente da versão inicial mas que são esperadas em breve, é o apoio para a coluna de nível de criptografia, bem como a capacidade de montar um banco de dados como um "banco virtual" e extrair apenas as informações necessárias.

Curiosidade
O número da versão foi pulado para 15 a partir de 12, porque o número 13 é considerado sem sorte na Europa, Estados Unidos e outros países ocidentais e o número 14 é considerado azar na China.

Estrutura
Uma típica instalação so ASE inclui um "dataserver" que acolhe várias bases de dados. Alguns desres são "sistemas" de dados que armazenam apenas meta-dara usa paea manter o sistema operacional. Os outros são "usuários" de dados que armazenam no formulário de pedido de tabelas e procedimentos armazenados.Os usuários podem acessar os dados usando um login e senha. Uma vez conectado a um Sybase dataserver e o usuário tenha acesso a base de dados e tabelas as permissões são controladas pela definição.