Introdução

Escolhemos a linguagem Java e C# pelo motivo que o Java é uma linguagem multiplataforma e o C# por ser uma linguagem nova que pode ser que possa substituir o Java, além disso as duas linguagens, de um certo modo são descendente do C e C++. As duas linguagens são linguagem orientada a objetos (OOP) e possuem muitas semelhanças como mostra o quadro abaixo:

Característica
Implementação
Inspirado no C/C++
Boa parte da sintaxe de ambas as linguagens foi inspirada no C/C++, especialmente declaração de variáveis, funções e estruturas de controle.
Orientação a objetos
Ambas as linguagens suportam conceitos de programação orientada a objetos com a palavra reservada class.
Herança
Herança simples de classes a partir de ancestral comum e herança múltipla de interfaces.
Gerenciamento de memória
Automático, com “coletor de lixo”.
Tipagem forte
Todas as atribuições tem os tipos validados. Os “casts” são sempre verificados em tempo de execução. Não é possível violar o sistema de tipos.
Compila para código intermediário
Sim. No caso da Microsoft compila para “Intermediate Language” e no Java para “bytecode”.
Tratamento de erro
Exceptions.
Reflections
Ambas as linguagens suportam “reflections”.
Unicode
Ambas as linguagens usam o padrão Unicode para representar caracteres e strings.
Classe que não pode ser herdada
“final” em Java; “sealed” em C#.
Campo constante
“static final” em Java; “const” em C#.
Operador que verifica compatibilidade de tipos
“instanceof” em Java; “is” em C#.





1 - Java

Java foi desenvolvida por um grupo de pesquisadores da SUN Microsystems por volta de 1990, pouco antes da explosão da Internet. Essa linguagem possui estrutura muito semelhante à da linguagem C, da qual descende imediatamente. Java tem em comum com a linguagem C++ o fato de ser orientada a objetos e mantém com esta uma alto grau de semelhança. Esse paradigma de programação consiste de um grau a mais na abstração da programação, em comparação com a programação estruturada, e tem se mostrado extremamente útil na produção de programas cada vez mais sofisticados, em menor tempo e com maior qualidade. A programação orientada a objetos é hoje universalmente adotada como padrão de mercado, e muitas linguagens tradicionais foram aperfeiçoadas para implementar esse paradigma, como C++, Object Pascal, etc.

Tendo sido originalmente concebida para o desenvolvimento de pequenos aplicativos e programas de controle de aparelhos eletrodomésticos e eletroeletrônicos, Java mostrou-se ideal para ser usada na rede Internet. O que a torna tão atraente é o fato de programas escritos em Java poderem ser executados virtualmente em qualquer plataforma, mas principalmente em Windows, Unix e Mac. Em meio a essa pluralidade, Java é um idioma comum, falado por todos. Isto significa que Java é ideal para expressar idéias em forma de programas universalmente aceitos. Soma-se a isso o fato de programas Java poderem ser embutidos em documentos HTML, podendo assim ser divulgados pela rede. Diferente da linguagem C, não é apenas o código fonte que pode ser compartilhado pela rede, mas o próprio código executável compilado, chamado bytecodes.

Em contraste com a letargia de documentos tradicionais, Java acrescenta a interatividade entre o usuário e o documento que está sendo consultado, tornando-o mais expressivo, agradável e surpreendente. Java é ideal para a elaboração de material educacional, pois permite ilustrar claramente os conceitos enquanto possibilita um ensino individualizado.

Há uma certa curiosidade por detrás do nome dado a essa linguagem de programação. Java é o nome de uma ilha do Pacífico, onde se produz uma certa variedade de café homônimo. A inspiração bateu à equipe de desenvolvimento ao saborear esse café em uma lanchonete local. Deram-se conta de como era extremamente apreciado por profissionais da área de software (ao menos nos Estados Unidos), de modo que não foi menos justo fazer-lhe homenagem ao batizar uma nova linguagem de programação.

1.1 - Processo de Compilação

