Quiero hablar sobre algunas de las utilidades que tenemos en nuestro sistema, y simplemente viven en utilidades, en hooks y en estilos. Lo dividimos en tres carpetas, porque para los ingenieros descubrimos que es bueno tener un lugar dedicado para cosas como hooks, y sabemos que los archivos allí son muy especiales. Quiero centrarme en el estilo.
Un problema para el cual estábamos escribiendo mucho estilo era para márgenes y rellenos. Entonces, lo que hicimos fue agregar este ayudante que usamos en nuestro componente principal, que tiene esas propiedades para márgenes y rellenos. Aquí hay algo que en la web usamos la propiedad flex-gap, pero esto no es algo que podamos implementar con React Native. Y debido a esto, simplemente tenemos este ayudante de estilo donde tenemos margen, fondo, relleno y todas las asociaciones. Y cada componente puede tener esta propiedad de espaciado, por lo que podemos agregar cualquier espaciado a esos componentes, y esto fue muy útil.
La otra cosa que formaba parte del nuevo conjunto de funciones era tener soporte para el modo oscuro, que es una característica genial. Entonces, usamos este paquete llamado React Native Dynamic, y creamos un envoltorio alrededor de él donde puedes usar esta hoja de estilo dinámica y, según el color, decides qué color estás usando. Y tenemos un par de ayudantes y temas de estilo, como por ejemplo, usar color de fondo. Y tenemos este mapa de colores, que es el valor dinámico. Entonces, en el texto con este color, el texto secundario es con este color, y cada color en nuestra aplicación está definido a este color y debe ir a React Native Dynamic. Así que en realidad tenemos soporte incorporado para el modo oscuro. Y básicamente así es como se combina toda la aplicación. Como construimos sobre los cimientos, que son las utilidades. Y tenemos muchas más utilidades inteligentes. Son mucho más ayudantes internos. Pero los que te mostré, creo que son los más memorables y útiles, y no he visto que se utilicen mucho en otras aplicaciones hasta ahora. Y luego, sobre ellos, construimos este conjunto principal de componentes, que es nuestro conjunto principal, que son cosas como botones, texto, desplazamiento infinito, cosas en las que no les importa la lógica de dominio. Y luego tenemos el componente de dominio, que es como botón de publicación, botón de publicación, elemento de publicación, miniatura de publicación, que básicamente son cosas con fragmentos, cosas que toman cosas de GraphQL. Y luego, todo esto se combina en las páginas, que están envueltas con esta ayuda o crean página. Entonces, para resumir eso, si quieres sacar algunas conclusiones de mi charla, sí, GraphQL es increíble. Ayuda mucho a diseñar un sistema que utiliza GraphQL en todas partes. La creación de pantallas es algo que me sorprende no haber visto a muchas personas usar un patrón como ese o el escalador de pantallas. Y en cuanto a los componentes, fíjate cómo hemos aislado muchas de nuestras dependencias. Utilizamos un enfoque de construcción de directorios y tenemos este concepto de componente de dominio. Así que, sí, muchas gracias. Eso es todo de mi parte. Gracias.
Comments