Una de las mayores diferencias entre Swift y Objective C es el uso de la inferencia de tipos y la falta de encabezados.
En los lenguajes de estilo C, cada vez que aparece un símbolo, el compilador ya sabe de qué tipo es. Esto es más rápido para el compilador, pero requiere que el programador haga más trabajo.
int value = func(4.3)
Al compilar esta línea, el compilador sabe que el valor es un entero, espera que func produzca un entero. Func también se escribirá en este punto y la compilación puede comenzar.
dejar valor = func (4.3)
- Si quiero agregar una descripción de la aplicación para la tienda de iOS en, digamos, japonés, ¿también necesito traducir y localizar de manera más general una aplicación de idioma inglés al japonés?
- ¿Cuáles son las principales empresas de desarrollo de aplicaciones para iOS?
- ¿Qué iPad POS es actualmente el más confiable para un restaurante?
- ¿Qué compañías de desarrollo de aplicaciones móviles ofrecen un programa de referencia?
- ¿Cómo ejecutan los desarrolladores de iOS su servidor de integración continua para sus aplicaciones?
En Swift puede aparecer un símbolo, pero el compilador no sabrá el tipo hasta que encuentre el lado derecho de la ecuación. Por lo tanto, no puede comenzar a generar código hasta que analice func, solo entonces sabrá el tipo de func. (Int) En ese momento sabe que el valor es un Int.
Esto podría significar que ningún código puede comenzar a compilarse hasta que se analicen todos los archivos.
Entonces Swift siempre va a ser un poco más lento que el Objetivo C, porque el compilador simplemente necesita hacer más trabajo. Pero esto debería ser más productivo porque una computadora tonta está haciendo el trabajo de burro.
La compilación rápida se hará más rápida. Como dice Amar Kanala, la compilación incremental llegó con Swift 1.2, y XCode 6.4 es aún más rápido.