Weex-- pensamiento acerca de la dinámica del terminal móvil, y el futuro lograr

¿Cuál es la dinámica

Hoy en el terminal móvil, especialmente como tales teléfono Taobao aplicación, la dinámica del problema se está convirtiendo en un problema más difícil. La llamada dinámica, es optimizar la flexibilidad de la propia aplicación móvil, los ciclos de actualización iterativos y los costos al extremo. Tales como teléfonos móviles página de la tienda en casa Taobao, que permite a las empresas en tiempo real para decorar su tienda, actualizar sus propios productos, eventos y otra información; otro ejemplo Taobao, Tmall todos los principales página Pro lugar, solicite información de la interfaz de ajuste muy flexible y oportuna y el estado para asegurar que en un ritmo rápido cambio del día, seguido de contrato promocional con diversas contingencias.

¿Por qué conformarse problemas dinámicos

Surgimiento de una demanda dinámica que hay muchos factores inevitables: detrás de nuestra aplicación móvil es un nivel de la plataforma e incluso sistema de proveedor de electricidad eco de nivel, que necesita ser tolerantes con la diversidad de las capacidades y características de flujo de alta velocidad, el mercado muchas aplicaciones móviles tienen un objetivo similar forma y de apelación y, al mismo tiempo en toda la industria en lo que va acumulado en el terminal móvil no son suficientes para formar el producto, la experiencia del usuario, la interacción y otros detalles tienen plena comprensión temprana, una aplicación móvil, hay que probar y explorar de manera más objetiva, e incluso "ensayo y error", y esta evolución dinámica del alcance y la velocidad de iteraciones de productos tienen una fuerte correlación positiva, en tercer lugar, no tenemos estas dinámicas más esfuerzo en la repetición final, no debe, por tanto, con frecuencia desencadenar una nueva versión. Así que la dinámica de la cuestión es particularmente importante en los terminales móviles de hoy en día.

dinámica histórica del problema

La naturaleza dinámica del problema no es sólo específico para el terminal móvil, en la larga historia del desarrollo tecnológico de la Internet, escritorio y hay también experimentan cosas similares. conclusión de escritorio de hoy parece haber sido formado, y que es W3C defendido durante mucho tiempo webplatform (o se hace referencia o aplicación web HTML5 o el navegador), pero también pasó por la diferenciación de la plataforma, plug-in de soporte nativo (flash player), el rendimiento del dispositivo renderizado proceso de optimización de motores.

En el lado móvil, Alibaba es la división inalámbrica, hermanos equipo, y toda la industria están haciendo todo tipo de experiencia y práctica positiva:

solución híbrida: a contenedores WebView a HTML5 como la piedra angular, mediante la ampliación de la definición de características nativas para apoyar el desarrollo de productos dinámicos, como contenedor llamado telefónico interno de piloto de viento Taobao, estos programas suelen tener una resistencia muy alta dinámica, pero problemas y dinámicas a sí mismo como obvia, y es la falta de rendimiento y los resultados muestran, pero quieren dar rienda suelta a sus ventajas en el proyecto, el conocimiento y la experiencia acumulada desarrollador en el extremo frontal también tienen mayores necesidades, el espacio no demasiado de expansión limitada.

Estructurado Ver programa nativo: Ver a un contenedor para el nivel nativo de representación nativa, y definir un conjunto de vista del formato de descripción de estructura de datos (tales como XML o similares JSON), y luego cambiando dinámicamente la petición o una nueva información de datos para lograr tan dinámico efectos de interfaz, tal como ocurre en el Grupo Alibaba, (sobre) la WeApp, nido de pájaro, Dynative, PageKit, etc. este tipo de programas se basan en una descripción de la interfaz estructurada, y se centra en la protección de las dimensiones de salida espectáculo dinámico puro, diferente, pero hay algunos deficiencias comunes, tales como el procesamiento dinámico de otras dimensiones, tales como la lógica dinámica, la estrategia y otras cargas dinámicas.