Um programa fonte escrito em linguagem Java é traduzido pelo compilador para os bytecodes, isto é, o código de máquina de um processador virtual, chamado Java Virtual Machine (JVM). A JVM é um programa capaz de interpretar os bytecodes produzidos pelo compilador, executando o programa cerca de 20 vezes mais lento do que C. Pode parecer ruim, mas é perfeitamente adequado para a maioria das aplicações. Com isto, um programa Java pode ser executado em qualquer plataforma, desde que esteja dotada de uma JVM. É o caso dos programas navegadores mais populares, como o Netscape Navigator e o Internet Explorer, que já vêm com uma JVM. A vantagem desta técnica é evidente: garantir uma maior portabilidade para os programas Java em código-fonte e compilados. Porém, as JVM tendem a ser programas extensos que consomem muitos recursos, restringindo assim o tamanho das aplicações escritas em Java.

Atualmente, já existem compiladores capazes de traduzir bytecodes para instruções de máquina nativas, como o Just In Time compiler (ou JIT), tornando os programas ainda mais rápidos. Este compilador requer uma versão específica para cada plataforma onde se pretende que o programa Java seja executado. Em contrapartida à maior velocidade de execução está também uma maior necessidade de memória, pois os bytecodes compilados, em geral, ficam três vezes maiores do que o original. Uma alternativa bem mais interessante, e talvez muito mais viável, é a implementação da JVM em hardware na forma de uma placa ou microchip. A primeira iniciativa neste sentido é da Sun Microelectronics, que está produzindo os chips PicoJava I, MicroJava e UltraJava. Estes são capazes executar diretamente bytecodes, acelerando em milhares de vezes a velocidade de execução. Isto permitirá o desenvolvimento viável de aplicativos cada vez mais complexos, abrangentes e funcionais. Espera-se que estas soluções sejam brevemente empregadas na fabricação de telefones celulares, pagers, jogos, organizadores pessoais digitais, impressoras e eletrodomésticos de consumo, além aplicações mais sérias como estações de trabalho dotadas do sistema operacional JavaOS. Trata-se certamente do futuro das soluções para aplicações de rede.




2 - C#

O C# (pronuncia-se “C Sharp”) é uma nova linguagem criada pela Microsoft em conjunto com a arquitetura .NET.  O símbolo # significa que a nota deve ser meio tom mais aguda. O C# traz este símbolo, pois possui uma linguagem com toda a robustez e cientificidade de sintaxe do C, só que agora "meio tom" melhorado.

Nas últimas duas décadas, C e C++ foram as linguagens mais amplamente usadas para o desenvolvimento de software comercial e de negócios. Embora as duas linguagens proporcionem ao programador uma quantidade enorme de controle granular, esta flexibilidade possui um custo para a produtividade. Comparadas com uma linguagem como o Microsoft Visual Basic, aplicações C e C++ equivalentes frequentemente demoram mais para serem desenvolvidas. Devido a complexidade e longos tempos de ciclo associados a essas linguagens, muitos programadores C e C++ vêm procurando uma linguagem que ofereça um melhor balanceamento entre poder e produtividade.

A solução Microsoft para este problema foi a criação da linguagem C#. Ele é  uma moderna linguagem orientada a objeto que habilita os programadores a construir rapidamente uma ampla gama de aplicações para a nova plataforma Microsoft .NET, a qual proporciona ferramentas e serviços que exploram totalmente a computação e as comunicações.

Devido ao seu elegante projeto orientado a objeto, C# é uma escolha excelente para arquitetar uma ampla gama de componentes – de objetos de negócio de alto nível a aplicações no nível do sistema. Usando construções de linguagem C# simples, estes componentes podem ser convertidos em serviços Web, permitindo que eles sejam invocados pela Internet, a partir de qualquer linguagem rodando em qualquer sistema operacional.

Principalmente, C# é projetado para trazer desenvolvimento rápido para o programador C++ sem sacrificar o poder e o controle que têm sido a característica fundamental do C e C++. Devido a esta herança, C# possui um alto grau de fidelidade com C e C++. Desenvolvedores familiarizados com estas linguagens podem se tornar produtivos em C# rapidamente. Porém o C# modifica bastante o C++ e não tem a pretensão de manter a compatibilidade, apenas a “familiaridade”.

2.1 - Processo de Compilação

Os fontes em C# tem extensão “cs”. Todos os fontes em um “projeto” são compilados diretamente para um único “assembly” (.EXE ou .DLL). Não existe um arquivo intermediário (.OBJ ou .DCU) como no Delphi.

Todo programa criado pelo compilador C# é dito “verificável”. Isto quer dizer que o compilador JIT (Just In Time Compiler) pode, em tempo de execução / compilação, verificar e garantir que o programa não faça nenhuma operação que possa comprometer a segurança e integridade do sistema.

