Sou iniciante em c++ e estou dando os primeiros passos nessa linguagem. Tambem não quero começar a flame war de linguagens aqui.
Minha duvida é: quais os fatores tecnicos podem ter influenciado na escolhe de java para a sdk do google android ao inves de c++?
Porque ate aonde eu sei com c++ você consegue otimizar muito mais o uso de memoria do seu aplicativo, e isso não é extremamente importante para dispositivos moveis, aonde geralmente a memoria é escassa?
Pelo que eu saiba o mais importante no android é o dalvik que é a maquina
virtual que roda nele, e o código Java que roda no android tem umas
"modificações" no bytecode (não na linguagem) diminuindo o tamanho do código
necessário para rodar. A escolha do Java foi só para ter uma linguagem
"independente" poderia ser qualquer outra, mas a escolha deve ter sido mais
pela quantidade de programadores, então respondendo sua duvida toda a
otimização de memória não é feita no sdk do Java.
2009/6/29 Diego Henrique Oliveira <diegoholive...@yahoo.com.br>
> Sou iniciante em c++ e estou dando os primeiros passos nessa linguagem.
> Tambem não quero começar a flame war de linguagens aqui.
> Minha duvida é: quais os fatores tecnicos podem ter influenciado na escolhe
> de java para a sdk do google android ao inves de c++?
> Porque ate aonde eu sei com c++ você consegue otimizar muito mais o uso de
> memoria do seu aplicativo, e isso não é extremamente importante para
> dispositivos moveis, aonde geralmente a memoria é escassa?
> Abraços
-- Igor L Marques
MSc Candidate in Computer Science
Federal University of Pernambuco, Brazil
O motivo acredito que seja o fato de o Java já ser muito utilizado para criação de aplicativos em dispositivos móveis. Não foi uma escolha puramente técnica.
-- Luciano RM
2009/6/29 Diego Henrique Oliveira <diegoholive...@yahoo.com.br>
> Sou iniciante em c++ e estou dando os primeiros passos nessa linguagem. > Tambem não quero começar a flame war de linguagens aqui.
> Minha duvida é: quais os fatores tecnicos podem ter influenciado na escolhe > de java para a sdk do google android ao inves de c++?
> Porque ate aonde eu sei com c++ você consegue otimizar muito mais o uso de > memoria do seu aplicativo, e isso não é extremamente importante para > dispositivos moveis, aonde geralmente a memoria é escassa?
On 6/29/09, Diego Henrique Oliveira <diegoholive...@yahoo.com.br> wrote:
> Sou iniciante em c++ e estou dando os primeiros passos nessa linguagem. > Tambem não quero começar a flame war de linguagens aqui.
> Minha duvida é: quais os fatores tecnicos podem ter influenciado na escolhe > de java para a sdk do google android ao inves de c++?
> Porque ate aonde eu sei com c++ você consegue otimizar muito mais o uso de > memoria do seu aplicativo, e isso não é extremamente importante para > dispositivos moveis, aonde geralmente a memoria é escassa?
Posso pensar em dois motivos:
1. Ampliar a audiencia de desenvolvedores, ja' que cada vez menos
E quanto ao motivo, creio que seja porque não é como o iphone, que rodara em
um hardware especifico.. o Android rodara em diversos dispositivos, por isso
não deve aceitar aplicação nativa, apenas rodando no dalvik.
>> On 6/29/09, Diego Henrique Oliveira <diegoholive...@yahoo.com.br> wrote:
>> > Sou iniciante em c++ e estou dando os primeiros passos nessa linguagem.
>> > Tambem não quero começar a flame war de linguagens aqui.
>> > Minha duvida é: quais os fatores tecnicos podem ter influenciado na
>> escolhe
>> > de java para a sdk do google android ao inves de c++?
>> > Porque ate aonde eu sei com c++ você consegue otimizar muito mais o uso
>> de
>> > memoria do seu aplicativo, e isso não é extremamente importante para
>> > dispositivos moveis, aonde geralmente a memoria é escassa?
>> Posso pensar em dois motivos:
>> 1. Ampliar a audiencia de desenvolvedores, ja' que cada vez menos
> On 6/29/09, Diego Henrique Oliveira <diegoholive...@yahoo.com.br> wrote:
> > Sou iniciante em c++ e estou dando os primeiros passos nessa linguagem.
> > Tambem não quero começar a flame war de linguagens aqui.
> > Minha duvida é: quais os fatores tecnicos podem ter influenciado na
> escolhe
> > de java para a sdk do google android ao inves de c++?
> > Porque ate aonde eu sei com c++ você consegue otimizar muito mais o uso
> de
> > memoria do seu aplicativo, e isso não é extremamente importante para
> > dispositivos moveis, aonde geralmente a memoria é escassa?
> Posso pensar em dois motivos:
> 1. Ampliar a audiencia de desenvolvedores, ja' que cada vez menos
> E quanto ao motivo, creio que seja porque não é como o iphone, que rodara
> em um hardware especifico.. o Android rodara em diversos dispositivos, por
> isso não deve aceitar aplicação nativa, apenas rodando no dalvik.
>>> On 6/29/09, Diego Henrique Oliveira <diegoholive...@yahoo.com.br> wrote:
>>> > Sou iniciante em c++ e estou dando os primeiros passos nessa linguagem.
>>> > Tambem não quero começar a flame war de linguagens aqui.
>>> > Minha duvida é: quais os fatores tecnicos podem ter influenciado na
>>> escolhe
>>> > de java para a sdk do google android ao inves de c++?
>>> > Porque ate aonde eu sei com c++ você consegue otimizar muito mais o uso
>>> de
>>> > memoria do seu aplicativo, e isso não é extremamente importante para
>>> > dispositivos moveis, aonde geralmente a memoria é escassa?
>>> Posso pensar em dois motivos:
>>> 1. Ampliar a audiencia de desenvolvedores, ja' que cada vez menos
>> E quanto ao motivo, creio que seja porque não é como o iphone, que rodara
>> em um hardware especifico.. o Android rodara em diversos dispositivos, por
>> isso não deve aceitar aplicação nativa, apenas rodando no dalvik.
>>>> On 6/29/09, Diego Henrique Oliveira <diegoholive...@yahoo.com.br>
>>>> wrote:
>>>> > Sou iniciante em c++ e estou dando os primeiros passos nessa
>>>> linguagem.
>>>> > Tambem não quero começar a flame war de linguagens aqui.
>>>> > Minha duvida é: quais os fatores tecnicos podem ter influenciado na
>>>> escolhe
>>>> > de java para a sdk do google android ao inves de c++?
>>>> > Porque ate aonde eu sei com c++ você consegue otimizar muito mais o
>>>> uso de
>>>> > memoria do seu aplicativo, e isso não é extremamente importante para
>>>> > dispositivos moveis, aonde geralmente a memoria é escassa?
>>>> Posso pensar em dois motivos:
>>>> 1. Ampliar a audiencia de desenvolvedores, ja' que cada vez menos
Pelo que eu li ela não oferecera todos os recursos da SDK para Java.
________________________________
From: Guilherme Rezende <guilherm...@gmail.com>
To: ccppbrasil@googlegroups.com
Sent: Monday, June 29, 2009 4:44:01 PM
Subject: [ccppbrasil] Re: Google Android: porque não c++?
Excelente =]
posso ate animar em brincar com android agora...
>>>E quanto ao motivo, creio que seja porque não é como o iphone, que rodara em um hardware especifico.. o Android rodara em diversos dispositivos, por isso não deve aceitar aplicação nativa, apenas rodando no dalvik.
>>>>>>>>On 6/29/09, Diego Henrique Oliveira <diegoholive...@yahoo.com.br> wrote:
>>>>>>>>> Sou iniciante em c++ e estou dando os primeiros passos nessa linguagem.
>>>>>>>>> Tambem não quero começar a flame war de linguagens aqui.
>>>>>>>>> Minha duvida é: quais os fatores tecnicos podem ter influenciado na escolhe
>>>>>>>>> de java para a sdk do google android ao inves de c++?
>>>>>>>>> Porque ate aonde eu sei com c++ você consegue otimizar muito mais o uso de
>>>>>>>>> memoria do seu aplicativo, e isso não é extremamente importante para
>>>>>>>>> dispositivos moveis, aonde geralmente a memoria é escassa?
>>> E quanto ao motivo, creio que seja porque não é como o iphone, que rodara
>>> em um hardware especifico.. o Android rodara em diversos dispositivos, por
>>> isso não deve aceitar aplicação nativa, apenas rodando no dalvik.
>>>>> On 6/29/09, Diego Henrique Oliveira <diegoholive...@yahoo.com.br>
>>>>> wrote:
>>>>> > Sou iniciante em c++ e estou dando os primeiros passos nessa
>>>>> > linguagem.
>>>>> > Tambem não quero começar a flame war de linguagens aqui.
>>>>> > Minha duvida é: quais os fatores tecnicos podem ter influenciado na
>>>>> > escolhe
>>>>> > de java para a sdk do google android ao inves de c++?
>>>>> > Porque ate aonde eu sei com c++ você consegue otimizar muito mais o
>>>>> > uso de
>>>>> > memoria do seu aplicativo, e isso não é extremamente importante para
>>>>> > dispositivos moveis, aonde geralmente a memoria é escassa?
>>>>> Posso pensar em dois motivos:
>>>>> 1. Ampliar a audiencia de desenvolvedores, ja' que cada vez menos
Bom, acabei de voltar do 'Google Developer Day' onde vi uma palestra
sobre o SDK do Android. Foi falado que é possiv;el sim desenvolver
applicações 'nativas' em C. Porém depois foi explicado que essas
applicações, apesar de serem escritas em C, são compiladas p/ o mesmo
bytecode do Java/Dalvik. Achei um lixo e desanimei totalmente.
On Jun 29, 2009, at 1:45 PM, Guilherme Rezende wrote:
> On 6/29/09, Diego Henrique Oliveira <diegoholive...@yahoo.com.br>
> wrote:
> > Sou iniciante em c++ e estou dando os primeiros passos nessa
> linguagem.
> > Tambem não quero começar a flame war de linguagens aqui.
> > Minha duvida é: quais os fatores tecnicos podem ter influenciado
> na escolhe
> > de java para a sdk do google android ao inves de c++?
> > Porque ate aonde eu sei com c++ você consegue otimizar muito mais
> o uso de
> > memoria do seu aplicativo, e isso não é extremamente importante para
> > dispositivos moveis, aonde geralmente a memoria é escassa?
> Posso pensar em dois motivos:
> 1. Ampliar a audiencia de desenvolvedores, ja' que cada vez menos
On 6/29/09, Gianni <nasus.maxi...@gmail.com> wrote:
> Bom, acabei de voltar do 'Google Developer Day' onde vi uma palestra sobre o > SDK do Android. Foi falado que é possiv;el sim desenvolver applicações > 'nativas' em C. Porém depois foi explicado que essas applicações, apesar de > serem escritas em C, são compiladas p/ o mesmo bytecode do Java/Dalvik. > Achei um lixo e desanimei totalmente.
Eu acho que houve um mal-entendido. ja' que uma das razoes de criarem o NDK e' para permitir criacao de aplicacoes de processamento digital de sinais ou jogos 3D. Nao haveria ganho algum compilando o codigo C para bytecode.
> On 6/29/09, Gianni <nasus.maxi...@gmail.com> wrote: >> Bom, acabei de voltar do 'Google Developer Day' onde vi uma >> palestra sobre o >> SDK do Android. Foi falado que é possiv;el sim desenvolver >> applicações >> 'nativas' em C. Porém depois foi explicado que essas applicações, >> apesar de >> serem escritas em C, são compiladas p/ o mesmo bytecode do Java/ >> Dalvik. >> Achei um lixo e desanimei totalmente.
> Eu acho que houve um mal-entendido. ja' que uma das razoes de > criarem o NDK e' para permitir criacao de aplicacoes de processamento > digital de sinais ou jogos 3D. Nao haveria ganho algum compilando o > codigo C para bytecode.
Então, eu tbm acho já que não me parece fazer sentido, mas vejo o que diz o site:
Outra coisa: ficou BEM claro na palestra que ao compilar uma applicação p/ Android em C/C++, vc gera um '.so' que é executado no sand-box do Dalvik. Ou seja, de uma forma ou outra, não é o que eu chamaria de app nativa em C/C++. Já o site do google-groups diz que se pode sim desenvolver executaveis.
Única certeza que tenho é que tá mal explicado... :-)
The Android NDK provides tools that allow Android application developers to
*embed components that make use of native code *in their Android
applications.
Android applications run in the Dalvik virtual machine. The NDK allows
developers to implement *parts of their applications using native-code
*languages
such as C and C++. This can provide benefits to certain classes of
applications, in the form of reuse of existing code and in some cases
increased speed.
O NDK é o JNI para Android. O que está mal explicado nisso.
> On Jun 29, 2009, at 6:24 PM, Alex Queiroz wrote:
> > Hallo,
> > On 6/29/09, Gianni <nasus.maxi...@gmail.com> wrote:
> >> Bom, acabei de voltar do 'Google Developer Day' onde vi uma
> >> palestra sobre o
> >> SDK do Android. Foi falado que é possiv;el sim desenvolver
> >> applicações
> >> 'nativas' em C. Porém depois foi explicado que essas applicações,
> >> apesar de
> >> serem escritas em C, são compiladas p/ o mesmo bytecode do Java/
> >> Dalvik.
> >> Achei um lixo e desanimei totalmente.
> > Eu acho que houve um mal-entendido. ja' que uma das razoes de
> > criarem o NDK e' para permitir criacao de aplicacoes de processamento
> > digital de sinais ou jogos 3D. Nao haveria ganho algum compilando o
> > codigo C para bytecode.
> Então, eu tbm acho já que não me parece fazer sentido, mas vejo o que
> diz o site:
> Outra coisa: ficou BEM claro na palestra que ao compilar uma
> applicação p/ Android em C/C++, vc gera um '.so' que é executado no
> sand-box do Dalvik. Ou seja, de uma forma ou outra, não é o que eu
> chamaria de app nativa em C/C++. Já o site do google-groups diz que
> se pode sim desenvolver executaveis.
> Única certeza que tenho é que tá mal explicado... :-)
> On Jun 29, 2009, at 6:24 PM, Alex Queiroz wrote:
>> Eu acho que houve um mal-entendido. ja' que uma das razoes de >> criarem o NDK e' para permitir criacao de aplicacoes de processamento >> digital de sinais ou jogos 3D. Nao haveria ganho algum compilando o >> codigo C para bytecode.
> Então, eu tbm acho já que não me parece fazer sentido, mas vejo o que > diz o site:
Isso só quer dizer que você não pode desenvolver uma aplicação completa usando código nativo, só componentes na forma de "shared objects".
> Outra coisa: ficou BEM claro na palestra que ao compilar uma > applicação p/ Android em C/C++, vc gera um '.so' que é executado no > sand-box do Dalvik. Ou seja, de uma forma ou outra, não é o que eu > chamaria de app nativa em C/C++. Já o site do google-groups diz que > se pode sim desenvolver executaveis.
Então ficou BEM claro que á gerada uma biblioteca nativa que vai ser carregada dinamicamente pela máquina virtual Java do Android.
O NDK foi somente oficializar algo que muito já estavam fazendo a um bom
tempo.
Por exemplo, o mono já esta disponível para Android a uns seis meses, sendo
possivel
usar inclusive a loja do google p/ instalá-lo.
> >>> E quanto ao motivo, creio que seja porque não é como o iphone, que
> rodara
> >>> em um hardware especifico.. o Android rodara em diversos dispositivos,
> por
> >>> isso não deve aceitar aplicação nativa, apenas rodando no dalvik.
> >>>> 2009/6/29 Alex Queiroz <asand...@gmail.com>
> >>>>> Hallo,
> >>>>> On 6/29/09, Diego Henrique Oliveira <diegoholive...@yahoo.com.br>
> >>>>> wrote:
> >>>>> > Sou iniciante em c++ e estou dando os primeiros passos nessa
> >>>>> > linguagem.
> >>>>> > Tambem não quero começar a flame war de linguagens aqui.
> >>>>> > Minha duvida é: quais os fatores tecnicos podem ter influenciado na
> >>>>> > escolhe
> >>>>> > de java para a sdk do google android ao inves de c++?
> >>>>> > Porque ate aonde eu sei com c++ você consegue otimizar muito mais o
> >>>>> > uso de
> >>>>> > memoria do seu aplicativo, e isso não é extremamente importante
> para
> >>>>> > dispositivos moveis, aonde geralmente a memoria é escassa?
> >>>>> Posso pensar em dois motivos:
> >>>>> 1. Ampliar a audiencia de desenvolvedores, ja' que cada vez menos