Reaccionar programa nativo: lo usamos como un corto RN, es nativa del motor de renderizado, a través de la conversión y la lógica de control soportes del motor de secuencias de comandos de la interfaz DOM virtual, para lograr la interfaz dinámica. RN Ali en la primera mitad del equipo han sido de mucha práctica, incluyendo la división inalámbrica de donde estaba, pero el efecto no es satisfactorio, la primera orden de magnitud es RN muy pesado, a petición, la carga, la representación, la interacción, la estabilidad y otros aspectos son no es ideal, y las soluciones técnicas enteras en un proceso iterativo y la evolución de la comunidad ha estado plagado de incertidumbre, lo que le da al equipo el nivel de uso del producto seguimiento y publicar una gran confusión.

De hecho, creemos que RN es más como un nuevo marco de desarrollo móvil, en lugar de para mejorar la dinámica de las aplicaciones móviles existentes para nosotros. Esperamos que para resolver el problema a través de RN dinámica, porque introduce sólo el motor de JavaScript cliente.

  • Nuevo examen de esquemas dinámicos laterales móvil: weex

En resumen, podemos ver una gran cantidad de solución dinámica del problema, sino también cada uno tiene sus límites. Equipo a través de la observación continua y la discusión, decidió llegar a una solución mejor y más técnica para el problema de dinámica de terminales móviles - que es el weex!

conceptos de diseño y los procesos de pensamiento de weex

Weex en nuestra opinión ya tiene tantas características, tales como:

致力于移动端,充分调度 native 的能力
充分解决或回避性能瓶颈
灵活扩展,多端统一,优雅“降级”到 HTML5
保持较低的开发成本和学习成本
快速迭代,轻量实时发布
融入现有的 native 技术体系
工程化管理和监控等
……

Pero weex hecho, las demandas centrales es resolver el problema de extremo movimiento dinámico, tiene sus propios tres características muy particulares:

  • Ligera: pequeño tamaño, sintaxis simple, fácil acceso y uso

  • Escalable: servicio de personalización solamente lateral al centro de los componentes y módulos funcionales

  • Alto rendimiento: de carga de alta velocidad, procesamiento de alta velocidad, experiencia suave

Weex para el problema dinámico del terminal móvil nacido, estas ventajas son naturales, la búsqueda de lo último. Equipo diseñado e implementado un conjunto de soluciones técnicas basadas en estos tres aspectos.

Equipo en el diseño y la práctica de weex, hay un sentimiento muy profundo, es la siguiente: para encontrar un equilibrio entre el rendimiento y la dinámica.

En cuanto a la dinámica de las tantas soluciones técnicas, la única manera que hay muy pocos:

Desarrollo / configuración del contenido dinámico
de distribución de contenido dinámico de la nube
solicitudes de los clientes de un contenido dinámico
cliente de contenido dinámico resultados listas de final

Si no nos limitamos a tratar con la naturaleza dinámica del contenido del espectáculo puro, a continuación, añadir un nuevo eslabón necesario

Desarrollo / configuración contenido dinámico
contenido dinámico despliegue en la nube
las solicitudes de cliente de contenido dinámico
del cliente y el contenido dinámico analizan en vista lógica de
un cliente para mostrar el efecto de una vista y mango interacción final de usuario

Lo que une a la expansión no vale la pena, que une la necesidad de más dinámico, que es parte de un cuello de botella, es la clave de la solución. Por el pensamiento y la discusión, nos encontramos con que:

Desarrollo / Configurar las necesidades de contenido dinámico para alcanzar rápidamente
una nube implementaciones requieren tanto como sea posible del centro, lateralmente expansible
petición del cliente requiere la transmisión de datos más pequeña posible, la necesidad de minimizar la carga rápida
de contenido cliente requiere el análisis dinámico
dinámicos del cliente de respuesta interactiva requerido , necesidad de minimizar al centro, lateralmente expansible
interfaz de la representación del cliente requiere un alto rendimiento, es necesario la medida de lo posible del centro, lateralmente expansible