Pode parecer estranho, mas existem instruções MSIL (Microsoft Intemediate Language) capazes de abrir brechas na segurança do sistema, como por exemplo, para manuseio direto de ponteiros ou “casts” inseguros. Estas instruções são necessárias em alguns casos, como por exemplo para que a própria biblioteca chame a API do Windows. Programas que contém estas instruções são ditos “não-verificáveis”.

O compilador C# pode criar programas não-verificáveis, incluindo manipulação direta de ponteiros, com a opção “/unsafe”. Já o compilador C++ sempre gera código não-verificável. Evidentemente é necessário um privilégio especial de segurança para rodar programas não-verificáveis.

É perfeitamente possível criar programas bastante úteis sem violar os critérios de “verificabilidade” e, conseqüentemente, segurança.



3 - Conclusão

Embora compartilhe características com o Java, o C# é uma linguagem que traz vários recursos muito interessantes que não ou existem no Java ou dão muito trabalho para implementar ou têm performance ruim. Porem o Java possui uma grande preferência por seu uma linguagem multiplataforma facilitando muito o serviço de muitos programadores. O C# é um grande candidato a se tornar uma linguagem utilizados pela maioria dos programadores, mas ainda é necessário analisar e efetuar muitos teste.



4 - Bibliografia

C#: A nova linguagem da arquitetura .NET

http://www.msdnbrasil.com.br/colunas/falandoc/col_falandoc_2.aspx

C# e Java

http://www.msdnbrasil.com.br/colunas/falandoc/col_falandoc_3.aspx

Por que o C# é melhor que o Java

http://www.mas.com.br/Artigos/CSharp_Java.htm

C# Language Specification

http://www.csharpbr.com.br/mostra_artigo.asp?id=0007

Introdução ao Java

http://www2.dm.ufscar.br/~waldeck/curso/java/introd.html

Faça um comentário, participe:



O site é totalmente grátis, clique acima em YOUTUBE para liberar o acesso ao site!


.................................... aguardando!!!











































































































































































































Artigos em Destaque



Tecnologia do Blogger.

Palavras mais buscadas no site

