Devo aprender java para desenvolvimento de aplicativos móveis ou o C # apenas o fará?


9

Estou ansioso para aprofundar a estrutura .NET, mas a maioria dos aplicativos móveis parece ter sido desenvolvida em Java. Provavelmente, estarei direcionando os telefones menos caros, como Nokia e Motorola, não o Android ou o iPhone. Posso fazer esses materiais em c #?

java  c#  mobile 

Respostas:


9

Não, o C # não funciona. Você precisa aprender Java, e não o J2SE, mas o J2ME, porque a maioria dos celulares de última geração suporta apenas o J2ME. No entanto, você pode considerar o Android novamente, porque está realmente se tornando popular mesmo com telefones de última geração. De qualquer forma, a linguagem para J2ME e Android é Java.


7

Depende da plataforma

Android - JAVA, C # (via MonoDroid)
IPhone - Objetivo C, C # (via MonoTouch)
Windows Phone - C # (Silverlight)
Meego - C ++ (QT)
Symbian - C ++, JAVA

Acho que o Symbian será descartado pela maioria das empresas. Telefones inteligentes são o futuro. E para todo tipo de sistema operacional para smartphone, o C # / mono estará disponível (você precisa pagar mais, mas a usabilidade vale a pena) junto com o idioma da plataforma nativa. Então, você pode ir para C #.

A verdadeira independência da plataforma pode não ser alcançada, mas se você usar C # em qualquer lugar, poderá usar as mesmas bibliotecas principais e ajustar a interface do usuário da plataforma.

Mas para telefones de baixo custo, o C # não funciona. Você tem que ir para JAVA.


11
+1 por mencionar as opções Mono *. Se a demanda for alta o suficiente dos desenvolvedores, eles também se estenderão para as outras plataformas telefônicas.
Agent_9191

Concordaram que os desenvolvedores do Mono mencionaram o suporte ao WebOS antes da divisão da Novell, então você nunca sabe!
wonea

1

Não é possível falar especificamente sobre o Motorolla ou a Nokia, mas é preciso ter em mente qual é a plataforma de suporte deste telefone. Você desenvolveria melhor em Java, pois é uma plataforma mais popular e não precisa depender apenas de celulares com Windows. Mais uma coisa que o C # é tão descaradamente próximo ao Java que um compilador cruzado faz o truque para aplicativos de área de trabalho, pois isso também se aplica a aplicativos móveis.


11
Eu gostaria de ver este Cross Compiler - como ele lida com o fato de que as bibliotecas que acompanham as linguagens são muito, muito, muito diferentes?
Bevan

1

Se você deseja desenvolver para o Windows Phone 7, o C # é perfeito (o VB.NET estará disponível em breve.) Você também pode aproveitar qualquer conhecimento sobre Silverlight ou XNA que possui. Não sei se a plataforma será bem-sucedida, mas por que não refinar seu aplicativo usando um idioma que você conhece e depois portá-lo para outros idiomas quando estiver confiante em sua experiência do usuário, lógica, cálculos etc.? Aparentemente, o emulador é muito bom e pode ser complementado com o emulador acelerômetro e o emulador GPS para fazer tudo, exceto fazer uma ligação. (E realmente, quem usa smartphones para fazer chamadas?)


Eu normalmente concordaria, mas o OP disse que ele estava "ansioso para se aprofundar no framework .NET", então não tenho certeza de como ele já está familiarizado com o C #. Por mais que eu goste do idioma, o mercado para Windows Phone parece um pouco sem graça.
Davy8

1

Comecei a escrever aplicativos Android em Java com experiência anterior em C #. Eu descobri que muitos conceitos fundamentais da linguagem são semelhantes, então era simplesmente uma questão de aprender as poucas diferenças, especialmente com as bibliotecas. Se você pode aprender, codificar no outro seria muito simples (com base na minha experiência).

Eu recomendaria começar com Java. O Android está a caminho de se tornar o sistema operacional móvel mais popular, então você sabe que definitivamente estará por aí por um tempo. Além disso, o Java é mais antigo; portanto, existem inúmeras bibliotecas e tutoriais disponíveis para você usar e aprender. Depois de entender os principais conceitos do Java, aprender C # deve ser fácil - e você realmente apreciará alguns dos recursos interessantes (como atributos e LINQ) que o C # tem a oferecer.

Isenção de responsabilidade: comecei com C # (principalmente para desenvolvimento na Web ASP.NET MVC) e depois aprendi Java para escrever aplicativos para Android. Eu não fiz nenhuma programação móvel com C #, então não posso lhe dizer como é.


0

Talvez arquive isso em "pensamento lateral", mas se você tiver habilidades decentes em tecnologias "puras" da web - HTML, JavaScript, CSS - e, dependendo do que estiver tentando alcançar, consulte algo como o PhoneGap (http: // www .phonegap.com / sobre). Além do suporte de dispositivos iOS (iPhone, iPad) e Android, eles também têm suporte para Symbian. No entanto, você geralmente precisará das ferramentas "nativas" para criar seus aplicativos binários nativos. Por exemplo, se você deseja fazer o desenvolvimento do iPhone, precisará do iPhone sdk, XCode e estará executando o OSX.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.