Notas de rendimiento: copy-on-write
Comprenda el rendimiento de Swift String: copy-on-write (COW), uso compartido de substrings y gestión eficiente de la memoria.
Notas de rendimiento: copy-on-write es una lección gratuita de Swift Academy en CoddyKit. Esta es la lección 3 de 3. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Swift Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Swift Academy incluye 3 lecciones en total.
Introducción
Objetivo: Aprenda cómo String utiliza copy-on-write (COW) para equilibrar rendimiento y seguridad. Las subcadenas también comparten memoria hasta que es necesario crear una copia.
Almacenamiento compartido
Asignar un String no copia inmediatamente los caracteres. Ambos valores comparten el mismo almacenamiento.
var a = "Hello World"
var b = a // no real copy yet
print(a, b)La mutación activa la copia
La copia se produce únicamente cuando uno de los valores se modifica. Esto es copy-on-write.
b.append("!!!") // triggers a real copy
print("a:", a)
print("b:", b)Subcadenas
Las Substrings comparten la memoria de la cadena original. Convertirlas a String crea una copia completa.
let text = "Hello Swift"
let part = text.prefix(5) // Substring
print(part)Substring → String
Cree explícitamente un String a partir de una Substring si desea que tenga su propio almacenamiento.
let s: String = String(part)
print("Converted:", s)Consejos
Consejos:
- Las asignaciones son baratas hasta que se modifica el valor.
- Tenga cuidado con las Substrings que se conservan durante mucho tiempo: mantienen en memoria la cadena original completa.
- Conviértalas a String si necesita un almacenamiento independiente.
Pregunta sobre COW
Comprobación rápida: ¿Qué hace copy-on-write?
Resumen
Resumen: Los String de Swift usan copy-on-write para ser eficientes. Las asignaciones y las subcadenas comparten memoria; una copia real solo se crea al modificar el valor o realizar una conversión explícita.
Preguntas frecuentes
¿La lección «Notas de rendimiento: copy-on-write» es gratis?
Sí — el texto completo de «Notas de rendimiento: copy-on-write» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Swift Academy, actualiza a CoddyKit PRO. El curso de Swift Academy incluye 3 lecciones en total.
¿Qué aprenderé en «Notas de rendimiento: copy-on-write»?
Comprenda el rendimiento de Swift String: copy-on-write (COW), uso compartido de substrings y gestión eficiente de la memoria. Practicas Swift Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Swift Academy?
No se requiere experiencia previa. Swift Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 3.
¿Cuánto tiempo toma la lección «Notas de rendimiento: copy-on-write»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Swift Academy?
Sí. Cada lección de Swift Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Strings y Unicode: grafemas, índices, substrings y APIs
- APIs habituales: prefix/suffix/contains, split/join
- Notas de rendimiento: copy-on-write