{"id":82361,"date":"2023-07-07T16:07:49","date_gmt":"2023-07-07T23:07:49","guid":{"rendered":"https:\/\/blog.axway.com\/?p=82361"},"modified":"2023-07-11T16:14:05","modified_gmt":"2023-07-11T23:14:05","slug":"3-licoes-para-evitar-com-suas-apis-em-aplicativos-moveis","status":"publish","type":"post","link":"https:\/\/blog.axway.com\/pt-br\/developer\/3-licoes-para-evitar-com-suas-apis-em-aplicativos-moveis","title":{"rendered":"3 li\u00e7\u00f5es para evitar com suas APIs em aplicativos m\u00f3veis"},"content":{"rendered":"<div id=\"bsf_rt_marker\"><\/div><p class=\"p1\">O que podemos aprender com a falha do aplicativo Iowa Caucus para nos ajudar com nossa estrat\u00e9gia para aplicativos m\u00f3veis e gerenciamento de APIs?<\/p>\n<p class=\"p1\">O aplicativo m\u00f3vel usado para as prim\u00e1rias das elei\u00e7\u00f5es americanas de 2020, Iowa Democratic Caucus, recebeu muita aten\u00e7\u00e3o no \u00faltimo ano porque a divulga\u00e7\u00e3o dos resultados foi atrasada devido a problemas com o sistema. Este n\u00e3o foi apenas um alerta para outras prim\u00e1rias dos EUA que estavam pensando em usar este aplicativo, mas tamb\u00e9m para empresas em todo o mundo, pois ningu\u00e9m quer estar nas manchetes por esse tipo de erro evit\u00e1vel. O dano \u00e0 sua reputa\u00e7\u00e3o depois de algo assim n\u00e3o pode ser facilmente reparado.<\/p>\n<p class=\"p1\">Toda essa situa\u00e7\u00e3o nos levam para o que sabemos agora:<\/p>\n<p class=\"p1\"><b>Aplicativos m\u00f3veis s\u00e3o complicados<\/b>.<\/p>\n<p class=\"p1\">Se algo der errado com um site ou mesmo com uma API, voc\u00ea pode publicar uma vers\u00e3o atualizada sem que o usu\u00e1rio final esteja ciente disso.<span class=\"Apple-converted-space\">\u00a0<\/span><\/p>\n<p class=\"p1\">N\u00e3o \u00e9 assim com o celular. Se voc\u00ea lan\u00e7ar uma nova vers\u00e3o, a Apple e o Google podem levar horas ou dias para aprov\u00e1-la e public\u00e1-la. Mesmo que voc\u00ea o atualize rapidamente e esteja na loja de aplicativos horas depois, voc\u00ea n\u00e3o tem garantia de que o usu\u00e1rio final instalar\u00e1 a vers\u00e3o atualizada com a corre\u00e7\u00e3o.<\/p>\n<p class=\"p1\">\u00c9 por isso que \u00e9 absolutamente essencial ter uma API, uma estrat\u00e9gia m\u00f3vel e seguir as pr\u00e1ticas recomendadas ao projetar, desenvolver e publicar seus aplicativos e APIs m\u00f3veis.<\/p>\n<p class=\"p1\"><b>Voc\u00ea pode n\u00e3o ter uma segunda chance.<\/b><\/p>\n<p class=\"p2\">Aqui est\u00e1 um pouco do que sabemos:<\/p>\n<p class=\"p2\">Plataforma:<span class=\"Apple-converted-space\">\u00a0 <\/span>Android<\/p>\n<p class=\"p2\">Nome:<span class=\"Apple-converted-space\">\u00a0 <\/span>IowaReporterApp<\/p>\n<p class=\"p2\">Descri\u00e7\u00e3o:<span class=\"Apple-converted-space\">\u00a0 <\/span>Distribuir os resultados do caucus prim\u00e1rio para o local centralizado<\/p>\n<p class=\"p2\">Mobile Framework:<span class=\"Apple-converted-space\">\u00a0 <\/span>React Native<\/p>\n<p class=\"p2\">Editora:<span class=\"Apple-converted-space\">\u00a0 <\/span>Shadow, Inc.<\/p>\n<p class=\"p2\">Distribui\u00e7\u00e3o:<span class=\"Apple-converted-space\">\u00a0 <\/span>TestFairy (em oposi\u00e7\u00e3o \u00e0 Google Play e App Store)<\/p>\n<p class=\"p2\">Tempo de desenvolvimento:<span class=\"Apple-converted-space\">\u00a0 <\/span>2 meses<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-82362 aligncenter\" src=\"https:\/\/blog.axway.com\/wp-content\/uploads\/2023\/07\/Mobile_apps_integrations-300x169.png\" alt=\"\" width=\"721\" height=\"406\" srcset=\"https:\/\/blog.axway.com\/wp-content\/uploads\/2023\/07\/Mobile_apps_integrations-300x169.png 300w, https:\/\/blog.axway.com\/wp-content\/uploads\/2023\/07\/Mobile_apps_integrations-1024x578.png 1024w, https:\/\/blog.axway.com\/wp-content\/uploads\/2023\/07\/Mobile_apps_integrations-768x433.png 768w, https:\/\/blog.axway.com\/wp-content\/uploads\/2023\/07\/Mobile_apps_integrations-150x85.png 150w, https:\/\/blog.axway.com\/wp-content\/uploads\/2023\/07\/Mobile_apps_integrations.png 1280w\" sizes=\"auto, (max-width: 721px) 100vw, 721px\" \/><\/p>\n<p class=\"p1\"><b>Ent\u00e3o, quais s\u00e3o as escolhas inteligentes que minha empresa pode fazer para estar segura e evitar esses riscos?<\/b><\/p>\n<p class=\"p3\"><b>1. Conhe\u00e7a a maturidade da sua estrutura m\u00f3vel<\/b><\/p>\n<p class=\"p3\">Uma porcentagem muito alta de aplicativos m\u00f3veis iOS e Android \u00e9 escrita usando estruturas m\u00f3veis nativas de plataforma cruzada. As raz\u00f5es para isso s\u00e3o muitas, mas, em resumo, economiza recursos (e dinheiro) das empresas, ao mesmo tempo em que oferece as vantagens de desempenho das solu\u00e7\u00f5es nativas da plataforma. Embora isso seja inteligente e a escolha certa, nem toda estrutura m\u00f3vel nativa multiplataforma est\u00e1 no mesmo n\u00edvel de maturidade.<\/p>\n<p class=\"p3\">O React Native (criado pelo Facebook) ainda n\u00e3o atingiu o marco de vers\u00e3o 1.0 e est\u00e1 atualmente na vers\u00e3o 0.61 no momento da publica\u00e7\u00e3o. O que isso pode significar \u00e9 que ainda h\u00e1 coisas que n\u00e3o o tornam<span class=\"Apple-converted-space\">\u00a0 <\/span>\u201cpronto para o lan\u00e7amento\u201d. Ainda assim, muitas empresas assumem esse risco porque \u00e9 do Facebook ou porque querem usar a \u00faltima novidade. Compare essa situa\u00e7\u00e3o com a estrutura m\u00f3vel Titanium Native, que faz parte da Plataforma Axway Amplify. A Titanium SDK est\u00e1 atualmente na vers\u00e3o 8.3.1 e est\u00e1 chegando aos 10 anos como uma escolha s\u00f3lida para o desenvolvimento m\u00f3vel nativo de plataforma cruzada.<\/p>\n<p class=\"p3\">O ponto, no entanto, n\u00e3o \u00e9 que o aplicativo falhou porque foi escrito em React Native, mas que as empresas (consciente e inconscientemente) se exp\u00f5em a riscos todos os dias, usando estruturas m\u00f3veis que n\u00e3o s\u00e3o totalmente testadas e maduras.<\/p>\n<p class=\"p3\"><b>2. Entenda as APIs e integra\u00e7\u00f5es<\/b><\/p>\n<p class=\"p3\">Voc\u00ea precisa perceber que est\u00e1 vendo apenas a ponta do icebergquando olha para o aplicativo m\u00f3vel. Se voc\u00ea n\u00e3o entender isso, ter\u00e1 uma grande surpresa. APIs como sistemas n\u00e3o-humanos (sites, aplicativos m\u00f3veis e na nuvem) conversam entre si. As APIs rodam o mundo e s\u00e3o usadas para autentica\u00e7\u00e3o, mensagens, dados financeiros, v\u00eddeo, conte\u00fado, com\u00e9rcio, B2B, B2C\u2026 essa lista continua. H\u00e1 muitas coisas que voc\u00ea precisa estar ciente ao publicar APIs, mas algumas das principais preocupa\u00e7\u00f5es s\u00e3o:<\/p>\n<ul class=\"ul1\">\n<li class=\"li5\"><span class=\"s1\">Seguran\u00e7a (como estou implementando pol\u00edticas para que minhas APIs e dados estejam seguros);<\/span><\/li>\n<li class=\"li5\"><span class=\"s1\">Escalabilidade (como escalonar minhas APIs, se eu tiver muitos usu\u00e1rios);<\/span><\/li>\n<li class=\"li5\"><span class=\"s1\">Integra\u00e7\u00f5es (como minhas APIs se integram a outras APIs de forma r\u00e1pida e confi\u00e1vel);<\/span><\/li>\n<\/ul>\n<p class=\"p3\">Se voc\u00ea n\u00e3o tiver uma estrat\u00e9gia de API ao projetar, desenvolver e publicar suas APIs, algo tende a dar errado.<span class=\"Apple-converted-space\">\u00a0<\/span><\/p>\n<p class=\"p3\"><b>\u201cN\u00e3o tenho certeza se preciso do Gerenciamento de API!\u201d<\/b><\/p>\n<p class=\"p3\">O Titanic tamb\u00e9m n\u00e3o achava que precisava de botes salva-vidas. Se voc\u00ea \u00e9 uma empresa de m\u00e9dio a grande porte e n\u00e3o tem um plano para gerenciamento de API, adquira um. Comece pequeno, se precisar, mas o ponto \u00e9: comece.<\/p>\n<p class=\"p3\">As APIs e as integra\u00e7\u00f5es s\u00e3o uma parte silenciosa e invis\u00edvel do sucesso (ou fracasso) de um aplicativo ou site para dispositivos m\u00f3veis, e elas geralmente n\u00e3o recebem aten\u00e7\u00e3o suficiente at\u00e9 que seja tarde demais.<\/p>\n<p class=\"p3\"><b>3. Teste, teste, teste<\/b><\/p>\n<p class=\"p3\">Quando os projetos come\u00e7am a ultrapassar o or\u00e7amento ou tempo, o teste adequado geralmente \u00e9 uma das primeiras coisas que s\u00e3o cortadas ou reduzidas. Suas APIs e aplicativos m\u00f3veis precisam de um plano para isso, porque ter algumas pessoas usando o aplicativo aleatoriamente N\u00c3O \u00c9 TESTE!<\/p>\n<p class=\"p3\">Como um neg\u00f3cio empresarial, voc\u00ea deve ter planos de teste completos. Isso precisa ser criado por um Arquiteto de QA experiente e s\u00eanior. Se voc\u00ea est\u00e1 terceirizando seus testes, envolva-se para ver quem est\u00e1 criando o plano e tenha um segundo (ou terceiro) conjunto de olhos no rascunho e nos planos finais, para ter certeza de que \u00e9 um plano s\u00f3lido e completo.<\/p>\n<p class=\"p3\">Aqui est\u00e3o algumas pistas do que pode faltar algo em seus planos de API e Mobile App Test:<\/p>\n<ul class=\"ul1\">\n<li class=\"li5\"><span class=\"s1\">N\u00e3o incluir todos os cen\u00e1rios que o usu\u00e1rio pode ter no aplicativo m\u00f3vel;<\/span><\/li>\n<li class=\"li5\"><span class=\"s1\">N\u00e3o incluir todos os cen\u00e1rios em que a API pode ser usada;<\/span><\/li>\n<li class=\"li5\"><span class=\"s1\">Incluir apenas o \u201ccaminho feliz\u201d (as tarefas mais provavelmente usadas pelos usu\u00e1rios);<\/span><\/li>\n<li class=\"li5\"><span class=\"s1\">Estar faltando testes negativos (o que acontece se uma entrada ruim for usada com mobile\/API);<\/span><\/li>\n<li class=\"li5\"><span class=\"s1\">N\u00e3o abordar a seguran\u00e7a;<\/span><\/li>\n<li class=\"li5\"><span class=\"s1\">N\u00e3o incluir um plano para teste de carga de suas APIs com n\u00fameros muito maiores do que voc\u00ea esperaria us\u00e1-lo;<\/span><\/li>\n<li class=\"li5\"><span class=\"s1\">Voc\u00ea n\u00e3o se sentir completamente sobrecarregado depois de olhar para o grande n\u00famero de coisas que precisam ser testadas.<\/span><\/li>\n<\/ul>\n<p class=\"p3\">Conclus\u00e3o: <b>tenha uma estrat\u00e9gia s\u00f3lida e n\u00e3o d\u00ea nada como garantido!<\/b><\/p>\n<p class=\"p3\">Estrat\u00e9gias de API e Mobile s\u00e3o jornadas que voc\u00ea faz com muitos marcos ao longo do caminho. Eles crescer\u00e3o e amadurecer\u00e3o continuamente, assim como sua empresa tamb\u00e9m. Da mesma forma que voc\u00ea se adapta ao cen\u00e1rio de neg\u00f3cios em constante mudan\u00e7a, suas APIs e suas estrat\u00e9gias m\u00f3veis precisar\u00e3o se adaptar \u00e0s novas tecnologias e amea\u00e7as que aparecem todos os dias.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-82364 aligncenter\" src=\"https:\/\/blog.axway.com\/wp-content\/uploads\/2023\/07\/Gears-man-wrench-543678700-300x262.jpg\" alt=\"\" width=\"494\" height=\"431\" srcset=\"https:\/\/blog.axway.com\/wp-content\/uploads\/2023\/07\/Gears-man-wrench-543678700-300x262.jpg 300w, https:\/\/blog.axway.com\/wp-content\/uploads\/2023\/07\/Gears-man-wrench-543678700-768x670.jpg 768w, https:\/\/blog.axway.com\/wp-content\/uploads\/2023\/07\/Gears-man-wrench-543678700-150x131.jpg 150w, https:\/\/blog.axway.com\/wp-content\/uploads\/2023\/07\/Gears-man-wrench-543678700.jpg 782w\" sizes=\"auto, (max-width: 494px) 100vw, 494px\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>O que podemos aprender com a falha do aplicativo Iowa Caucus para nos ajudar com nossa estrat\u00e9gia para aplicativos m\u00f3veis e gerenciamento de APIs? O aplicativo m\u00f3vel usado para as prim\u00e1rias das elei\u00e7\u00f5es americanas de 2020, Iowa Democratic Caucus, recebeu muita aten\u00e7\u00e3o no \u00faltimo ano porque a divulga\u00e7\u00e3o dos resultados foi atrasada devido a problemas [&hellip;]<\/p>\n","protected":false},"author":86,"featured_media":82362,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[6732],"tags":[6725,6733,6734],"yst_prominent_words":[],"coauthors":[5539],"class_list":{"0":"post-82361","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-developer","8":"tag-api","9":"tag-app","10":"tag-mobile-pt-br"},"acf":[],"jetpack_featured_media_url":"https:\/\/blog.axway.com\/wp-content\/uploads\/2023\/07\/Mobile_apps_integrations.png","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/pa97bN-lqp","amp_enabled":true,"_links":{"self":[{"href":"https:\/\/blog.axway.com\/pt-br\/wp-json\/wp\/v2\/posts\/82361","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.axway.com\/pt-br\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.axway.com\/pt-br\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.axway.com\/pt-br\/wp-json\/wp\/v2\/users\/86"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.axway.com\/pt-br\/wp-json\/wp\/v2\/comments?post=82361"}],"version-history":[{"count":0,"href":"https:\/\/blog.axway.com\/pt-br\/wp-json\/wp\/v2\/posts\/82361\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.axway.com\/pt-br\/wp-json\/wp\/v2\/media\/82362"}],"wp:attachment":[{"href":"https:\/\/blog.axway.com\/pt-br\/wp-json\/wp\/v2\/media?parent=82361"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.axway.com\/pt-br\/wp-json\/wp\/v2\/categories?post=82361"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.axway.com\/pt-br\/wp-json\/wp\/v2\/tags?post=82361"},{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/blog.axway.com\/pt-br\/wp-json\/wp\/v2\/yst_prominent_words?post=82361"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blog.axway.com\/pt-br\/wp-json\/wp\/v2\/coauthors?post=82361"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}