1
resposta

Dimensionamento de widgets

tenho um app pronto feito em javascript para android. estou tentando converter em flutter para poder disponibilizar para ios também, porém a grande dificuldade é migrar de uma interface html/css/js para os widgets do flutter.

pra começar, há uma dificuldade enorme em escrever o código equivalente pois eu não encontro nos widgets as mesmas propriedades que tenho no html/css, por exemplo, para redefinir as dimensões de um botão. também não faço a menor ideia de como criar uma classe de estilo e aplicar para vários ao invés de ter que digitar um por um, isso por si só já vai contra a produtividade e boas práticas além de abrir as portas para todo tipo de bug.

então seria interessante ver um "de-para" de estilos/propriedades que são aplicados a todos os itens que devem ter a mesma aparência. me parece que no flutter isso vai ser um trabalho enorme tendo que especificar um a um, sem falar que essa hierarquia parece uma versão piorada do esquema do html/css.

outra coisa é a dificuldade de encontrar uma IDE ou Framework que se possa desenhar todas as telas do app e gerar os respectivos códigos, até achei alguns porém a funcionalidade é horrível a ponto de ao tentar apagar um item apaga tudo e não tem "undo", ou seja, perde o trabalho todo...

minha intenção em aprender flutter é ter expertise em mobile e iniciar projetos com design pattern e outras boas práticas mas já vi que vou perder um tempo enorme com a curva de aprendizado que no final é igual ou pior que a do próprio android studio.

sinceramente estou quase desistindo de aprender flutter é questão de achar outra plataforma melhor. react achei bem mais complicado que o flutter e ambos são muito piores que java ou javascript e pelo que entendi essa história de gerar código para todas as plataformas é meia verdade uma vez que as exigências dos app para ios são bem específicas, como por exemplo a posição da barra da app, estilos de itens da interface etc... e no final vai exigir ou muita programação para "adaptar" o código ou mesmo ter que escrever uma versão específica, o que mataria essa suposta vantagem.

os tutoriais e exemplos da documentação do flutter são recheados de "bruxarias", ou seja, comandos que não são explicados e surgem no código exemplo e que não são nada intuitivos, na verdade é impossível saber que existem se não ver em algum exemplo, ou perder um tempo enorme procurando na documentação.

fica a dica e espero que entenda como crítica construtiva pois aprender flutter desse jeito é improdutivo e desinteressante, o curso em si não agrega nada de diferente de ter que ler a documentação original e até é menos abrangente além de usar intelij ao invés de vscode sem trazer nenhuma vantagem realmente significativa, me parece apenas a preferência do instrutor por usar essa interface em outras linguagens.

1 resposta

Fala Anibal, de boa ?

Essa sua visão é bem uma realidade do que a galera mobile acaba passando no dia a dia.

Se tu criou um app hibrido desde o inicio tu acaba não sofrendo muito com isso de ter que reescrever e tals, tanto que muitas empresas que tinha código nativo, optaram em jogar pro flutter justamente por conta disso, achavam que tinha "retrabalho" em manter um time ios e outro android fazendo a "mesma coisa" em plataformas diferentes.

Eu quando comecei a mexer com flutter, vindo de android, senti que estava dando alguns passos para trás, porque o flutter ainda não tinha/tem ferramentas/frameworks que o android tinha, por exemplo fazer uma request no android era tranquilo demais, temos lib que cuida da request, outra que lida com a resposta e te da um objeto, no flutter a gente tem que fazer tudo na mão, senão quiser, vai colocar um plugin que gera o código inteiro disso pra ti, mas de toda forma, ainda vai precisar existir o código (que nem sempre vai ser o mais bonito do mundo).

Pegar algo do zero é bem complicado, mas assim, depois que tu cria seu "design system" as coisas começam a andar, antes disso fica bem trabalhoso e concordo 110% contigo.