Saltar para conteúdo


Foto
- - - - -

Que versões suportar?


  • Por favor inicie sessão para responder
7 respostas a este tópico

#1 Dextro

Dextro

    Membro

  • Membros
  • PipPip
  • 29 mensagens

Mensagem publicada 25 July 2010 - 22:56

Na thread sobre o Concurso de Programação o Nazgulled escreveu isto e, como achei que era um bom tópico aqui para o fórum de programação, decidi citar aqui e lançar a discussão.Nazgulled escreveu:

firedrops escreveu:

Por uma questão de bom senso, o target deverá ser o mais baixo possível, sem que ponha em causa a funcionalidade da vossa aplicação que pode estar dependente duma versão específica...

Este pode não ser o tópico para isto mas... :XNão creio que seja assim tão linear... É tudo muito bonito e uma pessoa ao desenvolver uma app deve sempre ter em consideração em abranger o maior número de equipamentos possível. Mas isso às vezes só prejudica o programador (e não me refiro a por em causa funcionalidades da aplicação por limitação da API).Eu ainda estou muito verde em desenvolvimento para Android mas já consegui perceber umas coisas e não é fácil ter uma aplicação funcional para todas as versões do Android e resoluções do ecrã. Existe uma panóplia de truques e pequenos pormenores a ter em conta e isso só provoca dores de cabeça.Mas pronto, isto é uma discussão que tem pano para mangas e eu não estou nem de um lado nem do outro, mas como programador que sou há uns anos com uma forte vertente na web, ter a preocupação com uma carrada de browsers é o inferno para qualquer webdeveloper, com o Android a realidade não é assim tão diferente.(...)

Quanto á minha opinião devo dizer que concordo com o que a conclusão do Nazgulled em relação á problemática de suportar diversas versões mas tenho uma visão diferente do que um programador deve fazer: pessoalmente acho que sim, que se deve suportar o maior numero de plataformas possíveis até ao momento em que se torna insuportável para a aplicação em questão.Infelizmente Java não é tão fléxivel como Javascript ou HTML/CSS por isso não se pode simplesmente suportar múltiplas versões com pequenos hacks porém sou da opinião que o trabalho de suportar múltiplas versões compensa pelo maior numero de potenciais utilizadores, ainda para mais que 1.5/1.6 juntos ocupam uma fatia ainda bastante substancial do mercado (19 e 22% respectivamente).Claro que eu sou um pouco "biased" uma vez que o meu android ainda está a correr 1.6 (com muita pena minha) e ainda por cima considero-me um web developer :)

#2 Nazgulled

Nazgulled

    Membro

  • Membros
  • PipPip
  • 216 mensagens

Mensagem publicada 26 July 2010 - 10:19

A única coisa que me irrita no meio disto tudo não é o ter que me preocupar com várias versões e resoluções (atenção que isto também é importante). É mais o facto que a Google, assim como as empresas por de trás dos browsers, parece que só querem a complicar a vida aos programadores.Em vez e facilitarem a vida, só complicam... Isso é o que me deixa mais frustrado...

#3 r3pek

r3pek

    Guru de Android

  • Former Staff
  • PipPipPipPipPip
  • 1560 mensagens
  • LocalizaçãoBA4 - Terceira - Açores
  • Nexus One + Motorola XOOM

Mensagem publicada 26 July 2010 - 17:38

Eu acho que é perfeitamente possível suportar 1.5 -> 2.2 em 90% das aplicações sem muito trabalho. Apenas quando queremos usar algo mais complexo é que temos de ter mais cuidado, mas na generalidade é perfeitamente possível sem grande preocupação.

#4 Nazgulled

Nazgulled

    Membro

  • Membros
  • PipPip
  • 216 mensagens

Mensagem publicada 26 July 2010 - 19:24

Eu na verdade misturei dois assuntos que de certa forma estão relacionados mas são um pouco distintos lol...Sim, não deve ser muito complicado suportar aplicações nos vários sistemas operativos... Temos várias APIs e cada uma mais recente que a anterior incorpora algumas instruções novas. Agora é simples, ou a nossa aplicação usa obrigatoriamente determinada API de certa versão, ou não usa. Se usar e for crucial para aplicação, bem, não há volta a dar. Se não for crucial, com um pouquinho mais de trabalho lá conseguimos dar a volta e usar instruções diferentes que sejam compatíveis com todas as versões [principais] do Android.O outro pormenor que falei, das resoluções e densidade dos pixeis, esse é que acho que poderá ser mais complicado (ou talvez não). Um gajo tem de se preocupar em desenhar gráficos/layouts para vários tamanhos/resoluções. O que às vezes se poderá tornar uma dor de cabeça...

