3. Anatomía de un Prompt Profesional: El Framework C.L.E.A.R.
Estructura prompts técnicos de alta precisión definiendo Contexto, Límite, Especificación, Acción y Respuesta estructurada.
La Diferencia entre un Prompt Vago y un Prompt de Ingeniería
La calidad del código que devuelve un LLM es directamente proporcional a la calidad de la especificación técnica que le proporcionas. Si pides: "hazme una función de login", el modelo adivinará tecnologías obsoletas, patrones inseguros o librerías que no usas en tu proyecto.
En la ingeniería de software profesional asistida por IA, utilizamos el Framework C.L.E.A.R. para redactar prompts inequívocos:
| Pilar C.L.E.A.R. | Propósito en el Prompt | Ejemplo Práctico |
|---|---|---|
| C - Contexto | Define el entorno tecnológico, versiones y arquitectura. | "Trabajo en una aplicación PHP 8.3 con arquitectura MVC pura y base de datos MySQL." |
| L - Límites | Restricciones estrictas de lo que NO se debe hacer. | "No uses frameworks como Laravel. Prohibido usar `md5()` o `sha1()`. No agregues librerías externas." |
| E - Especificación | Entradas exactas, salidas y casos de borde requeridos. | "La función recibe `string $email` y `string $plainPassword`. Devuelve `?User` o lanza `AuthException`." |
| A - Acción | La tarea técnica concreta requerida. | "Implementa el método `authenticate()` usando PDO con sentencias preparadas y `password_verify()`." |
| R - Respuesta | El formato exacto en el que deseas la salida. | "Devuelve únicamente el bloque de la clase con tipos estrictos y comentarios PHPDoc, sin texto introductorio." |
⚡ Comparativa: Prompt Ingenuo vs Prompt Profesional C.L.E.A.R.
Observa cómo un prompt estructurado elimina cualquier ambigüedad y produce código listo para producción en el primer intento.
# COMPARATIVA DE PROMPTS EN EL DESARROLLO WEB
## ❌ Prompt Ingenuo (Genera código genérico, inseguro o desalineado)
"Hazme un script en javascript para subir fotos al servidor y guardarlas en la base de datos."
---
## ✔ Prompt de Ingeniería C.L.E.A.R. (Genera código preciso y seguro)
### Contexto:
Estamos desarrollando una plataforma educativa en JavaScript vanilla ES2022 en el frontend y un backend con Node.js v20 (Express.js).
### Límites y Restricciones:
- No utilices jQuery ni librerías pesadas en el frontend.
- Tamaño máximo de archivo: 2 MB.
- Formatos permitidos exclusivamente: image/jpeg, image/png, image/webp.
- En el frontend, valida el tipo MIME antes de enviar la petición con fetch().
### Especificación:
- Crea una función `uploadProfilePicture(file: File): Promise<{ success: boolean, url?: string, error?: string }>`
- Debe mostrar el progreso porcentual utilizando XMLHttpRequest o ReadableStream.
- Si el archivo excede los 2 MB o no es imagen, debe rechazar la promesa con un mensaje descriptivo sin consumir ancho de banda.
### Formato de Respuesta:
Entrega el código de la función en JavaScript moderno tipado con JSDoc y un ejemplo de uso con un input `<input type="file" id="avatarInput">`.
Mini-Quiz de Retención
Comprueba tu comprensión antes de pasar a la siguiente lecciónEn el Framework C.L.E.A.R. de prompt engineering, ¿por qué es tan importante definir los "Límites" (L)?
¿Tienes dudas con este tema?
Sócrates AI puede darte analogías y explicarte este código paso a paso.🚀 ¿Quieres dominar IA como Copiloto: Aprendizaje & Desarrollo Web y crear proyectos reales?
Aprende arquitectura limpia, desarrollo web moderno, buenas prácticas y despliegue en producción con nuestro Bootcamp Fullstack Developer con mentorías en vivo.
🏛️ Autoría y Propiedad Intelectual: Obra educativa original de David Amador para Kilopolis Academia (Solucionáticos), estructurada sobre las especificaciones y estándares abiertos del W3C, el estándar vivo de WHATWG y la documentación oficial de código abierto. © Todos los derechos reservados.