Vale a pena ainda aprender Java?

Link?

Sua história é bastante animadora para mim. Confesso! Mas a realidade aqui aonde eu moro é outra. O que eu percebo é que vai de cada região ou cultura em que você está inserido. Outra grande dificuldade que eu encontro aqui em Itabuna-Bahia, é que a cidade é voltada para o comércio, programinhas PDV para “butecos” e padarias, aonde qualquer pirralho com conhecimentos básicos em Visual Basic 6 ou Delphi conseguem fazer. É muito raro os empresários daqui contratar uma empresa para desenvolver uma plataforma para o seu negócio.

Eu quero distância. Se precisar usar em algum trabalho ok, mas não sei pq alguem se especializaria numa ferramenta que o Facebook pode matar a qualquer momento.

1 curtida

Então você aprendeu Android e iOS antes?

Sim eu migrei pro react-native, antes programava em java e swift.

Estou falando de quem programa apenas web, como ele faz se na próxima versão do iOS seu app reat native parar de funcionar?

Como disse o react-native faz uma ponte para o nativo, assim operando diretamente, exatamente como um app construído em linguagem nativa, assim se parasse de funcionar seria apenas com mudanças muito grandes no core das plataformas, casos que teriam o mesmo impacto em apps de linguagem nativa, e mesmo assim apenas se os mantenedores do react-native (Facebook) abandonassem o projeto, pois com uma mudança assim garanto que resolveriam rapidamente, porém com o tamanho da comunidade mesmo que abandonassem em pouco tempo um fork já tomaria conta e talvez seria até superior ao projeto og operado pelo facebook

Já li muito material quando estava estudando a possibilidade de migrar, assim não é algo tirado de apenas uma ou outra fonte, mas sim uma constatação do resultado de várias pesquisas

Porém com uma pesquisa rápida no google já temos resultados que apontam isso:

É impressão minha ou os links são iguais apenas postado em datas diferentes?

Mas enfim, não da pra levar a sério se a pessoa não sabe o básico de programação cocoa.

public func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
   let cell = UITableViewCell(style: .default, reuseIdentifier: "Cell")
   cell.textLabel?.text = toDoList[indexPath.row]
   return cell
}

A tableView cria as células e as mantem numa queue interna. Elas não são criadas pelo programador justamente pra não ter problemas de performance.

public func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
   let cell = tableView.dequeueReusableCell(withReuseIdentifier: "Cell", for: indexPath)
   cell.textLabel?.text = toDoList[indexPath.row]
   return cell
}

O programador de aplicação RN não pode consertar a app, recompilar e reenviar? Ele tem que criar um issue no GitHub e esperar os mantenedores do react-native pra resolver o problema?

Talvez seja uma boa considerar aquela outra tecnologia pra quem não precisa de nada graficamente intensivo e que funciona em todas as plataformas e não depende do facebook, sites em HTML/CSS/JS. Nem tudo precisa ser uma app.

Não sei se serve de consolo, mas, eu, até chegar a ser quem sou na profissão tb tive que fazer esses tais “programinhas” e, com eles, eu fui me aperfeiçoando até conseguir chegar onde estou.

Mas, cada um é cada um. De todo modo, faça sua escolha e seja feliz com ela. Abraços!

O programador de aplicação RN não pode consertar a app, recompilar e reenviar? Ele tem que criar um issue no GitHub e esperar os mantenedores do react-native pra resolver o problema?

Ai vc está se referindo a um problema no framework e não no código do APP em si, mas quando vc constroi o APP é em cima da versão atual do framework, vc clona este, então criou rodou pode quebrar o framework, pode dar a merda que for nas versões novas, o seu foi feito em cima da que estava correta, assim vai continuar funcionando.

E mesmo assim vc pode corrigir, basta dar um fork e trabalhar em cima do framework, após isso usar sua versão, se a correção for boa pode até dar um pull request, assim como acontece, muitas das funcionalidades atuais foram feitas por outros grupos e programadores que não tem na haver com o Facebook, alguns muito ativos são AirBNB, Wix e Microsoft, e vc pode utilizar o fork deles e não o original tbm

