Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Comparativo Java / C++

No description
by

Flávio Sapucaia

on 4 January 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Comparativo Java / C++

Java Técnicas e práticas de gerenciamento de memória Gerenciamento de memória explícito.
Desenvolvedor fica responsável por gerenciar em diversas ocasiões.
Alguns processos automatizados, porém é possivel o controle pelo desenvolvedor.
Aloca arbitrariamente blocos de memória e se necessário aloca ou desaloca esses blocos.
Suporta destrutores. Eficiência e Modularidade Conhecida por ser robusta e respeitar as estruturas.
Fortemente tipada
Fácil criação de sub-rotinas.
Sub-rotinas explicitas e alteráveis. Portabilidade O código escrito em Java executa idependente de plataforma.
É necessária a JVM(maquina virtual) para interfacear as chamadas de rotinas do SO. Nível de programação e familiaridade Java e C++ se encaixam como linguagem de alto nível.
Ambas as linguagens implementam uma sintaxe muito parecida com a sintaxe da linguagem C, e possuem uma vasta biblioteca padrão. Um desenvolvedor hábil não teria dificuldades em migrar de uma para a outra em pouco tempo. C++ Java / C++ Portabilidade Não são diretamente portáveis para diferentes plataformas
É preciso recompilar o código para execução em determinadas plataformas.
É necessário um compilador C++ na plataforma. Confiabilidade Linguagem robusta e segura.
Mais estável e menos flexível que o Java.
Utilizada para a criação de Drivers de dispositivos, jogos e ambientes distribuidos. Legibilidade e Capacidade de Escrita Implementa namespaces.
Código mais “enxuto” , com leitura mais direta.
Nomeclatura de elementos e tipos.
Exige do programador um esforço maior para que a compreensão do código seja facilitada posteriormente. Paradigma Principal Evolução da linguagem C para contemplar Orientação a Objetos.
Permite o uso de programação procedural, funcional, orientada a objeto e Metaprogramação de modelos (Template Metaprogramming). Modelo de execução Segue o modelo WOCA (Write Once, Compile Anywhere ).
Necessita ser compilado para gerar um arquivo executável. Eficiência e Modularidade Sub-rotinas sob o conceito de caixa-preta.
Elevado nível de abstração.
Usuário não precisa conhecer detalhes da implementação da sub-rotina.
Não precisa instanciar um objeto para usar um método. Técnicas e práticas de gerenciamento de memória Gerenciamento de memória automático.
Garbage Colector.
Método finalize(), que funciona como um destrutor Confiabilidade Criada para ser uma linguagem robusta e estável.
Visa aplicações com um alto fluxo de comunicações em rede e em sistemas distribuídos. Legibilidade e Capacidade de Escrita Gramática livre de contexto.
Demasiadamente "verborrágica" Paradigma Principal Encoja fortemente a programação Orientada a Objetos
Permite o uso de programação procedural, porém raramente utilizada. Modelo de Execução Segue o modelo WORE (Write Once,Run Everywhere).
Gera bytecodes que são interpretados e executados em uma máquina virtual.
Necessita de uma máquina Virtual para execução. Comparativo entre as linguagens e o impacto que a escolha de uma linguagem tem para um projeto Java C++ Baixa legibilidade dos códigos.
Necessita um nível mínimo de familiaridade com a linguagem. Java “Verborragia” durante o ato de programar.
Legibilidade do código muito maior. Referências http://en.wikipedia.org/wiki/Comparison_of_Java_and_C%2B%2B
http://www.lmc.ep.usp.br/people/gguello/DIFEREN.HTM C++ C++ C++ C++ C++ C++ C++ Java Java Java Java Java Java Equipe: Mario Bortoli
Elton Fraga
Flávio Sapucaia
Full transcript