Así que nuestra solución tiene varias decisiones clave:

  • La cantidad de datos entre la configuración del desarrollo de contenidos / despliegue y requiere una conversión del transformador Drive y capacidades de procesamiento, y la experiencia de desarrollo equilibrado solicitudes de los clientes

  • Las necesidades de los clientes tengan motor de JavaScript, la lógica de manejo dinámico, estrategia de carga dinámica, y debe resolverse a trabajar en el extremo compleja lo más pronto posible

  • Descripción del contenido dinámico requiere la separación, la protección de la estructura del contenido complejo, estilo, datos, descomponible comportamiento

  • Nativo prestación interfaz de cliente requiere capacidades de renderización, garantía de ejecución

El límite entre nativos y JavaScript motor de renderizado en el DOM virtual, ambos se comunican por convención DOM virtual, en lugar de datos de la plantilla + u otros límites para asegurar un equilibrio de flexibilidad y rendimiento de la representación

distribución de contenido dinámico, el acceso de cliente, el montaje, las necesidades de la API de JS a escala de todo, para proteger la suficiente luz núcleo weex, lo suficientemente concreta, pero en realidad puede soportar más escenarios de negocio

Pie de foto

detalles básicos weex cadena trabajo

filosofía de diseño de núcleo weex es un tres soluciones dinámicas integrados terminales, estudiantes nube publicar en tiempo real y de despliegue dinámico, pre-análisis de procesamiento de plantilla, los estudiantes front-end de lograr el contenido dinámico en el Marco JS analiza y procesa en DOM virtual, cliente de renderizado para proporcionar los estudiantes a lograr y apoyar a las características nativas, los siguientes estudiantes de negocios para formular o aplicar el contenido dinámico puede ser configurado de acuerdo con DSL.

Pie de foto

Weex en el diseño de DSL basa en gran medida en estándares Web plantilla compatible y escrita, estilo, escritura por la corriente principal y maduro patrón MVVM, estamos costos de aprendizaje, hábitos desarrollado teniendo en cuenta una gran cantidad de estudiantes de negocios, por lo que los estudiantes de negocios de forma rápida aprender y utilizar, y para asegurar la normalización y la legibilidad del código (gracias especiales aquí para buscar Vue.js su autor, especialmente la lluvia el río, nos encontramos en la parte superior del diseño y la implementación del Marco JS DSL han hecho una profundidad de uso y aprender, y los procesos de cambio también se benefician de la autora de).

En segundo lugar, con el fin de mejorar el rendimiento, reducir los clientes de pérdida de propiedad, weex en el lado del servidor para lograr una obra DSL transformador, puede al mismo tiempo la liberación plantilla, el código + CSS + JavaScript XML en alta puede una pequeña cantidad de datos de la eficiencia de JS Bundle, y almacenamiento sincrónica a la nube: como servidor web, CDN y así sucesivamente.

Una vez más con el fin de garantizar la lógica empresarial dinámico, weex en hacer funcionar el motor JavaScript de cliente a partir de un conjunto de pre-JS marco, para ser responsable de analizar toda la JS Bundle, y el fin nativa sólo es responsable virtual análisis DOM y el diseño, la implementación de interfaz de usuario de representación, y la realización del procesamiento de las comunicaciones de red básicas de la API subyacente, la alfabetización documento y el gesto.

Así como para mejorar efectivamente la eficiencia del trabajo, weex de JS Bundle puede lograr Conversión de presentación de tres terminales multi-plataforma, los estudiantes de negocios pueden desarrollar una weex JS paquete a través de lograr HTML5 pantalla iOS / Android / de tres terminales normal.

Todos los componentes nativos y API JS son totalmente modular, para los estudiantes de negocios la capacidad de extender al centro se puede llegar mediante el registro de nuevos módulos y métodos.

