Estaba tratando de crear una función en la nube usando Node.js. Al principio, creé 3 archivos con cada función diferente, pero en realidad tardé casi 30-45 segundos en terminarlos todos solo para autenticación y verificación del dispositivo, únicamente. Luego, decidí combinar todos los archivos en una sola función y ahora tiene una complejidad de 185. Realmente se volvió más rápido y solo requiere 10-14 segundos.
const functions = require("firebase-functions"); const admin = require("firebase-admin"); const level = require("../../library/level"); const hamsu = require("../../library/useful"); const db = admin.firestore(); const medium = level.medium; exports.Authentication = functions.runWith(medium).https.onCall(async (data, context) => { if (context.app == undefined) { throw new functions.https.HttpsError( "failed-precondition", "The function must be called from an App Check verified app."); } if (!context.auth) { throw new functions.https.HttpsError("failed-precondition", "Unauthorized User is trying to access the App."); } let code; const token = data.token; });Entonces, lo que quiero preguntar es si tener una complejidad de hasta 185 realmente causa que el servidor se sobrecargue, ¿o no? Gracias por cualquier consejo y truco. Lo siento, soy un novato.
185 es muy alto para la complejidad cognitiva, y sería desaconsejable en una situación en la que:
La mejor práctica, en términos generales, es mantener un código de baja complejidad cognitiva con la menor cantidad posible de instancias de repetición de código.
Un aparte: ¡espero que disfrutes el proceso de refactorización! Algunos IDE ofrecerán una herramienta de refactorización integrada que puede automatizar un poco el proceso.