Diferença entre plataforma e linguagem?

25 respostas
A

Bom dia,

Esses dias vi um topico no forum em que alguem falava sobre java deixando de ser uma linguagem e começando a se tornar uma plataforma. E hoje, lendo o livro do deitel, vi isso sobre o .NET:

Alguem pode me explicar o que é essa diferença entre linguagem de programação e plataforma ?

25 Respostas

A

Plataforma é o .net
Linguagem de programação é o C# por exemplo

A

Oi AndreMendes,

http://pt.wikipedia.org/wiki/Plataforma_Java

http://pt.wikipedia.org/wiki/Java_%28linguagem_de_programa%C3%A7%C3%A3o%29

A

Sim, isso eu sei. Mas estou tentando entender o que quer dizer essa diferença… O que é plataforma ?

M

AndreMendes:
Bom dia,

Esses dias vi um topico no forum em que alguem falava sobre java deixando de ser uma linguagem e começando a se tornar uma plataforma. E hoje, lendo o livro do deitel, vi isso sobre o .NET:

Alguem pode me explicar o que é essa diferença entre linguagem de programação e plataforma ?

Plataformas se referem a parte da tecnologia responsável por gerenciar a execução do seu programa, depois dele ter sido traduzido para um formato de bytecode. Como o programa no formato de bytecode não é executado diretamente ele precisa de uma espécie de “sistema operacional” para gerenciar a execução do mesmo e prover serviços especializados. Quando um fornecedor cria um programa para rodar outros programas e fornecer esses serviços, estamos falando de uma plataforma (apesar que alguns consideram que para se tornar uma plataforma de fato, o formato de bytecode utilizado precisa ser adotado por uma parcela significativa do mercado).

A

Então ta,vamos aprender juntos,se eu escrever algo de errado por favor me corrijam.

Linguagem de programação:é um método padronizado para expressar instruções para um computador. É um conjunto de regras sintáticas e semânticas usadas para definir um programa de computador. Uma linguagem permite que um programador especifique precisamente sobre quais dados um computador vai atuar, como estes dados serão armazenados ou transmitidos e quais ações devem ser tomadas sob várias circunstâncias.

Plataforma:

Java é multiplataforma. Quando um programa Java é compilado um código intermediário é gerado, chamado de bytecode. Este bytecode é interpretado pelas máquinas virtuais java (JVMs) para a maioria dos sistemas operacionais. A máquina virtual é a responsável por criar um ambiente multiplataforma, ou seja, se alguém construir um sistema operacional novo, basta criar uma máquina virtual java que traduza os bytecodes para código nativo e pronto! Todas as aplicações java estarão rodando sem problemas.

Eu entendo como plataforma um programa que pode ser um SO ou uma plataforma de desenvolvimento…

A