Acerca de la optimización del rendimiento weex, así como los siguientes detalles:

1, JS Marco apoyándose en la recopilación de datos, en respuesta a alcanzar la capa vista, junto con el algoritmo de optimización capa diff, puede efectivamente operaciones de filtrado y cálculos complejos redundantes.

2, terminal de comunicación nativo, DOM virtual proceso de análisis y el diseño de rosca implementación asíncrona o similar, para evitar la obstrucción de la rosca de la interfaz de usuario.

3, los nodos de componentes La interfaz de usuario para lograr un procesado de multiplexado, y el seguimiento y recuperación de recursos de imagen, reducen eficazmente el uso de memoria.

4, altos requerimientos en tiempo real para el procesamiento, weex permiten a terceras partes para alcanzar las necesidades de personalización nativas para asegurar la buena experiencia.
Pie de foto
Pie de foto
Pie de foto
Pie de foto
Pie de foto

Figura: pruebas de rendimiento clave weex y comparación de programas similares

Nota: Los datos de los resultados de pruebas de laboratorio, interfaz de prueba es de un 60 lista de "pozo bits" de los objetos, modelos de prueba para:

  • iOS: iPhone5 - iOS 9.1

  • Android: Samsung SM-N9006 - Android 5.0

Weex Lynx dobles once proyectos en la práctica

El extremo móvil de la sala principal y la interfaz de pantalla en la dinámica weex doble de once proyectos, y apoya la participación de. En la nube para lograr una "cebra" los operadores de sistemas de distribución trasero Lynx front-end en el desarrollo de instrumentos del módulo front-end de la lógica de la interfaz y el negocio de procesamiento de la sede principal, mientras que en el cliente de atracar el teléfono teléfono Lynx, Taobao.

Pie de foto

El año pasado, de dos las once de sede principal desafío

En cada agenda bienal, once, el lugar principal es un aspecto muy crítico. Una gran cantidad de tráfico para el usuario, tienda, mercancía reunió desde varios sectores llegaron aquí como un punto de partida de aterrizaje. En cuanto a la complejidad de los contenidos, la flexibilidad, la experiencia y por lo que tenemos muy altas exigencias. Sobre la base de nuestra experiencia pasada, la capacidad de derivación de la sede de fortalecimiento, el lugar de la jerarquía de las operaciones de aplanamiento carga de trabajo de la justificación, la experiencia y optimizar el rendimiento, es muy importante para algunos detalles, sino también para deducir la sede principal de tres mejoras importantes de este año objetivos:

  • La experiencia de aplicación

  • nivel plana

  • contenido personalizado

La experiencia de aplicación más allá de los medios tradicionales que necesitamos para tener un rendimiento de HTML5 y la experiencia; aplanado medios de jerarquía que el contenido de cada capa será más rica y compleja, la sede principal, por supuesto, no es una excepción, sino que nos obliga a personalizar el contenido generado en el contenido temprana el algoritmo, entrega, presenta la interfaz de cliente para cargar el contenido y así sucesivamente todos los aspectos de una actualización completa.

Pie de foto
Pie de foto

Weex desempeñar un papel en la sala principal

Desee hacer esto, incluso con unas buenas ideas y pensamientos, o en virtud de una ejecución superior del personal, o por tirar el dinero para golpear la máquina, no hay manera de hacer todas las cuestiones que ser la fuerza impulsada por la tecnología para resolver! diseño e implementación sofisticadas necesidades. weex equipo durante todo el proceso de preparación de los dos-once y demanda Partes sobre estas cuestiones en profundidad la comunicación e intercambio, y llegar a una solución técnica eficaz, una buena solución para muchos de los aspectos clave de estas cuestiones, y como weex una nueva solución técnica también soportó una importante "prueba" tal!

