Quais são as coisas mais importantes a ter em mente ao desenvolver uma versão iOS de um aplicativo Android?
Aplicações iOS/Android modernas parecem muito semelhantes, o menu lateral é popular em ambas as plataformas com muitos padrões comuns (por exemplo, puxar para refrescar, deslizar, beliscar para ampliar, etc.).
Existem diferenças de design sutis que você pode querer tomar, tais como escolhas de fontes, designs de ícones, mas muitas vezes estas derivarão da sua marca e não da plataforma de escolha. Uma boa fonte moderna deve funcionar bem para ambos.
desenvolvimento de iOS é muito diferente do desenvolvimento do Android. No Codename One nós não'não temos tanto problema já que todos os nossos aplicativos são multi-plataforma. No entanto, para implementar nossa lógica encontramos algumas coisas da maneira mais difícil:
1. No Android você pode simplesmente anular o desenho e começar a desenhar. Isto será lento no iOS onde apenas OpenGL (ou Metal now)/CALayer irá actuar.
2. iOS é muito mais sensível a thread do que o Android e falhará aleatoriamente se você don't respeitar sua thread de despacho de eventos.
3. Objective-C/SWIFT usa contagem de referência e não um GC. Nas versões recentes isto foi feito automaticamente (ARC) o que o faz sentir como um GC mas não é't bem. Assim, fugas de memória podem acontecer de formas muito estranhas.
Não há nenhuma memória guardada ou arrays de delimitação, então falhas de memória são um perigo real.
4. Objective-C é uma linguagem dinâmica, as mensagens (seu equivalente de métodos) são mais lentas que os métodos e são't devidamente verificadas durante o tempo de compilação. O código falha em tempo de execução como falharia em uma linguagem de scripting.
5. Embora o xcode tenha muitos recursos finos, seu depurador é horrível (sem inspeção de objetos decente) e não tem refatoração ou capacidades básicas de um IDE moderno. A conclusão é um novo recurso do xcode e não está nem perto do nível do moderno IDE Java's. Algumas pessoas o preferem ao Eclipse principalmente porque o Eclipse suga muito em Macs (I'm um usuário NetBeans).
6. iOS UI's são desenvolvidos para cada resolução com multiplicadores para DPI e normalmente dois designs separados (tablet/phone). Você pode criar um único design, mas não é tão comum. O construtor de GUI é um pouco estranho com a conexão com o código. Handcoding é menos comum e em versões recentes efetivamente depreciado devido à forma como as telas splash são implementadas no iOS (você pode procurar no blog Codename One por um post intitulado 7 screenshots do iOS para obter a imagem e depois adicionar o fato de que agora existem 10).
Artigos semelhantes
- Quais são as coisas mais importantes a ter em mente quando você está tirando fotos de uma família?
- Estamos planejando construir uma nova aplicação móvel React Native para Android & iOS. Quais são as coisas que devemos ter em mente?
- Quais são os prós e os contras de actualizar o iPhone SE de uma versão iOS pré-carregada para a versão mais recente do iOS?
- Quanta java é necessária para desenvolver aplicações para andróide? Onde eu começo a desenvolver se eu tiver uma idéia em mente?