JavaScript para aplicações móveis - Brito, Hugo José Beleza (2021)
O desenvolvimento de aplicações móveis está cada vez mais integrado nas empresas de desenvolvimento de software, isto porque a utilização de dispositivos móveis está também cada vez mais disseminada. O desenvolvimento móvel pode ser dividido em três grandes grupos: aplicações nativas, aplicações híbridas e aplicações web. O objetivo principal deste projeto de estágio, realizado na empresa Crossing Answers, foi a mudança de todo o desenvolvimento móvel nativo, em Java para Android e Swift para iOS, para uma framework híbrida de desenvolvimento em JavaScript, já que todo o desenvolvimento da empresa assentava em JavaScript. Neste âmbito, e de acordo com os objetivos identificados pela empresa para este estágio, foram feitas análises comparativas entre as abordagens de desenvolvimento nativo e as abordagens híbridas focando-se estas últimas nas frameworks React Native, NativeScript e Ionic. Os estudos foram realizados a diferentes níveis, desde revisões teóricas da literatura a atividades com um cariz mais prático envolvendo os programadores da empresa. O framework React Native apresentou melhores resultados globais nos diferentes estudos e análises realizadas, levando a que a transição de todo o processo de desenvolvimento móvel da empresa fosse feita de Java e Swift para React Native. Após a finalização de todo o processo de transição e de implementação de novas metodologias de desenvolvimento móvel foi testada a framework num projeto mais pequeno, mas que permitisse a preparação de alguns componentes que pudessem ser adaptados a outras aplicações idênticas com o mesmo modelo de negócio, neste caso audioguias. Por fim, foi implementada uma aplicação com maior complexidade e de outro âmbito de forma a consolidar as vantagens e mitigar as desvantagens da mudança para o novo modelo de desenvolvimento. Todos os objetivos propostos no início do estágio foram cumpridos com sucesso, fazendo com que o desenvolvimento móvel atual da empresa esteja mais produtivo e flexível para futuros projetos.