Tabla de enlaces
Resumen y 1 Introducción
2. Conceptualizaciones previas de asistencia inteligente para programadores
3. Una breve descripción de los modelos de idiomas grandes para la generación de código
4. Herramientas de programación comercial que utilizan modelos de idiomas grandes
5. Implicaciones de fiabilidad, seguridad e seguridad de los modelos de IA generadores de código
6. Usabilidad y estudios de diseño de programación asistida por AI-AI
7. Informes de experiencia y 7.1. Escribir indicaciones efectivas es difícil
7.2. La actividad de la programación cambia hacia la verificación y la depuración desconocida
7.3. Estas herramientas son útiles para la boilerplate y la reutilización de códigos
8. La insuficiencia de las metáforas existentes para la programación asistida por AI-AI
8.1. Asistencia de IA como búsqueda
8.2. Asistencia de IA como compilación
8.3. Ayuda de IA como programación de pares
8.4. Una forma distinta de programación
9. Problemas con la aplicación a la programación del usuario ultimate
9.1. Problema 1: Especificación de intención, descomposición del problema y pensamiento computacional
9.2. Problema 2: corrección del código, calidad y (sobre) confianza
9.3. Problema 3: Comprensión y mantenimiento del código
9.4. Problema 4: Consecuencias de la automatización en la programación del usuario ultimate
9.5. Problema 5: Sin código y el dilema de la respuesta directa
10. Conclusión
A. Fuentes de informes de experiencia
Referencias
9.3. Problema 3: Comprensión y mantenimiento del código
Un tercer desafío con programación impulsada por IA es el problema de la comprensión del código. Durante la evaluación de los usuarios de Gridbook, los participantes mencionaron que las fórmulas generadas son difíciles de entender, incluso cuando los usuarios estaban familiarizados con el idioma de destino. Esto tiene consecuencias potencialmente graves: desde evaluar la precisión del programa al verificar la lógica, la capacidad de personalizar el código, hasta la depuración y reutilización futura. Como discutimos anteriormente, este problema también existe para desarrolladores capacitados.
Un enfoque para abordar este problema es que el sistema AI incluya alguna noción de legibilidad o comprensibilidad del código como issue en la síntesis de código, como durante la fase de aprendizaje, o al clasificar sugerencias, o incluso tomarla como entrada al modelo (comparable al parámetro de ‘temperatura’ en el códice). Este enfoque es útil más ampliamente para sintetizar un código de alta calidad, como la optimización del rendimiento o la robustez. Una segunda solución para abordar el problema de comprensión es explicar el código generado a sus usuarios de una manera que sea menos ‘programadora’ y más centrada en la tarea y el contexto actuales del usuario. La evidencia inicial sugiere que los participantes estaban abiertos a estas concepts; Por lo tanto, estas áreas están maduras para la exploración futura.