¿Cuál es el nivel técnico del espacio QQ?
1. 2006 era todavía una era en la que la tecnología front-end estaba en ciernes. Aunque Google introdujo el concepto ajax en 2004 para que más personas vieran la importancia de la tecnología front-end, todavía era muy importante. no estandarizado. Acabo de hacerme cargo del código front-end del espacio. Para brindar la mejor experiencia, las personas mayores tienen más de una docena de desarrolladores (front-end, back-end e incluso operación y desarrollo), todos modificando un archivo G4.js. al mismo tiempo, la cantidad de archivos puede llegar a 200k (puedes adivinar cuántos hay) OK). En ese momento, no había tantos marcos y soluciones como ahora, y no existía Node.js. ¿Por dónde empezaste? Si todos creen que la fusión de solicitudes de archivos es un principio básico, ¿es este el enfoque correcto? 2. Para un archivo tan grande, existen muchos problemas con el código en sí. Entonces lo siguiente que quiero hacer es desarmarlo y modularizarlo. Después de hacer esto, en 2007, para simplificar el método de desarrollo modular, escribí mi propia herramienta de compresión y fusión y definí mi propia forma de cargar módulos. Sin embargo, la optimización más sencilla que se podía pensar en ese momento era cargar el contenido que los usuarios en la página de inicio no necesitaban de la forma más asincrónica posible. Mirando hacia atrás, lo más lamentable en ese momento fue que el método de trabajo modular no se abstraía en un patrón de diseño. Más tarde, cuando hicimos la separación de DO, promovimos lentamente las herramientas de front-end para formar herramientas a nivel de empresa, incluidas la publicación y la compresión, que en realidad fueron los primeros prototipos de ingeniería de front-end. Por supuesto, la ingeniería también incluye la plataforma 3 de prueba de velocidad de rendimiento del lado web de la primera empresa. También puede ver qzfl en la captura de paquetes, que fue el primer producto en resolver las especificaciones de desarrollo y la compatibilidad del navegador. Este marco ha realizado una gran personalización en profundidad para el espacio. Al mismo tiempo, desde la perspectiva de todo el equipo, ha mejorado la eficiencia del desarrollo front-end en el proceso de producción (por supuesto, nunca ha mejorado). la eficiencia. Tenemos tiempo para hacer código abierto, lo cual es profundamente lamentable). Por supuesto, en realidad es muy triste ver varias bibliotecas básicas al mismo tiempo. En la era del desmarco, todavía veo muchas bibliotecas básicas en el espacio. Esto realmente requiere que las generaciones más jóvenes piensen en una solución. qzfl ya ha ejercido su mayor valor. ¿Puede todavía aportar mayor valor? 4. Optimización del front-end. Este es un tema muy antiguo y muy nuevo. No existe una forma correcta o incorrecta de hacerlo. Aunque la optimización del front-end también puede ser impulsada por algunos patrones de diseño convencionales, no todos los patrones de diseño son necesariamente correctos. El principio de optimización del espacio se basa en el análisis de datos, por lo que prestaremos atención al uso de usuarios reales. Se han realizado muchos ajustes en la carga de la primera pantalla multiespacio y se han realizado más análisis del 10% de los usuarios en términos de acceso a la red, operadores y hábitos de uso. Por lo tanto, no creemos que hayamos optimizado aplicando directamente los principios de optimización xxx. A medida que pasa el tiempo, la estrategia de optimización se ajusta constantemente a medida que los usuarios actualizan el hardware. Por supuesto, las optimizaciones anteriores en realidad solo resuelven el problema de la velocidad de acceso del usuario, pero no resuelven el problema del retraso. Por lo tanto, propuse un método de análisis para la optimización del rendimiento de renderizado front-end en Velocity China en 2012 (si está interesado, puede buscar optimización de 16 milisegundos en Baidu, espero que el desarrollo front-end pueda optimizar el retraso espacial a través del análisis). de problemas de renderizado. Debido a que el espacio ha estado compitiendo con la red durante mucho tiempo, realmente no presta suficiente atención al complejo rendimiento del front-end, especialmente al rendimiento del tiempo de ejecución. La tecnología de punta del espacio puede parecerle a muchas personas hoy en día una tecnología muy antigua. Pero ya es un proyecto a nivel de elefante. Además, frente a la empresa, ¿un programador racional considerará si mi refactorización sigue siendo valiosa para la optimización actual? Durante el período en el que el número de visitas a un espacio aumenta de 100.000 a un millón o decenas de millones, todo tipo de optimizaciones merecen la pena. Sin embargo, en la etapa pico actual, ¿se puede magnificar el valor de realizar cambios trascendentales? Por lo tanto, también se recomienda no utilizar el uso de nuevas tecnologías como único criterio para juzgar si la tecnología front-end es NB. Recordando el nacimiento de Ajax en 2004, ¿se considera una nueva tecnología? En realidad, es sólo un nuevo patrón de diseño. Aunque el equipo de front-end espacial final no ha hecho mucha contribución al código abierto, ha creado mucho espacio para el crecimiento dentro de Tencent y creó el canal de front-end web de Tencent, de modo que la tecnología de front-end realmente pueda valorarse dentro de la empresa. Esto es suficiente. Se agradecido.