A plataforma .NET conecta uma grande variedade de tecnologias de uso pessoal e de negócios, de telefones celulares a servidores corporativos, permitindo o acesso a informações importantes, onde e sempre que forem necessárias. (http://www.comquest.com.br/net.asp)

Esta plataforma suporta várias linguagens, que delas saem o código do programa q vc quer.
Basicamente a plataforma é um conjunto de coisas necessárias para o desenvolvimento de um sistema usando uma linguagem.

A

aluisiodsv:
A plataforma .NET conecta uma grande variedade de tecnologias de uso pessoal e de negócios, de telefones celulares a servidores corporativos, permitindo o acesso a informações importantes, onde e sempre que forem necessárias. (http://www.comquest.com.br/net.asp)

Esta plataforma suporta várias linguagens, que delas saem o código do programa q vc quer.
Basicamente a plataforma é um conjunto de coisas necessárias para o desenvolvimento de um sistema usando uma linguagem.

Seria um conjunto de regras,por exemplo,no java SE tem as suas e no java EE já são diferentes…é isso?

A

aluisiodsv:

Basicamente a plataforma é um conjunto de coisas necessárias para o desenvolvimento de um sistema usando uma linguagem.

Desculpe,mas não entendi nada… :?

A

Plataforma pode ser considerado uma implementação de uma especificação ?
Java é a plataforma “geral”, e essa plataforma contém varios tipos de implementação? Como J2SE, JEE, JSF e por ai vai ?
Ou eu falei m###a ?

A

Acho que aqui você está falando sobre a portabilidade em relação ao SO e não a plataforma JAVA.

A

Mais ou menos isso. Só falei em .Net e eu não gosto do .Net. Vamos falar do java então.

Dependendo da plataforma utilizada, basicamente o q difere são as APIs fornecidas e as especificações.

A

aluisiodsv:
Mais ou menos isso. Só falei em .Net e eu não gosto do .Net. Vamos falar do java então.

Dependendo da plataforma utilizada, basicamente o q difere são as APIs fornecidas e as especificações.

Muitas respostas, não sei qual você está confirmando …

A

A plataforma permite desenvolver aplicativos utilizando qualquer uma das linguagens criadas para a plataforma Java, sendo a linguagem padrão a que leva seu próprio nome: o Java.

O universo Java é um vasto conjunto de tecnologias, composto por três plataformas principais que foram criadas para segmentos específicos de aplicações:
* Java SE (Java Platform, Standard Edition). É a base da plataforma; inclui o ambiente de execução e as bibliotecas comuns.
* Java EE (Java Platform, Enterprise Edition). A edição voltada para o desenvolvimento de aplicações corporativas e para internet.
* Java ME (Java Platform, Micro Edition). A edição para o desenvolvimento de aplicações para dispositivos móveis e embarcados.
Além disso, pode-se destacar outras duas plataformas Java mais específicas:
* Java Card. Voltada para dispositivos embarcados com limitações de processamento e armazenamento, como smart cards e o Java Ring.
* JavaFX. Plataforma para desenvolvimento de aplicações multimídia em desktop/web (JavaFX Script) e dispositivos móveis (JavaFX Mobile).

A palavra Java usualmente é uma referência a linguagem de programação Java, que é a primeira linguagem criada pela Sun Microsystems para a JVM. A segunda linguagem criada pela Sun Microsystems para a JVM é chamada de Groovy, uma linguagem mais dinâmica, inspirada em linguagens como Python, Ruby e Smalltalk. Também existem implementações para a linguagem Python, a Jython, e para a linguagem Ruby, a JRuby.
(Wikipédia =])

A

Entendi:

http://umcastec.blogspot.com/2010/04/entendendo-plataforma-java-para-leigos.html

http://www.arquiteturajava.com.br/livro/java-como-plataforma-nao-como-linguagem.pdf

I

hahahaha…
O nome é somente para publicidade.

O resumo é isso:
Perceberam que a LINGUAGEM Java é bem desengonçada perto de algumas que vieram surgindo ou ganhando fama ultimamente e, como uma tentativa de manter a tecnologia em alta (pois muitos investiram e ainda investem muito dinheiro nela) decidiram que a LINGUAGEM JAVA não poderia ser vista mais somente uma linguagem, mas agora ela tinha que ser vista como uma PLATAFORMA.
Não que o java não fosse uma plataforma antes disso, mas até onde me lembro, java era java e pronto. Acredito que todos sabiam que se tratava de uma plataforma, pois rodava em uma máquina virtual, mas a publicidade em cima disso não era tanta. O importante era que tinhamos uma tecnologia que permitia programar, principalmente pra web, de forma organizada e segura. Na verdade era ( e ainda é, independete de ter surgido concorrentes mais eficientes ) uma solução completa pra grandes e médias empresas.

Acredito, mas não tenho certeza, que a idéia de utilizar diversos tipos de linguagens veio com o .net quando permitiu que o programador escolhesse a linguagem que iria utilizar. A idéia moderna pro trás da tecnologia java é parecida, pois agora voce pode programar em python (jython) em ruby, scala e etc. Mas plataforma mesmo o java sempre foi, assim como o python ou .net também são. Dizer que JAVA deixou de ser uma linguagem e passou a ser uma plataforma não muda nada sobre o atraso da linguagem JAVA em si.

A

immortalSoul:

o atraso da linguagem JAVA em si.

O que quer dizer ?

I

Anime:
immortalSoul:

o atraso da linguagem JAVA em si.

O que quer dizer ?

Que hoje existem outras tecnologias que superaram o java em alguns aspectos. Não só por aspectos da própria linguagem como também por outros que estão diretamente relacionados, como exemplo: a complexidade e, consequentemente, a curva de aprendizado entre oturos. Mas no caso eu me referia principalmente a linguagem, que representa o maior ponto fraco. A fraqueza( se comparada com outras tecnologias mais recentes ) da linguagem é revelada pricipalmente na necessidade de desvincular a imagem do java da própria linguagem java.

A

Quer dizer que modificar o nome de linguagem java para plataforma java, é apenas uma estrategia de marketing da sun ?

A

immortalSoul:

Caraaaa … alguém fecha a boca desse cara !!
Ou então ensina pra ele o q é o java e o pq está no top de mercado !!
Tudo o q veio da microsoft foi uma cópia parcial das idéias do java.
Sem noção nenhuma vc. Muuuito alienado !!
Em q empresa vc trabalha ??

I

Não é isso. Não houve uma modificação do nome. O java sempre foi o java, mas a necessidade de se destacar a tecnologia JAVA como uma plataforma veio depois, por interesse não de uma empresa, mas de todos que ainda apoiam a tecnologia. Como eu disse, muitos investiram e ainda investem muito no Java e é preciso resistir de alguma forma à nova onda de tecnologias mais ágeis que vem surgindo.

A

Me fala uma tecnologia melhor ou mais ágil q o java ??

J

Entenda plataforma como hardware(processador), mesmo que esse seja representado como emuladores ou máquinas virtuais.
No caso, plataforma x86 ou amd64 se referem a respectivamente processadores de 32 e 64 bits.
No caso do java ou .net que são máquinas virtuais, é declarado como plataforma porque são representações matemáticas de hardwares(processadores).

Isso é válido para jme, .net micro edition, .net compact edition, etc…

V

aluisiodsv:
Caraaaa … alguém fecha a boca desse cara !!
Ou então ensina pra ele o q é o java e o pq está no top de mercado !!
Tudo o q veio da microsoft foi uma cópia parcial das idéias do java.
Sem noção nenhuma vc. Muuuito alienado !!
Em q empresa vc trabalha ??

Engraçado, e o praticamente toda a API do Java é uma cópia da STL e da Boost, do C++.
O que não é cópia, é adaptação. Isso vale para a Collections, API de sincronização, sockets, etc.

Quanto a parte da divulgação, o immortalSoul está certo.
O Java sempre foi uma plataforma, mas até a introdução do .Net não chamavam assim (ou pelo menos, não com tanta ênfase).

Como o .Net veio com esse conceito muito forte (a MS já chegou introduzindo várias linguagens de cara: C#, J#, VB.Net), a Sun resolveu que seria bom explicar para o público que o Java também se tratava de uma plataforma. Ela não só começou a divulgar mais isso, como também aumentou a integração com outras linguagens sobre a VM, como o Groovy, JavaScript, Ruby, etc.

Até então, o interesse da Sun em promover o uso da VM com outras linguagens era praticamente zero ou, no mínimo, tímido.

Só não concordo com ele dizer que o Java é atrasado. Está certo que o .Net, sob muitos aspectos, é uma evolução do Java. Até nem poderia ser diferente, pois é mais novo que o Java e seria estranho que ele saísse menos evoluído. Agora, de um modo geral, o Java é bastante atualizado quanto à práticas de desenvolvimento e quanto ao que se propõe a fazer.

I

ViniGodoy:
aluisiodsv:
Caraaaa … alguém fecha a boca desse cara !!
Ou então ensina pra ele o q é o java e o pq está no top de mercado !!
Tudo o q veio da microsoft foi uma cópia parcial das idéias do java.
Sem noção nenhuma vc. Muuuito alienado !!
Em q empresa vc trabalha ??

Engraçado, e o praticamente toda a API do Java é uma cópia da STL e da Boost, do C++.
O que não é cópia, é adaptação. Isso vale para a Collections, API de sincronização, sockets, etc.

Quanto a parte da divulgação, o immortalSoul está certo.
O Java sempre foi uma plataforma, mas até a introdução do .Net não chamavam assim (ou pelo menos, não com tanta ênfase).

Como o .Net veio com esse conceito muito forte (a MS já chegou introduzindo várias linguagens de cara: C#, J#, VB.Net), a Sun resolveu que seria bom explicar para o público que o Java também se tratava de uma plataforma. Ela não só começou a divulgar mais isso, como também aumentou a integração com outras linguagens sobre a VM, como o Groovy, JavaScript, Ruby, etc.

Até então, o interesse da Sun em promover o uso da VM com outras linguagens era praticamente zero ou, no mínimo, tímido.

Só não concordo com ele dizer que o Java é atrasado. Está certo que o .Net, sob muitos aspectos, é uma evolução do Java. Até nem poderia ser diferente, pois é mais novo que o Java e seria estranho que ele saísse menos evoluído. Agora, de um modo geral, o Java é bastante atualizado quanto à práticas de desenvolvimento e quanto ao que se propõe a fazer.

Não me entenda mal, muito do que precisei aprender foi graças ao Java, principalmente de OO. O Java meio que força a pessoa a aprender a programar de um certo modo ( se é o modo certo, isso é relativo). Também sei que é verdade que ainda assim é comum ver muita coisa escrita em Java que distorcem o modo como as coisas deveriam ser e no lugar de facilitar acabam dificultando. Isso já seria assunto para outro tópico, mas reconheço que esse não é um dos motivos que me fazem achar Java atrasado, apesar de eu pessoalmente considerar que esse problema está diretamente ( apesar de não ser o único e nem o principal) relacionado com a complexidade.
Apesar disso o Java de fato faz o que se propoem a fazer e faz bem feito. Talvez algumas escolhas infeliz, nao sei dizer onde a comunidade errou, ou se foi a sun, que ainda cobram seu preço. Mas ainda assim a linguagem manteve seu objetivo. Ninguém pode reclamar da estabilidade, da compatibilidade entre as versões ( E aqui talvez seja o maior erro do .net ), da robustez e etc. Acho que o Java nunca pretendeu ser simples e realmente ninguém parece ter feito muito esforço nessa direção.
Porém, ao mesmo tempo que manteve firme em seu objetivo, e enquanto outras tecnologias tiveram a oportunidade de surgir foco em necessidades mais atuais, ela não pode acompanhar a nova onda que surgiu ( e, acho, que ela mesma criou).

Mas enfim, não acho que Java vá morrer tão cedo, não acho também que as pessoas devam parar de estudar Java, nem acho que o mercado vai desaquecer de uma hora pra outra. Também não sei se permitir que se programe em outras linguagens na plataforma seja realmente a salvação. Na minha opinião, e não sei se essa seria da comunidade, a nova era é da simplicidade e as tecnologias que estão focando nisso é que eu chamo de mais avançadas. É claro que não estou falando de simplicidade disfarçada como a que a gente via em vb, mas de uma simplicidade de fato.

I

Vou retificar o que falei e dizer que na verdade já vi alguns esforços sim, como o mentwai web framework, mas isso foi mais exceção do que regra.

Criado 16 de setembro de 2010
Ultima resposta 16 de set. de 2010
Respostas 25
Participantes 7