Devo aprender a desenvolver no sistema operacional Symbian?[fechado]

StackOverflow https://stackoverflow.com/questions/36685

  •  09-06-2019
  •  | 
  •  

Pergunta

Desde que comprei um Nokia N95 8G, tenho pensado em pesquisar algum desenvolvimento para Symbian.Aqueles com experiência em desenvolvimento no sistema operacional Symbian poderiam gostar da plataforma?É difícil começar, as ferramentas estão maduras, etc.?

Foi útil?

Solução

Trabalhei no lado de desenvolvimento do sistema operacional Symbian OS por pouco mais de um ano.A sensação geral do sistema é que ele é uma porcaria não documentada e cheia de bugs.A única coisa positiva que posso dizer é que o próprio código do sistema operacional segue relativamente bem os padrões de codificação internos.O IDE CodeWarrior padrão era um lixo (embora o Carbide, que foi lançado recentemente como um substituto, seja bastante decente, mas a versão gratuita era muito simples e havia várias versões atrás, pelo menos há algum tempo).O emulador quase não era utilizável - ele funcionava lentamente, diferia do dispositivo real e travava ou travava com frequência.

Se você deseja desenvolver em Symbian, esteja preparado para muitas tentativas e erros, pois quase não há documentação disponível, mesmo sobre os conceitos básicos do ambiente.Como exemplo fictício, a documentação básica para o método "JiggleThingy()" seria "Jiggles the thing".É claro que houve muitas ocasiões em que a implementação também foi bastante diferente da documentação.

Um conhecido dirigiu uma empresa de desenvolvimento de software móvel na Ásia por alguns anos e desenvolveu para praticamente todas as plataformas.Ele me disse que o Symbian era o pior de todos - causava muito mais dor de cabeça do que qualquer outra plataforma móvel.

Isso é tudo sobre desenvolvimento em C++.Desenvolver para Symbian usando Java oferece funcionalidades tão limitadas que nunca ouvi falar de ninguém que realmente tenha feito isso.

Outras dicas

Fizemos uma quantidade razoável de programação S60 em nossa organização, além de muito BREW e um pouco de quase todo o resto.

  • As ferramentas S60 são muito boas em comparação com muitas plataformas que usei.Por exemplo,
  • As ferramentas do BREW são uma vergonha.
  • A plataforma S60 é bastante poderosa.Você pode fazer praticamente qualquer coisa (embora possa ser restringido por requisitos de assinatura).Java nem vale a pena fazer a comparação, você está tão preso que não consegue fazer nada ...
  • A assinatura S60 está ok, embora tenhamos sido um pouco prejudicados ocasionalmente (quem não...)
  • A curva de aprendizado é muito íngreme.Fundamentalmente, é diferente.Se houver duas maneiras de fazer algo, uma delas padrão, então o Symbian terá escolhido a outra.
  • A documentação, especialmente no FP2, não é que ruim
  • O sistema de compilação é tão ruim quanto todo mundo diz que é

Acho que poderia responder a alguns dos lados subjetivos da questão como alguém que trabalha no sistema operacional Symbian há alguns anos;) No entanto, não o farei, tentarei me ater ao que considero alguns fatos e informações úteis .

O telefone em questão executa a UI Nokia Series 60 (atualmente chamada de s60).Os telefones Symbian são tradicionalmente divididos em bits de sistema operacional (Symbian OS v9.1, 9.2 etc.) e o fornecedor do telefone compra ou desenvolve sua própria interface de usuário.Uma versão específica do s60 será executada em uma versão específica do Symbian OS.

Portanto, um bom lugar para começar o desenvolvimento do seu telefone é o Fórum Nokia:http://www.forum.nokia.com/main/resources/technologies/symbian/documentation/getting_started.html

Isso cobrirá os pedaços da interface do usuário.Devo acrescentar que os fornecedores de UI realizam muitas personalizações do sistema operacional (com vários graus de autocontrole/qualidade), portanto, diferenças nas APIs, especialmente envolvendo hardware, podem se tornar esotéricas.

O próprio Symbian fornece um nível decente de qualidade de documentação, não comparável ao da Microsoft, mas melhor do que muitas ofertas de código aberto.Uma boa referência é a Symbian Developer Network:

http://developer.symbian.org

Em relação às ferramentas.O ambiente de desenvolvimento padrão hoje em dia é a plataforma Carbide da Nokia que é baseada no Eclipse, acho justo dizer que se você aguentar o Eclipse você ficará bem, se não conseguir...bem...tempo de linha de comando para você.

Carbide possui depuração no dispositivo e inclui compiladores para alvos PC e ARM (GCC-E).

A maior parte do desenvolvimento de aplicativos é feita usando o emulador Symbian, que fará parte do SDK do seu telefone da Nokia.

Quando estiver pronto para colocar o aplicativo no telefone, você precisa dar uma olhada no Symbian Signed:http://www.newlc.com/new-symbian-signed-processes-are-now-availableMuitas pessoas reclamaram razoavelmente de que pode ser um pouco confuso, mas como desenvolvedor não comercial, acredito que "Open Signed" seja o mais fácil.