Trabalhos Escolares Trabalho Escolar Biologia Português Matéria Português Rede Social Dicas de Português Língua Portuguesa História ZOOLOGIA Facebook Memes Trolls Geografia Memes Zuando muito no face Trollando Memes para facebook Escrevendo em redes sociais Educação Física Concursos Públicos Gramática Dúvidas de Português Esportes Concursos Dicas de Concursos Públicos Biografia Informática O que é a língua portuguesa Química Física Geologia Tecnologia Enfermagem Geofísica Enem Questões para Concursos Cartaz Cartazes Manifestações TI Blocos Econômicos e Organizações Internacionais Sociologia Arte Artes GENÉTICA PROUNI SISU Concordância Diversos Dicas Questões ECOLOGIA Faculdade Simulado Universidade Vestibular Biografias Civilizações Atualidades CAFTA Ortografia Protesto Seu Trabalho Literatura QUESTÕES DE Português com Gabarito Redação Crase Esqui Aquático Computadores analógicos Curiosidades Gramática. História da computação História do hardware Índio EVOLUÇÃO Indígena Uso da Crase - quando há (ou não) crase Artigos 196 a 200 da Constituição Federal Lei n° 8.142 Lei nº 8.080 Organização e Funcionamento do SUS Plural Sistema Único de Saúde Tecnologia da Informação Grafia Hífen QUESTÕES DE RACIOCÍNIO LÓGICO Com Gabarito RACIOCÍNIO LÓGICO Autores Homônimos Parônimos Uso da vírgula Carta Educação Resumos Saúde Vírgula Windows Anita Garibaldi Dica de repelente caseiro contra mosquitos e moscas Manchas Ortográfico Reciclagem Sinônimos Verbos Vocativo Windows 8 Aleijadinho Aluísio Azevedo Aposto Bilhete Carta Argumentativa Carta comercial Carta de Reclamação Carta de informação Carta de solicitação Carta do leitor Cartão-postal Comunidade Andina Convite DOS Dicionário E-mail Emprego Energia Estudar Fast Evolução da Tecnologia da Informação Exemplos de Textos do Cotidiano Fernando Pessoa Formas variadas de linguagem Futebol Futebol americano Gauchês Ginástica Gêneros textuais do cotidiano Idade Média Identidade Imagens para Facebook Instalação Lei Lei federal MS-DOS Matemática Mix Útil Polo aquático Precisão e adequação vocabular Pronomes Psicologia Publicidade Questões de Português Ortografia com Gabarito Reforma ortográfica Significados Texto instrucional (injuntivo) Tênis de Mesa Uso de por que Verbo Windows 7 Windows XP por quê porque e porquê saúde no Brasil 99 : Salário baixo e injustiça A Estrutura Curricular da Disciplina De Educação Física A Grande Influência da Lua em Nossas Vidas. A guerra civil gaúcha A participação do México no Nafta ACENTUAÇÃO ACENTUAÇÃO GRÁFICA ANARQUIA ASEAN Abafadores Abandono Acentos Acústico Adolf Hitler Advérbios Afonso Pena AlCA x ALBA Alca Alfabeto Alimentos que ajudam a perder barriga Anatomia comparada Anel Apec Apostila Apostila Concurso Professor Apostila PEB ll Arroz integral Arte Barroca Arte Rupestre Artesanato Arthur Aguiar Artigos Assíria Asteca Astrolábio Atletismo Até onde a Lua influencia a nossa vida? Automação Babilônia Badminton Balonismo Bancos Barack Obama Barulho Barão de Mauá Barão do Rio Branco Basquetebol Beisebol Benito Mussolini Benjamin Constant Biodiversidade Biogeografia Biologia molecular Boxe Brasil - Eleições 2006 CEI – Comunidade dos Estados Independentes CLIMA Cabo de Guerra Caminhada Cana-de-açúcar Capoeira Caratê Caricom Carlos Chagas Carlos Drummond de Andrade Carros Cartaginês Carvão mineral Casal Castro Alves Celta Charles Chaplin Chico Buarque de Holanda Chinesa - Civilizações Ciclismo Clarice Lispector Classificação dos blocos econômicos Claude Debussy Comemoração em outros Países Como cozinhar o arroz integral Comparativo entre C e java Comunidade Britânica Comunidade Sul-Americana de Nações Conceito Conceitos Concretismo Consciência Copa 2014 Coreia do Norte e a Coreia do Sul Corrida Cortar o consumo de sódio para até 3 g por dia também ajuda na prevenção Criar um ponto de restauração Windows 8 Criatividade - Fazer arte com uma melancia Crise na Tunísia Cruzadas DEFENSIVOS AGRÍCOLAS DENSIDADE DESENHO DESMATAMENTO DESTAQUES NO MUNDO DOMESTICAÇÃO Dança Data Comemorativa Data Mining Data Warehouse Decreto nº 7.508 Deixar Menu Iniciar do Windows 8 igual ao do Windows 7 Desativando as Atualizações Descobrir MAC Address placa de rede. Descrição Desflorestamento Desinstalar programas no Windows 8 Desrespeito com o professor Dia das Mães Dia do Descobrimento do Brasil - 22 de Abril Dica caseira para limpar os rins Dica para retirar manchas de tinta de caneta da roupa Dicas para computador Dicas para tirar as manchas de graxa das roupas Dicionário Web Dom Pedro I Drivers Dual Boot Duque de Caxias ESPÉCIES EM EXTINÇÃO EXPRESSIONISMO Educação no Brasil Educação nota 10 Egípcia Eleição de Dilma Rousseff Energia Solar Engordar Engordei Enunciação e contexto Escalada Escultura Esgrima Esporte Estrangeirismo Estrangeirismos Estudar é para os fortes Exercícios Expedições medievais realizadas em nome de Deus FOTOSSÍNTESE Faca especial para cortar melancia Falsos Sinônimos Falta de Vagas Fauna Fenícia Feriados Feudalismo Figuras de estilo Filogenia Filogeografia Filosofia Fisiologia Flora Fly Fishing Formatação Formação de blocos econômicos Força de Floriano Fracasso da Alca Francesa Frases em imagens Frescobol Futurismo Fórmula 1 G 20 Financeiro GHIA GL GLS GLX GT Germânica Geógrafo Geólogo Ginástica Artística Ginástica de trampolim Globalização Glossário Web Golfe Golfo Pérsico Gonçalves Dias Governo x Educação Graciliano Ramos Grafite Grega Grego Guerra Guerra Civil Americana Guerra de Secessão Guia Prático Gêneros textuais argumentativos Gêneros textuais do universo jornalístico HISTÓRIA DA ARTE Heitor Villa-Lobos Hidroginástica História da Idade Média História do Futebol História em quadrinhos Homero Homo sapiens Homônimas e Parônimas Hóquei IMPRESSIONISMO Idade Antiga Idade Contemporânea Idade Moderna Importância da mulher na sociedade Inca Incluir mais potássio na alimentação pode reduzir risco de AVC Indiana Indicadores Indigena Individualismo Industrialização da China Industrialização e Urbanização Indígena no Brasil Indígenas Inglesa Ingresso Tardio Inscrições Instalando Instalando Windows no Netbook Instalar Windows 7 pelo Pen Drive Instalar Windows Dual Boot Integração da Venezuela ao Mercosul Internet Internet Explorer Isoladores James Watt Japonesa Jet Ski Jiu Jitsu Jogo de Queimada Jogos Olímpicos Pequim 2008 John Fitzgerald Kennedy José de Alencar Judô Karl Marx Kung-Fu LX Lima Barreto Linguagem e comunicação Localização do Golfo Pérsico Loteria Lotofácil Lotérica Luiz Gonzaga MAC Address MEIO AMBIENTE MIGRAÇÕES ANIMAIS MMA Mixed Martial Arts MPFI Madeira Mahatma Gandhi Maia Mamíferos Manguezal Medicina Memórias de Computadores Mercosul Mercosul: Países Integrantes Mercúrio (planeta) Mergulho Mesóclise Minas Gerais Missão Científica Espacial Brasileira Modelos de Processadores Modismos Monarquia Monteiro Lobato Moralismo Morfologia Mundo Summary Musculação Médicos Nado Sincronizado Natal; Dia de Montar e Desmontar a árvore de Natal; Data Comemorativa; Natação Navegadores Neologismo Neologismos Netbook O milênio da mulher O que é Educação Física? OEA OLAP OMC ORGANIZAÇÃO E FUNCIONAMENTO DO SUS - LEI 8080/90 E 8142/90 ORIGAMI Office 2007 Op-art Opep Os livros são um oceano infinito de conhecimento Outlook PEB ll POLUIÇÃO Paleontologia Parkour Pedagogia Pedro Bandeira Pedro Álvares Cabral Pen Drive Pensamentos Persa Pessoa Piaget Pintura Placa tectônica Planejamento e Gerência de Projeto de Software Planície Pleonasmo Pontuação Pop Art Portugal Povos indígenas Presidentes da República do Brasil Primavera Árabe Princesa Isabel Professor Professor trollando aluno que não estuda Pronomes átonos Prosa Naturalista Pré-História Próclise QUALIDADE DE VIDA QUESTÕES DE Português Acentuação Com Gabarito QUESTÕES DE Português Crase com Gabarito Questão do Mensalão R$9 RENASCIMENTO RESPONSABILIDADE SOCIAL ROCOCÓ RX Racismo Ranking Mundial de Educação Rapa-Nui Rebelião Popular Receita caseira para rachaduras dos pés Rede municipal de saúde Redundância Reduza o risco de AVC Relacionamento Remo Repetência Reservas indígenas no Brasil Respeite o Professor Revolta da Armada Revolta da Vacina Revolta na Líbia Revolta no Egito Revolução Federalista Revolução Francesa Robô Romana Romero Britto Russa SADC Saltos Ornamentais Semânticas Senha padrão Seriados Siglas Sintaxe Sismo Sistema Operacional Sistemática Skate Software Som Sono Sorteio Squash Subjuntivo Suméria Surfe Tabelas Cruzadas e DrillDown Taekwondo Teatro Terremoto The Vampire Diaries Tigres Asiáticos Tipos de Frase Triathlon Turca Turfe Tênis Unasul União Europeia União Européia Urbanização da China Urânio Uso do Hífen (Novo Acordo Ortográfico) Venda casada Verbo Auxiliar Verbos Abundantes Verbos Anômalos Verbos Defectivos Verbos Regulares e Irregulares Verbos Transitivos Verbos de Ligação Verdades e mentiras sobre o conflito das Coreias Vida de professo Viking Vocabulário Voleibol Voleibol de Praia Water Bike Word 2007 Xadrez Xenofobia Zuando na escola 2013 aliança concurso configurar configuração regionalismo roteador roteadores tempo verbal toma dicionário na cara Árabe - Civilizações Ênclise

Copyright © Mix Útil