Front-End O que é e como é
Quando você pensa em front-end, qual é a primeira coisa que vem à sua mente? JavaScript, CSS, HTML?
Se você se posicionar do ponto de vista do usuário, que é onde eles estão mais próximos da informação, não importa como o front-end evolua na tecnologia de produção, o serviço final para a expressão da informação não mudará em nada.A tecnologia front-end existia nos primórdios da Internet. No início, não era diferente do fax e só podia expressar algumas informações básicas simples. No entanto, com a contínua evolução tecnológica dos navegadores, o front-end atual possui informações super complexas.
O front-end de hoje não apenas pode construir facilmente uma forma rica de expressão de informações, mas também tem as vantagens de compartilhamento, fácil atualização, operação multiplataforma, etc. Com o crescimento contínuo a tecnologia front-end penetrou gradualmente em outros campos. Por exemplo, usando a tecnologia híbrida em aplicativos móveis, combinando tecnologia front-end e tecnologia nativa para simultaneamente levar em consideração e obter as vantagens de ambas, e em outras áreas, reduzindo a complexidade e implementando suporte parcial à API para tornar o front-end uma soluções de maior desempenho.
De acordo com as estatísticas, cerca de 70% dos aplicativos móveis possuem soluções técnicas integradas de visualização da Web/híbridas, principalmente para fornecimento de recursos e gerenciamento de páginas da Web. Como o nome sugere, as páginas da web são medidas em unidades de “páginas”, o que mostra suas limitações na construção de aplicativos em grande escala. Assim como o papel, você pode chamar e desenhar seu conteúdo arbitrariamente, mas você é impotente fora do papel, então você precisa Um “navegador” que concatenará papéis em volumes para gerenciamento, como é a funcionalidade básica de um navegador.
Qual é a diferença de desempenho da tecnologia nativa?
O uso de tecnologias híbridas ou de conversão para substituir produtos de tecnologia de front-end puro é contrário à natureza aberta e compartilhada da Internet, e por que ela precisa usar tecnologias híbridas? Há duas razões principais:
- Ele pode fornecer recursos em nível de sistema, como modificar informações do sistema, o que é completamente impossível na Web (mas não é nisso que o campo da Web se concentra).
- É o gerenciamento de conexões entre páginas, incluindo efeitos de transição, desempenho de carregamento, reciclagem de memória e muito mais.
O Problema 1 é um problema que precisa ser resolvido no próprio campo de Native Apps, e o “Problema 2” é o ponto chave da atual falta de recursos da Web.
Atualmente, a maioria das páginas que realmente precisamos compartilhar com o exterior em “formato de informação” atende basicamente à situação do “problema 2”. Existem dois estados para esta parte da página: um é o estado apresentado na tecnologia hibrida, e o outro encontra-se no estado de “problema 2”. O estado apresentado fora da tecnologia híbrida. Devido às diferenças de tecnologia, a experiência geral do último é muito diferente da do primeiro.
Agora, para compensar essa lacuna de experiência, precisamos de uma tecnologia de front-end pura para suavizar os defeitos de experiência causados por essa diferença técnica.
Podemos pensar um pouco mais especificamente, o que exatamente são essas chamadas lacunas de experiência?
Eu acho que pode ser resumido como “rápido” e “estável” do ponto de vista psicológico. Rápido se reflete primeiro na velocidade de carregamento isto quer dizer que não deve ser lento no primeiro acesso.
Se a velocidade é um fenômeno físico, no nível estável, é mais inclinado ao “sentimento psicológico”, que também é o instinto das pessoas de distinguir automaticamente os atributos das coisas. Por exemplo, as páginas da Web são mais propensas a mudanças estruturais, como no estágio inicial de carregamento. Informações estruturais completas, e é mais provável que tenha uma tela em branco ao carregar, ou mesmo atualização forçada devido a erros, o que torna a Web mais “frágil”, (por exemplo, muitas pessoas encontraram formulários que não são preenchidos e são esvaziados após a atualização. A personificação da fragilidade) porque os aplicativos da Web geralmente são relativamente simples em função e estrutura.
Na Web, o relacionamento entre as páginas é conectado em series, para frente ou para trás, é uma estrutura linear bidimensional. O aplicativo nativo pode ser mesclado e pode gerar saltos, portanto, essas impressões são profundamente tendenciosas para a Web.
Além disso, a Web possui falhas inerentes ou problemas que nunca foram comumente abordados, como acesso offline, compartilhamento e interação com outros aplicativos, notificações push, edição de teclado e texto, atualizações em segundo plano, sistemas de arquivos etc. , mas com otimismo estes são suportados em alguns navegadores recentes.
De que perspectiva os problemas de desempenho devem ser resolvidos?
Vamos dar uma olhada para trás e ver por que a combinação de SPA + PWA não foi universalmente popular e está bem explicada.
Embora o SPA aumente a “espessura” do aplicativo, o PWA também fornece os recursos mencionados acima, como cache offline, envio de mensagens, etc., mas isso não faz com que a Web pareça um aplicativo nativo, e não houve uma grande melhoria no problema da experiência.
É claro que o problema da experiência interativa também é um problema que o front-end ignorou facilmente por muitos anos, porque as pessoas geralmente pensam que o “chamado desempenho” do front-end se refere principalmente ao tempo de “carregar o primeiro tela”, não a experiência real do usuário, porque no mundo real muitas vezes culpamos o desempenho do celular do usuário. Neste ponto, a tolerância de todos para a Web é obviamente muito maior do que a de aplicativos nativos.
Outra razão importante para usar o “carregamento acima da dobra” como o principal indicador de “desempenho” é que esse indicador pode ser medido de forma intuitiva e quantificável, não apenas como uma medida de latitude técnica, mas, mais importante, em termos de dados de negócios. Métricas.
Comparado com alguns indicadores rígidos, o desempenho da experiência é mais abstrato. Comparando Android e IOS, todos sabemos que existem diferenças óbvias na experiência interativa entre os dois, mas comparar os dois em termos de funcionalidade.
É difícil comparar o impacto de um determinado design de experiência no todo em uma única dimensão, porque o design de experiência em si é uma coisa holística, então a falta de experiência também é holística. De um único ponto de vista, os detalhes da experiência são alguns funções não valem a pena serem mencionadas na frente deles, mas da perspectiva de um sistema, a experiência geral é melhor do que os pontos de função indolores.
Portanto, quando a funcionalidade é combinada com produtos similares, é ainda mais necessário melhorar a experiência geral para conquistar usuários fiéis.
Quando uma coisa atinge um gargalo, as pessoas geralmente buscam novas direções de desenvolvimento, como desenvolver produtos alternativos ou melhorar a eficiência da engenharia ou até mesmo cobrir outros campos, todos impulsionados pela taxa de desempenho real, assim como o campo de chip. Sim, isso é a lei do desenvolvimento das coisas que é fácil de entender.
Voltemos à essência da Internet e usemos os primeiros princípios para analisar a direção do desenvolvimento da Web. Se olharmos para baixo e observarmos um futuro de compartilhamento de informações, então a abertura serão definitivamente uma tendência e não um campo fechado. Portanto, todas as “variantes” devem ser de curta duração.
Voltando ao tópico, se quisermos resolver o problema de experiência de front-end no futuro, devemos usar o front-end para resolver o problema de front-end. Observe que estou falando de problemas de experiência, não de desempenho, porque a experiência universal da Web não é toda limitada pelo desempenho, mas principalmente um problema de pensamento de desenvolvimento.