Eu recomendo Python para S60 como uma boa forma de explorar as capacidades da plataforma Nokia S60/Symbian.É fácil de usar e vem com uma configuração poderosa de APIs.Há também um livro que cobre muitos exemplos divertidos.Uma coisa interessante sobre o Python SDK é que você pode executar código no telefone de forma interativa por meio de um console no seu PC.

Qt para S60 será lançado em breve, já existe um pré-lançamento sem suporte disponível.Você pode querer investir seu tempo nisso, já que provavelmente será a interface de usuário preferida da Nokia no futuro.

Eu desenvolvi alguns aplicativos Symbian C++, é muito difícil entender e é particularmente difícil se (como eu) você tiver que alternar entre vários ambientes de desenvolvimento (Palm, embora não tanto agora, Windows Mobile, desktop Windows, THEOS, Linux, HTML/CSS).

Mas já ouvi a questão da "sem documentação" ser levantada em muitos lugares e não achei que isso fosse verdade.Em alguns casos, havia muita documentação e o que havia era muito complicado para um novato.O código de exemplo era o mesmo - há muitos deles, mas é difícil dividir quais partes do código controlam quais recursos.

Eu sei que, uma vez que você entra nisso, é bastante simples criar alguns aplicativos bastante impressionantes.Há uma boa comunidade no Forum Nokia (mencionado acima) e me inspiro conversando com alguns dos desenvolvedores que eles apresentaram na feira de smartphones em Londres.Se você tiver tempo, vale a pena ir até lá para dar uma olhada, pois não está muito longe, começa no final de outubro.Não é um show enorme, mas vale a pena dar uma olhada.

A reputação do desenvolvimento do Symbian OS C++ como sendo hostil (para dizer o mínimo) é inegável.Por outro lado, a plataforma também é extremamente poderosa.

Se você deseja apenas codificar programas pessoais ou pequenos freewares/sharewares, outra plataforma pode ser mais adequada para você.Se você está tentando encontrar um sistema operacional que possa sustentar uma carreira profissional em desenvolvimento de software, Symbian, J2ME e, em menor grau, Linux são suas melhores apostas.

A documentação e ferramentas do Symbian estão evoluindo a cada nova versão.Usar o Symbian OS C++ está ficando cada vez mais fácil (mas ainda há um longo caminho a percorrer).

Um anúncio pouco relevante:O mais recente esforço da Symbian Press para apresentar aos desenvolvedores o ecossistema Symbian.

http://www.quickrecipesonssymbianos.com

Pode ser usado como um curso passo a passo de 80 horas.

Apenas para alertar, tentamos evitar questões subjetivas, conforme o Perguntas frequentes

Que tipo de perguntas não devo fazer aqui?

Evite fazer perguntas que sejam subjetivo, argumentativo, ou requer discussão prolongada.Este é um lugar para perguntas que podem ser respondidas!

Agora você é novo, então está tudo bem :)

Em termos da sua pergunta, eu diria:

  • Quem se importa se é difícil, se você quer fazer alguma coisa, arregace as mangas e faça, quanto mais difícil, mais gratificante será!
  • Não sou um desenvolvedor de sistema operacional Symbian (depois de adquirir um PDA, posso entrar no .NET CF), mas diria que os aplicativos móveis são realmente começando a aumentar, muitos aplicativos estão sendo lançados com um aplicativo móvel para manter as pessoas conectadas e usando seu software.Quanto mais pessoas usando = mais negócios!
  • Olhando para o Página da Wikipédia aqui Eu diria que há muitas opções para IDEs e plataformas desenvolverem, incrível!

Symbian é um pouco diferente do que você talvez esteja acostumado, mas é uma plataforma estável (mais de 200 milhões de dispositivos disponíveis) e as ferramentas são maduras.

Carbide é muito bom, especialmente se você já usou o Eclipse antes.

Um primeiro lugar para procurar antes de iniciar a programação Symbian é aqui: http://descriptors.blogspot.com/

Descritores são strings Symbians.Eles são muito eficientes, porém um pouco diferentes de muitas outras implementações de strings.

Dê uma olhada no sistema operacional NS Basic/Symbian.Ele fornece um ambiente semelhante ao Visual Basic.É muito fácil de usar e resolve muitos dos problemas que o Symbian OS causa.Os aplicativos serão executados em dispositivos S60 3ª Edição e UIQ3 sem alterações.

http://www.nsbasic.com/symbian

Eu recomendo tentar Superwaba, é uma plataforma de desenvolvimento multiplataforma para PDAs usando uma linguagem semelhante a Java, por isso é muito fácil começar.

Hoje o Nokia Qt SDK 1.0 é lançado.No entanto, duvido do futuro da Nokia, que deverá enfrentar o já desafiador mercado móvel com o seu N8, que foi superado pelo iphone 4 antes mesmo de chegar ao mercado.Até ele mesmo está na linha de confessar esse.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top