En primer lugar, hemos logrado un lugar de dos-Eleven Main para el desarrollo de iOS / Android / HTML5 en por weex, capacidades de visualización de sincronización de múltiples puertos, y para mostrar el efecto de diversos aspectos y niveles de experiencia son nativos.

En segundo lugar, el algoritmo con el equipo para alcanzar las necesidades individuales de este año dos-las once de sede principal, los llamados "mil mil caras" y para lograr los dos-las once de sede principal de las operaciones comerciales de los datos de configuración estáticos y recomendaciones personalizadas datos dinámicos algoritmo dividieron al final de la serie. Y optimizar todo el contenido de la carga del cliente, inicializar la interfaz, rendimiento interactivo

En tercer lugar, weex retener la flexibilidad para ajustar la liberación del mecanismo de cierre HTML5 para lograr una representación dinámica en el lado del cliente, el operador puede ajustar la posición de la planta principal salón, y la disposición "pozo bits" a través de la configuración en tiempo real y el diseño de la interfaz presentación y estilo ajustes.

En cuarto lugar, sobre la base de un rendimiento excepcional en el número de presentación de contenidos, que han roto a través de la "posición boxes" tradicional 120 de los límites de rendimiento, este vehículo de dos once de máxima real de número "pozo dígitos" cerca de 180, rendimiento sigue siendo perfecta - usted sabe que el equipo está en el temprano para tomar 300 "posición hoyo" una "violenta ensayo límite". Se proporciona además una garantía para el lugar plana.

compartir la práctica más weex y resumen del proyecto

Weex y actualmente cuenta con más partes de negocio para cooperar en el Grupo Alibaba, incluyendo Taobao Doble Doce otros proyectos (coincide con el día de autor Doble Doce, weex someterse a una nueva ronda de tiempo de servicio bautismo de la escritura!), Esperamos seguimiento habrá más experiencia práctica y el conocimiento continuará compartirlo.

weex equipo se trasladará a aprovechar el fin de la naturaleza dinámica de esta proposición fundamental en torno a tres características: la weex ligero, de alto rendimiento, escalables y de mejora iterativa periódicamente. Vamos a practicar una forma más sencilla, una mayor carga / arranque / representación / rendimiento interactivo, una mayor personalización del centro y de escalabilidad horizontal continúan haciendo avances y la innovación. Y regularmente abrir la versión más reciente y documentación, herramientas de apoyo, la ecología circundante dentro del grupo.

Acerca de Open Source: equipo siempre está de acuerdo con el punto de vista - de código abierto no es un simple acto, sino todo un proceso y el resultado final del mismo. Weex esperanzas del equipo para resolver gradualmente los problemas de negocio más generales tanto como sea posible para proteger la calidad de la calidad de la ingeniería y el código, y se desarrollan en la comunidad puede ser aceptada, la participación y la confianza en el programa técnico. Reflejar el valor mayor, al mismo tiempo, conseguir más apoyo y un desarrollo más rápido. Esta es nuestra esperanza, y la esperanza es que esperamos :)

"Mobile Taobao equipo técnico Zhao Jinjiang (Pitágoras), Golden Bay (Sociedad Iraní) y otros expertos que participan en la creación de este artículo." Este artículo fue publicado el InfoQ.

Sobre Sea Ali
Ali Mar (baichuan.taobao.com) Grupo Alibaba, "nube" + "final" de la estrategia central del Grupo Alibaba, una plataforma abierta inalámbrico, basado en componentes de servicio de clase mundial y de back-end madurar negocio, a través de "la tecnología datos no "comercial y grande para los empresarios móviles que pueden construir rápidamente aplicaciones, APP y soluciones de comercialización para mejorar la experiencia del usuario, al mismo tiempo que proporcionan una amplia gama de servicios de negocios - espacio físico, operadores de incubadoras, capital riesgo, etc., para móviles empresarios para proporcionar una protección completa.

Supongo que te gusta

Origin www.cnblogs.com/jlfw/p/12657737.html
Recomendado
Clasificación