#5 FernandoMiguel

FernandoMiguel

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 9430 mensagens

Mensagem publicada 26 July 2010 - 19:38

qt às resoluções o grande problema está numa pekena confusao q as pessoas fazem:tentam fazer as coisas em pixeis, qd deviam fazer em DPIs.

#6 Nazgulled

Nazgulled

    Membro

  • Membros
  • PipPip
  • 216 mensagens

Mensagem publicada 26 July 2010 - 19:55

Eu tinha escrito aqui um post grande e enganei-me no botão. Por isso agora vou só dizer: o problema não é só esse e não é assim tão linear.

#7 mglraimundo

mglraimundo

    Geek de Android

  • Former Staff
  • PipPipPipPip
  • 952 mensagens

Mensagem publicada 26 July 2010 - 21:59

firedrops escreveu:

Por uma questão de bom senso, o target deverá ser o mais baixo possível, sem que ponha em causa a funcionalidade da vossa aplicação que pode estar dependente duma versão específica...

Nazgulled escreveu:

Sim, não deve ser muito complicado suportar aplicações nos vários sistemas operativos... Temos várias APIs e cada uma mais recente que a anterior incorpora algumas instruções novas. Agora é simples, ou a nossa aplicação usa obrigatoriamente determinada API de certa versão, ou não usa. Se usar e for crucial para aplicação, bem, não há volta a dar. Se não for crucial, com um pouquinho mais de trabalho lá conseguimos dar a volta e usar instruções diferentes que sejam compatíveis com todas as versões [principais] do Android.

Acho que basicamente concordamos, não? ;)Eu não quero parecer simplista (e provavelmente fui ao não me alongar na resposta). Sei que há muitas variáveis a considerar, mas essencialmente concordo com o r3pek.r3pek escreveu:

Eu acho que é perfeitamente possível suportar 1.5 -> 2.2 em 90% das aplicações sem muito trabalho. Apenas quando queremos usar algo mais complexo é que temos de ter mais cuidado, mas na generalidade é perfeitamente possível sem grande preocupação.

Aliás, já tendo isso em conta é que o CPA não coloca restrições nesse ponto, não queremos complicar a vida de nenhum developer :P Agora idealmente e apenas como boa prática o target deverá ser tão baixo como possível.

#8 Nazgulled

Nazgulled

    Membro

  • Membros
  • PipPip
  • 216 mensagens

Mensagem publicada 26 July 2010 - 22:47

Eu acho que esta questão prende-se mais no contexto do concurso...Vejamos, ninguém no seu perfeito juízo vai desenvolver uma app para o publico a suportar só o 2.1 (exemplo) quando pode facilmente e sem muito trabalho suportar o 1.5. O que quero dizer é que ninguém vai dizer "ah e tal não me apetece perder mais 5mins a usar instruções do 1.5 porque 2.1 facilita". Principalmente ninguém o faz se colocar a app à venda ou peça doações, etc...Mas no contexto do concurso, será que isso deveria ser avaliado o final (não sei se algum membro do júri o irá fazer)? Digo isto porque se alguma API do 2.1 (ou até mesmo 2.2, se bem que aqui ainda pouca gente o tem ao ponto de puder testar e votar) facilitar bastante o desenvolvimento em relação a APIs do 1.5/1.6, porque não?Mas isto apenas no contexto do concurso.Fora do mesmo e assim que este terminar, o developer, se decidir continuar a aplicação, deve considerar em suportar o máximo de dispositivos.Mas mais uma vez, isto só no contexto do concurso, para facilitar e não se perder muito tempo a desenvolver uma cena perfeita. Penso que o essencial é desenvolver ideias, coloca-las em prática numa app e ver o que sai deste concurso.Depois do mesmo terminar tem-se todo o tempo do mundo para melhorar a aplicação a todos os níveis.Claro que cada um é livre de fazer o que quer e se achar por bem ter em consideração todos os detalhes mesmo com prazos do concurso, tudo bem. Eu se chegar a desenvolver uma app assim o farei, porque é assim que trabalho e sou perfeccionista. Mas nem todos são e a questão final é se a app deve ser julgada porque o developer seguiu o caminho mais fácil/rápido porque tinha um prazo para cumprir.Just a thought...