Ai já é outra questão, o que estou falando é a questão do desenvolvimento mobile nativo estar caindo em desuso para as tecnologias hibridas

Estou me referindo a mudanças grandes na plataforma que resultam em ter que modificar a app, recompilar e reenviar. Tive que fazer isso várias vezes nos últimos anos como desenvolvedor iOS pra minhas apps continuarem funcionando. Tudo que precisei foi acompanhar as novidades, mudanças nas APIs e adotar nos meus apps o mais rápido possível. Não precisei esperar ninguém responder meu “issue” no github.

Mas eu quero trabalhar na minha aplicação, não quero consertar o framework do facebook. Também não ter que escolher entre “forks”.

De fato tenho visto muitas oportunidades pedindo conhecimento de RN.

Nesse caso é ainda melhor usar o framework, pois vc não tem que ficar antenado, eles ficam, deu uma grande mudança, vc só atualiza pra uma versão mais atual do framework, gera e pronto, as chamadas do teu código continua a mesma, o que mudou foi a manipulação em baixo nível e isso terão usuários (grandes players) com bem mais interesse que seja corrigido rapidamente, assim sendo corrigidas antes mesmo de acontecer a mudança.

Assim se teu app parou, questão de 15 min vc já tem ele funcionando novamente, e em todas as plataformas.

Eu como freela é a melhor coisa, pelo preço que outros oferecem o app para iOS ou Android, eu ofereço para as duas, e ainda consigo fazer um preço menor no caso de integração web, pois este facilita muito.

Sem contar o custo em tempo, entregando app em uma semana que antes levava um mês.

Está falando de Xamarin Forms ou Xamarin com UI nativa? Xamarin Forms tem as mesmas desvantagens do react native, que @pfk66 citou. Xamarin com UI nativa é perfeito, embora não adotaria Xamarin.

@wsilvaasc concordo com @darlan_machado, também passei por algumas situações desse tipo que quase me fizeram desistir, mas aos poucos fui entendo como o mercado funciona.
Conseguir uma vaga através de um método de seleção desse tipo é complicado por que provavelmente você não vai ser bem reconhecido ao receber justamente pelo que faz, mas é necessário como primeiro passo. O negócio e não desanimar, se integrar com a comunidade e através de experiências, adquirir conhecimento, mão de obra especializada e que o mercado busca.

1 curtida

O Xamarin Cross Plataform ou Xamarin Native é que funciona igual o react-native, mas na verdade no react-native vc decide se quer compartilhar a UI entre todos ou uma individual por plataforma, podendo trabalhar como o forms ou como o native

Xamarin Native voce cria a UI nativa para cada plataforma, sem os riscos citados, e não uma única tela para todas as plataformas como Xamarin Forms. No react native é igual mesmo? Mas e o que você falou de uma única solução pra tudo?

Xamarin native, o native dito é o mesmo do RN, ele cria uma ponte e faz chamadas nativas, o que no ponto de vista de performance e aparência, é nativo, pois executa os componentes nativos.

A diferença do xamarin native pro forms é que o forms compartilha a UI entre todas as plataformas, enquanto o native vc pode criar uma UI para cada plataforma

No react-native vc tera dentro do framework duas pastas, android e ios, assim o ios é chamado ao criar o .ipa e o android ao criar o .apk, assim na construção do seu app vc pode criar uma única UI, caso seu APP seja simples e não necessite dessa diferenciação, assim no index enviando a rota por ali, ou então pode chamar o componente Plataform e diferenciar a rota para quando for android ou ios, porém reutilizando todo o core da sua aplicação, e fazendo apenas as modificações estéticas necessárias pra a UI ficar perfeita em cada um

Mas já digo, que a componentização é tão boa e reaproveitável em ambas as plataformas que até hoje foi apenas um caso que tive que fazer isso

Entendi, se existe a possibilidade de ser feito separado com UI 100% nativa sem mecanismos próprios, então os riscos diminuem nesse ponto.