Esta es la primera publicación en el blogEl término blog se usa para describir un diario virtual en Internet. El autor de un blogger puede publicar posts sobre cualquier tema. Los posts suelen estar presente de forma cronológica. El estilo de redacción de un blog suele ser informal y se escribe en primera persona. No obstante, además son posibles otros estilos, por ejemplo en el caso de los periódicos online, en los que la atención se centra más de ingeniería de web.dev. En los próximos meses, esperamos compartir información útil de nuestro trabajo, ¡así que esté atento a las publicaciones con la etiqueta de Blog de ingeniería! Aquí cubriremos el proceso de construcción de nuestro sitio estático y el JavaScriptJavaScript es un lenguaje de programación que funciona en el lado del cliente y con el que las webs pueden ser más funcionales. Incorporación en código HTML El código JavaScript puede ser incrustado en las páginas HTML, para que adquieran funcionalidad. Existen varias opciones. Puede estar entre las etiquetas <SCRIPT> y </SCRIPT>, puede estar contenido en un archivo externo, puede ser un parámetro de las etiquetas HTML, y puede estar más (¡opcional!) Detrás de nuestros componentes web.
web.dev proporciona contenidoEl contenido puede ser muy difícil de definir con precisión. Es una definición que se refiere a las declaraciones contenidas en un documento o publicación de cualquier tipo y puede incluir las tecnologías de la información y la comunicación. Esto cubre todos los tipos de medios como imágenes y texto. A parte de esto, en el campo de la optimización de motores de búsqueda, los términos duplicar contenido, contenido único, más sobre la creación de experiencias web modernas y le permite medir el rendimiento de su sitio. Los usuarios inteligentes pueden haberse dado cuenta de que nuestra página de medidas es solo una interfaz para Faro, que también está disponible en DevTools de Chrome. Iniciar sesión en web.dev le permite ejecutar auditorías Lighthouse regulares en su sitio para que pueda ver cómo cambia su puntuación con el tiempo. Volveré a visitar la página de Medidas un poco más tarde, ya que creemos que es bastante especial. 🎊
Introducción
Básicamente, web.dev es un sitio estático que se genera a partir de una colección de archivos Markdown. Hemos elegido usar Once porque es una herramienta pulida y extensible que facilita la conversiónConversión es una acción precisa que lleva a cabo un usuario al visitar un portal web. Algunas formas clásica de conversión son, por ejemplo, una compra, una descarga o una suscripción a la newsletter. Un parte del SEO o del Marketing Online es la Optimización de Ratio de Conversión (CRO). En el Marketing de afiliación se usa para la conversión de los editores. Información general Hay diferentes indicadores para medir más de Markdown en HTMLHTML (Hypertext Markup Language) se usa para estructurar el contenido de texto de un documento web. No sólo se marca el contenido, sino además la meta-información que describe este contenido. Las páginas HTML se almacenan normalmente en el directorio raíz del servidor. Cómo se creó En la era digital, a los usuarios les resulta difícil hallar su camino en las webs y hacer un seguimiento de las estructuras de las más.
También utilizamos paquetes de JavaScript modernos que solo servimos a navegadoresConcepto de Navegadores¿Qué son los Navegadores?Los Navegadores son herramientas informáticas que utilizamos para, normalmente, navegar por Internet y visitar cualquier página web, al mismo tiempo de para hacer otras tareas como ver documentos, observar vídeos o reproducir contenido multimedia de cualquier tipo. Son un tipo de software sencillamente usual y bastante utilizado hoy en día.Insistimos en que es algo que se utiliza con mucha frecuencia, puesto que moverse por Internet más compatibles type="module", que incluye async y await. También usamos con gusto funciones que son compatibles con los navegadores perennes, pero no con una minoría de versiones anteriores. Como somos un sitio estático, JavaScript es simplemente no es necesario para leer nuestro contenido.
Una vez que se completa el proceso de compilación, que implica generar HTML estático y empaquetar nuestro JavaScript con Rollup, web.dev se puede alojar con un servidorLos servidores son ordenadores centrales y potentes dentro del campo de la tecnología de la información que procesan y proporcionan software y archivos en una red. Desde el punto de vista de un cliente, varios ordenadores en una red pueden ponerse en contacto con el servidor central para conseguir la información solicitada. En la arquitectura cliente-servidor, el servidor puede ser un software que proporciona un servicio y se ejecuta en más estático simple para realizar pruebas. El sitio es casi completamente estático, pero tenemos algunas necesidades especiales que aún se benefician de un servidor Node.js personalizado. Estos incluyen redireccionamientos para dominios no válidos, así como código para analizar el idioma preferido de un usuario para una próxima función de internacionalización.
A pesar de ser un producto de Google, web.dev no utiliza ninguna herramienta o proceso interno de Google. Puede consultar nuestro repositorio. Hacemos esto porque el equipo que crea y mantiene web.dev es responsable de abogar dentro de Google en nombre del ecosistema de desarrolladores web más amplio, por lo que tiene más sentido para nosotros tener las mismas herramientas que los desarrolladores web externos.
Generación estática
Cada página de web.dev está escrita en Markdown. Todas las páginas incluyen asunto principal, que describe los metadatosLos metadatos son datos estructurados que contienen información sobre una fuente como, por ejemplo, un libro o un documento web. Gracias a los metadatos resulta mucho más fácil hallar la fuente de información dado que contienen datos sobre el título, el autor, la fecha de publicación, la descripción, etc. Se utilizan en librerías pero además para la estadística y la ingeniería de software. Metadatos en WWW Los metadatos se utilizan más de cada publicación. Estos metadatos se incorporan al diseño de cada página, creando encabezadosConcepto de Encabezados¿Qué son los Encabezados?Los Encabezados, además conocidos como headers en inglés, son una parte fundamental del diseño de cualquier web, dado que consiste en la parte principal que se ve de esta al acceder, la parte de arriba de cualquier página. El lugar más visible y al que todos los usuarios que visitan un lugar de Internet acceden cuando entran en él, pudiendo tener así una imagen rápida más, etiquetas, etc. He aquí un ejemplo:
---
layout: postConcepto de Post¿Qué es un Post?Un Post es todo aquel contenido, sea post, opinión, noticia u otro género, que un autor publica en un blog. Este puede ser de carácter corporativo o meramente ocioso; pero siempre tiene como meta arrojar información o reflejar una idea, al mismo tiempo de facilitar que los usuarios encuentren la web donde se recoge por medio de de buscadores y demás plataformas online.Generalmente, se han más
title: What is network reliability and how do you measure it?
authors:
- jeffposnick
date: 2018-11-05
description: |
The modern web is enjoyed by a wide swath of people…
---The modern web is enjoyed by a wide swath of [people](httpsHTTPS (protocolo de Transferencia de Hiper-Texto) es un protocolo que permite determinar una conexión segura entre el servidor y el cliente, que no puede ser interceptada por personas no autorizadas. En resumidas cuentas, es la versión segura de el http (Hyper Text Transfer Protocol) Cómo funciona Una conexión HTTP estándar en Internet puede ser fácilmente secuestrada por partes no autorizadas. El propósito de una conexión HTTPS es evitar esto: encriptar más://www.youtube.com/watch?v=dQw4w9WgXcQ), using a range of different devices and types of network connections.
Your creations can reach users all across the world...
Este material preliminar nos permite definir propiedades arbitrarias como autor (es), fecha de publicación y etiquetas. Once expone convenientemente el asunto del frente como datos en casi todos los complementos, plantillas u otros contextos en los que nos gustaría hacer algo inteligente. El objeto de datos también contiene lo que Eleventy describe como el cascada de datos: Una variedad de datos extraídos de cada página individual, del diseño que utiliza la página y de los datos que se encuentran en la estructura jerárquica de carpetas.
Cada diseño único describe un tipo diferente de contenido y puede heredar de otro diseños. En web.dev, usamos esta función para enmarcar correctamente diferentes tipos de contenido (como publicaciones y laboratorios de código) mientras compartimos un diseño HTML de nivel superior.
Colecciones
Eleventy proporciona una forma programática de crear colecciones arbitrarias de contenido. Esto nos ha permitido crear soporte de paginación y generar páginas virtuales (páginas que no tienen un archivo Markdown coincidente en el disco) para los autores de publicaciones. Por ejemplo, construimos las páginas de nuestros autores usando una plantilla que contiene una expresión para su enlace permanenteUn link permanente (abreviado permalink), se refiere a un recurso especial que hace que un link esté permanentemente disponible. Los Permalinks son identificadores únicos en forma de URLs que se crean con el propósito de poder alcanzar siempre el contenido designado mediante de esa URL. Información general El contenido de la web está en constante cambio. En particular, los blogs, wikis, directorios web y revistas de noticias habitualmente se cambian más (por lo que la plantilla se vuelve a representar para cada autor) y una colección de respaldo.
Esto da como resultado, por ejemplo, una página simple que contiene todas las publicaciones de Addy.
Limitaciones
En este momento no podemos conectarnos fácilmente al proceso de construcción de Eleventy porque es declarativo, más bien que imperativo: describe lo que quiere, en lugar de cómo lo quiere. Es difícil ejecutar Eleventy como parte de una herramienta de compilación más grande, ya que solo se puede invocar a través de su interfaz de línea de comandos.
Plantillas
web.dev utiliza el Nunjucks sistema de plantillas desarrollado originalmente por Mozilla. Nunjucks tiene las características típicas de las plantillas como bucles y condicionales, pero también nos permite definir códigos cortos que generan más HTML o invocan otra lógica.
Como la mayoría de los equipos que crean sitios de contenido estático, comenzamos con códigos cortos pequeños y agregamos códigos cortos con el tiempo, alrededor de 20 hasta ahora. La mayoría de estos solo generan más HTML (incluidos nuestros componentes web personalizados). He aquí un ejemplo:
{% Aside %}
[See how Asides work in the web.dev codebase](/handbook/web-dev-components/#asides)
{% endAside %}
Terminará luciendo así:
Pero en realidad está creando HTML que se ve así:
<div class="w-aside w-aside--note">
<p><a href="/handbook/web-dev-components/#asides">See how Asides work in the web.dev codebase</a></p>
</div>
Si bien está fuera del alcance de esta publicación, web.dev también usa códigos cortos como un tipo de lenguaje de metaprogramación. Los códigos cortos aceptan argumentos, uno de los cuales es el contenido contenido. No es necesario que los códigos cortos devuelvan nada, por lo que se pueden usar para generar un estado o activar algún otro comportamiento. 🤔💭
Scripting
Como se mencionó anteriormente, debido a que web.dev es un sitio estático, se puede servir y usar sin JavaScript y con navegadores más antiguos que no admiten type="module" o nuestro otro código moderno. Esta es una parte increíblemente importante de nuestro enfoque para hacer que web.dev sea accesible para todos.
Sin embargo, nuestro código para navegadores modernos consta de dos partes principales:
- Código Bootstrap, que incluye código para el estado global, análisis y enrutamiento SPA
- Código y CSSConcepto de CSS¿Qué es el CSS?CSS es un lenguaje de programación que se usa para definir el estilo y el aspecto de un documento que se ha escrito mediante de un lenguaje de etiquetas, como HTML. Conocido además como hojas de estilo en cascada, es el que se emplea para dar colores, indicar tipos de letra o inclusive resaltar aspectos como el espacio entre items para dotar de estilo a más para componentes web que mejoran progresivamente el sitio
El código de arranque es bastante sencillo: web.dev puede cargar nuevas páginas como una aplicación de una sola página (SPA), por lo que instalamos un oyente global que escucha los clics en local. <a href="..."> elementos. El modelo SPA nos ayuda a mantener el estado global sobre la sesión actual del usuario, ya que, de lo contrario, cada nueva carga de página activaría llamadas a Firebase para acceder al estado de inicio de sesión de un usuario.
También especificamos un par de puntos de entrada diferentes a nuestro sitio en función de la URLEl URL (Localizador Uniforme de Recursos), es una dirección definida que apunta a la posición de un archivo en un servidor y lo recupera. Las URL se introducen en un navegador web para ingresar a documentos en la web o se incrustan como hipervínculos dentro de un documento. Se puede usar un Permalink para que una URL esté disponible de forma permanente. Componentes de una URL • prefijo de protocolo más que haya accedido, y cargamos la correcta utilizando Dynamic import(). Esto reduce la cantidad de bytes que necesitan nuestros usuarios antes de que el sitio se mejore con código.
Componentes Web
Componentes Web
son elementos personalizados que encapsulan la funcionalidad en tiempo de ejecución proporcionada en JavaScript y se identifican mediante nombres personalizados como <web-codelab>. El diseño se presta bien a sitios en gran medida estáticos como web.dev: su navegadorUn navegador (además: browser) es una herramienta informática que te permite ver documentos y datos y navegar por la red. Los navegadores pueden mostrar distintos tipos de recursos de información; principalmente documentos HTML, a pesar de todo, además son posibles otros tipos de archivos y contenido multimedia, como PDF, JPEG, MPEG, GIF o el lenguaje de meta marcado. A través el uso de complementos especiales y la configuración respectivo, los más gestiona el ciclo de vida de un elemento a medida que se actualiza el HTML de un sitio, informando correctamente cualquier elemento cuando se adjunta o desconecta de la página. Y los navegadores anticuados simplemente ignoran los componentes web por completo y renderizan lo que queda en el DOM.
Cada componente web es una clase con métodos que incluyen connectedCallback(), disconnectedCallback()y attributeChangedCallback(). Los elementos personalizados de web.dev heredan principalmente de LitElement, que proporciona una base simple para componentes complejos.
Si bien web.dev utiliza componentes web en muchas páginas, en ninguna parte es más necesario que en la página de medidas. Dos elementos proporcionan la mayor parte de la funcionalidad que ve en esta página:
<web-url-chooser-container></web-url-chooser-container>
<web-lighthouse-scores-container></web-lighthouse-scores-container>
Estos elementos crean otros elementos que proporcionan más funcionalidad. Es importante destacar que estos elementos son solo parte de nuestro código fuenteEl código fuente es un programa de PC o página web que se convierte en un lenguaje que es leído por una máquina y se recoge en imagen y función. El código fuente es una parte importante del SEO porque determina la correcta ejecución de una página web. La optimización del código fuente es por ende parte del SEO técnico. Código fuente para páginas web Mientras que el código fuente más regular de Markdown, y nuestro equipo de contenido puede agregar funcionalidad extendida a alguna página, no solo el nodejs Medir.
Nuestros componentes web utilizan más comúnmente Componente contenedor modelo, popularizado por React, aunque este modelo ahora está un poco pasado de moda. Cada -container elemento se conecta a nuestro estado global (proporcionado por deshacer) y luego renderiza un elemento visual, que a su vez pasa a renderizar nodos DOM reales que tienen estilo u otra funcionalidad incorporada.

Nuestros componentes web más complejos existen para visualizar acciones y estados globales. Por ejemplo, web.dev le permite auditar su sitio favorito y luego navegar fuera de la página Medir. Si regresa, verá que la tarea aún está en curso.
Nuestros componentes simples mejoran puramente el contenido estático o crean visualizaciones asombrosas (por ejemplo, cada gráfico de líneas es propio <web-sparkline-chart>), que no tiene relación con el estado global.
Charlemos
El equipo de ingeniería de web.dev (Robar, Ewa, Miguely Sam) pronto continuará con inmersiones profundas más técnicas.
Esperamos que escuchar cómo hacemos las cosas te haya dado algunas ideas para tus propios proyectos. ¡Contáctenos en TwitterTwitter es una red social en Internet que permite a los usuarios difundir información en tiempo real. La característica más notable de twitter solía ser su limitación de tweets a 140 caracteres, pero en septiembre de 2017 se incrementó a 280 caracteres. El único requerimiento para utilizar Twitter es la creación de una cuenta gratuita. Tweets Twitter contiene pequeñas piezas de información llamada tweets. Se puede escribir un máximo de más si tiene preguntas o solicitudes de temas para este blog!




