{"id":448,"date":"2026-02-17T22:47:05","date_gmt":"2026-02-17T22:47:05","guid":{"rendered":"https:\/\/zydeno.com\/what-a-good-app-feels-like\/"},"modified":"2026-10-14T16:43:22","modified_gmt":"2026-10-14T16:43:22","slug":"qual-e-a-sensacao-de-uma-boa-aplicacao","status":"publish","type":"post","link":"https:\/\/zydeno.com\/pt\/qual-e-a-sensacao-de-uma-boa-aplicacao\/","title":{"rendered":"Qual \u00e9 a sensa\u00e7\u00e3o de uma boa aplica\u00e7\u00e3o"},"content":{"rendered":"<p>Uma boa aplica\u00e7\u00e3o parece <em>resolvido<\/em>. Cada toque chega onde se espera, cada anima\u00e7\u00e3o termina antes de se dar por ela, cada ecr\u00e3 tem uma resposta clara \u00e0 pergunta \u201cpara onde estou a olhar?\u201d.\u201d<\/p>\n<p>Uma aplica\u00e7\u00e3o m\u00e1 d\u00e1 a sensa\u00e7\u00e3o de que est\u00e1 a pensar. \u00cdcones de carregamento em locais onde n\u00e3o deviam estar. Bot\u00f5es que demoram meio segundo a responder. Layouts que se alteram depois de j\u00e1 termos come\u00e7ado a ler.<\/p>\n<p>A maioria das pessoas n\u00e3o consegue identificar estas coisas, mas sente-as. Ningu\u00e9m diz que uma aplica\u00e7\u00e3o tem uma lat\u00eancia de entrada elevada; dizem que parece pouco \u00e1gil e deixam de a abrir.<\/p>\n<h2>N\u00e3o se trata de testes de desempenho<\/h2>\n<p>A velocidade \u00e9 importante, claro. Mas h\u00e1 muitas aplica\u00e7\u00f5es que s\u00e3o \u201cr\u00e1pidas\u201d num teste de desempenho e, mesmo assim, parecem n\u00e3o funcionar bem. A diferen\u00e7a est\u00e1 nos intervalos \u2014 os momentos entre a a\u00e7\u00e3o e a resposta, em que uma boa aplica\u00e7\u00e3o permanece silenciosa e uma m\u00e1 parece pedir desculpa.<\/p>\n<p>N\u00e3o \u00e9 poss\u00edvel medir isso em milissegundos. Mede-se isso utilizando a aplica\u00e7\u00e3o durante uma semana e reparando se alguma vez \u00e9 necess\u00e1rio esperar que a interface do utilizador acompanhe a sua inten\u00e7\u00e3o.<\/p>\n<p>\u00c9 praticamente isso que fazemos. Sempre que poss\u00edvel, as pessoas que est\u00e3o a desenvolver uma aplica\u00e7\u00e3o utilizam-na para o fim a que se destina antes do seu lan\u00e7amento: um monitor de h\u00e1bitos para acompanhar h\u00e1bitos, um planeador de refei\u00e7\u00f5es para planear uma semana inteira de refei\u00e7\u00f5es. Problemas que nunca aparecem num plano de testes tornam-se rapidamente evidentes quando se depende da aplica\u00e7\u00e3o.<\/p>\n<h2>O que procuramos<\/h2>\n<p>Alvos de toque atingidos \u00e0 primeira tentativa. Desloca\u00e7\u00e3o que p\u00e1ra onde se pretendia. Pesquisa que encontra o que queria dizer e n\u00e3o apenas o que escreveu. Erros que indicam o problema real e n\u00e3o \u201calgo correu mal\u201d.\u201d<\/p>\n<p>Mais alguns que fomos adicionando ao longo do tempo:<\/p>\n<ul>\n<li>Nada do que escreveres se perde \u2014 nem quando o ecr\u00e3 roda, nem quando a aplica\u00e7\u00e3o fica em segundo plano, nem quando uma chamada interrompe.<\/li>\n<li>O teclado nunca cobre o campo onde est\u00e1 a escrever.<\/li>\n<li>A fun\u00e7\u00e3o \u00abDesfazer\u00bb existe sempre que corrigir um erro manualmente seria inc\u00f3modo.<\/li>\n<li>A aplica\u00e7\u00e3o guarda a \u00faltima p\u00e1gina em que estavas, pelo que, ao abri-la novamente, parece que est\u00e1s a continuar, em vez de come\u00e7ares do zero.<\/li>\n<\/ul>\n<p>A mesma lista aplica-se a todas as plataformas em que lan\u00e7amos os nossos produtos. Uma janela pop-up de uma extens\u00e3o de navegador tem de parecer t\u00e3o bem concebida como uma aplica\u00e7\u00e3o para telem\u00f3vel, e uma aplica\u00e7\u00e3o Windows tem de respeitar os atalhos de teclado e o redimensionamento da janela da forma que as pessoas esperam num computador de secret\u00e1ria.<\/p>\n<h2>A escolha<\/h2>\n<p>Fazer isto bem feito leva tempo que nunca aparece numa lista de funcionalidades. Uma semana passada a aperfei\u00e7oar transi\u00e7\u00f5es e a corrigir casos extremos \u00e9 uma semana que n\u00e3o \u00e9 dedicada a algo que possamos anunciar. Achamos que \u00e9 a melhor forma de aproveitar essa semana, mas isso significa que, por vezes, as nossas aplica\u00e7\u00f5es t\u00eam menos funcionalidades do que as dos nossos concorrentes. \u00c9 uma escolha que decidimos fazer de bom grado.<\/p>\n<h2>O que fizemos de errado<\/h2>\n<p>Costum\u00e1vamos deixar o polimento para o fim, como um toque final depois de as funcionalidades estarem conclu\u00eddas. Esse toque final acabava sempre por ser preterido. Agora, a sensa\u00e7\u00e3o que um ecr\u00e3 transmite faz parte da avalia\u00e7\u00e3o de se est\u00e1 conclu\u00eddo, desde a primeira vers\u00e3o, e n\u00e3o \u00e9 um extra a acrescentar se houver tempo.<\/p>\n<p>A maior parte deste trabalho passa despercebida. Os utilizadores n\u00e3o se apercebem dele quando est\u00e1 bem feito \u2014 apenas notam que a aplica\u00e7\u00e3o \u00e9 agrad\u00e1vel de utilizar. \u00c9 esse o objetivo. Nunca ser culpado por trabalhar.<\/p>","protected":false},"excerpt":{"rendered":"<p>We don&#8217;t measure app quality in frames-per-second or startup time alone. A good app feels a particular way \u2014 and that feeling is harder to engineer than any benchmark.<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-448","post","type-post","status-publish","format-standard","hentry","category-journal"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v22.2 (Yoast SEO v22.2) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>What a good app feels like - Zydeno Studio<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/zydeno.com\/pt\/qual-e-a-sensacao-de-uma-boa-aplicacao\/\" \/>\n<meta property=\"og:locale\" content=\"pt_PT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What a good app feels like\" \/>\n<meta property=\"og:description\" content=\"We don&#039;t measure app quality in frames-per-second or startup time alone. A good app feels a particular way \u2014 and that feeling is harder to engineer than any benchmark.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/zydeno.com\/pt\/qual-e-a-sensacao-de-uma-boa-aplicacao\/\" \/>\n<meta property=\"og:site_name\" content=\"Zydeno Studio\" \/>\n<meta property=\"article:published_time\" content=\"2026-02-17T22:47:05+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-14T16:43:22+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/zydeno.com\/wp-content\/uploads\/2026\/10\/zydeno-social.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Andrii Matiushev\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andrii Matiushev\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo estimado de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\/\/zydeno.com\/what-a-good-app-feels-like\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/zydeno.com\/what-a-good-app-feels-like\/\"},\"author\":{\"name\":\"Andrii Matiushev\",\"@id\":\"https:\/\/zydeno.com\/#\/schema\/person\/1af4d0e254f05b407f306ede28252259\"},\"headline\":\"What a good app feels like\",\"datePublished\":\"2026-02-17T22:47:05+00:00\",\"dateModified\":\"2026-10-14T16:43:22+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/zydeno.com\/what-a-good-app-feels-like\/\"},\"wordCount\":575,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/zydeno.com\/#organization\"},\"articleSection\":[\"Journal\"],\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/zydeno.com\/what-a-good-app-feels-like\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/zydeno.com\/what-a-good-app-feels-like\/\",\"url\":\"https:\/\/zydeno.com\/what-a-good-app-feels-like\/\",\"name\":\"What a good app feels like - Zydeno Studio\",\"isPartOf\":{\"@id\":\"https:\/\/zydeno.com\/#website\"},\"datePublished\":\"2026-02-17T22:47:05+00:00\",\"dateModified\":\"2026-10-14T16:43:22+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/zydeno.com\/what-a-good-app-feels-like\/#breadcrumb\"},\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/zydeno.com\/what-a-good-app-feels-like\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/zydeno.com\/what-a-good-app-feels-like\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/zydeno.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What a good app feels like\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/zydeno.com\/#website\",\"url\":\"https:\/\/zydeno.com\/\",\"name\":\"Zydeno Studio\",\"description\":\"Zydeno is an indie studio designing apps across many categories \u2014 united by a shared obsession with craft and detail. Fast, opinionated, independent apps for iPhone, Android, Windows and Mac, plus extensions for Chrome, Edge and Firefox. Built slowly, shipped carefully.\",\"publisher\":{\"@id\":\"https:\/\/zydeno.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/zydeno.com\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"pt-PT\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/zydeno.com\/#organization\",\"name\":\"Zydeno Studio\",\"url\":\"https:\/\/zydeno.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/zydeno.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/zydeno.com\/wp-content\/uploads\/2026\/04\/cropped-icon-512-1.png\",\"contentUrl\":\"https:\/\/zydeno.com\/wp-content\/uploads\/2026\/04\/cropped-icon-512-1.png\",\"width\":512,\"height\":512,\"caption\":\"Zydeno Studio\"},\"image\":{\"@id\":\"https:\/\/zydeno.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/zydeno.com\/#\/schema\/person\/1af4d0e254f05b407f306ede28252259\",\"name\":\"Andrii Matiushev\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/zydeno.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/4df57b6b4737601c798e728e7d4d209a9a9513422db2b613ff707286cb1ea58a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/4df57b6b4737601c798e728e7d4d209a9a9513422db2b613ff707286cb1ea58a?s=96&d=mm&r=g\",\"caption\":\"Andrii Matiushev\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Qual \u00e9 a sensa\u00e7\u00e3o de uma boa aplica\u00e7\u00e3o - Zydeno Studio","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/zydeno.com\/pt\/qual-e-a-sensacao-de-uma-boa-aplicacao\/","og_locale":"pt_PT","og_type":"article","og_title":"What a good app feels like","og_description":"We don't measure app quality in frames-per-second or startup time alone. A good app feels a particular way \u2014 and that feeling is harder to engineer than any benchmark.","og_url":"https:\/\/zydeno.com\/pt\/qual-e-a-sensacao-de-uma-boa-aplicacao\/","og_site_name":"Zydeno Studio","article_published_time":"2026-02-17T22:47:05+00:00","article_modified_time":"2026-10-14T16:43:22+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/zydeno.com\/wp-content\/uploads\/2026\/10\/zydeno-social.png","type":"image\/png"}],"author":"Andrii Matiushev","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Andrii Matiushev","Tempo estimado de leitura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/zydeno.com\/what-a-good-app-feels-like\/#article","isPartOf":{"@id":"https:\/\/zydeno.com\/what-a-good-app-feels-like\/"},"author":{"name":"Andrii Matiushev","@id":"https:\/\/zydeno.com\/#\/schema\/person\/1af4d0e254f05b407f306ede28252259"},"headline":"What a good app feels like","datePublished":"2026-02-17T22:47:05+00:00","dateModified":"2026-10-14T16:43:22+00:00","mainEntityOfPage":{"@id":"https:\/\/zydeno.com\/what-a-good-app-feels-like\/"},"wordCount":575,"commentCount":0,"publisher":{"@id":"https:\/\/zydeno.com\/#organization"},"articleSection":["Journal"],"inLanguage":"pt-PT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/zydeno.com\/what-a-good-app-feels-like\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/zydeno.com\/what-a-good-app-feels-like\/","url":"https:\/\/zydeno.com\/what-a-good-app-feels-like\/","name":"Qual \u00e9 a sensa\u00e7\u00e3o de uma boa aplica\u00e7\u00e3o - Zydeno Studio","isPartOf":{"@id":"https:\/\/zydeno.com\/#website"},"datePublished":"2026-02-17T22:47:05+00:00","dateModified":"2026-10-14T16:43:22+00:00","breadcrumb":{"@id":"https:\/\/zydeno.com\/what-a-good-app-feels-like\/#breadcrumb"},"inLanguage":"pt-PT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/zydeno.com\/what-a-good-app-feels-like\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/zydeno.com\/what-a-good-app-feels-like\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/zydeno.com\/"},{"@type":"ListItem","position":2,"name":"What a good app feels like"}]},{"@type":"WebSite","@id":"https:\/\/zydeno.com\/#website","url":"https:\/\/zydeno.com\/","name":"Zydeno Studio","description":"A Zydeno \u00e9 um est\u00fadio independente que desenvolve aplica\u00e7\u00f5es em diversas categorias \u2014 todas unidas por uma obsess\u00e3o comum pelo trabalho artesanal e pelo detalhe. Aplica\u00e7\u00f5es r\u00e1pidas, com personalidade pr\u00f3pria e independentes para iPhone, Android, Windows e Mac, al\u00e9m de extens\u00f5es para o Chrome, o Edge e o Firefox. Desenvolvidas com calma, lan\u00e7adas com cuidado.","publisher":{"@id":"https:\/\/zydeno.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/zydeno.com\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"pt-PT"},{"@type":"Organization","@id":"https:\/\/zydeno.com\/#organization","name":"Zydeno Studio","url":"https:\/\/zydeno.com\/","logo":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/zydeno.com\/#\/schema\/logo\/image\/","url":"https:\/\/zydeno.com\/wp-content\/uploads\/2026\/04\/cropped-icon-512-1.png","contentUrl":"https:\/\/zydeno.com\/wp-content\/uploads\/2026\/04\/cropped-icon-512-1.png","width":512,"height":512,"caption":"Zydeno Studio"},"image":{"@id":"https:\/\/zydeno.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/zydeno.com\/#\/schema\/person\/1af4d0e254f05b407f306ede28252259","name":"Andrii Matiushev","image":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/zydeno.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/4df57b6b4737601c798e728e7d4d209a9a9513422db2b613ff707286cb1ea58a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4df57b6b4737601c798e728e7d4d209a9a9513422db2b613ff707286cb1ea58a?s=96&d=mm&r=g","caption":"Andrii Matiushev"}}]}},"_links":{"self":[{"href":"https:\/\/zydeno.com\/pt\/wp-json\/wp\/v2\/posts\/448","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zydeno.com\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zydeno.com\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zydeno.com\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zydeno.com\/pt\/wp-json\/wp\/v2\/comments?post=448"}],"version-history":[{"count":1,"href":"https:\/\/zydeno.com\/pt\/wp-json\/wp\/v2\/posts\/448\/revisions"}],"predecessor-version":[{"id":779,"href":"https:\/\/zydeno.com\/pt\/wp-json\/wp\/v2\/posts\/448\/revisions\/779"}],"wp:attachment":[{"href":"https:\/\/zydeno.com\/pt\/wp-json\/wp\/v2\/media?parent=448"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zydeno.com\/pt\/wp-json\/wp\/v2\/categories?post=448"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zydeno.com\/pt\/wp-json\/wp\/v2\/tags?post=448"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}