Skip to content

Trucos Apple

Toda la tecnología Apple

Menú
  • Apple
  • IPhone
  • Mac
  • Móviles

Swift 5.2, novedades en la nueva versión del lenguaje abierto de Apple

By   On 30 marzo, 2020 In Apple Tagged abierto, Apple, lenguaje, novedades, Nueva, Swift, versión Leave a comment 

Swift 5.2, novedades en la nueva versión del lenguaje abierto de Apple

El otro día hubo lanzamiento de las llamadas «versiones de primavera» de todos los sistemas y la integración de algunas funciones interesantes como el soporte de ratón y trackpad en iPadOS.

Pero junto a las versiones de sistemas, además llegaron las renovaciones en el terreno del desarrollo: Xcode 11.4 con radicales mejorías y arreglos que la convierten en la versión estable de Xcode once que llevamos esperando desde septiembre, así como la llegada de la última versión del lenguaje Swift: la versión 5.2.

Vamos a repasar brevemente todas las novedades que nos ofrece.

Las primordiales mejorías en el lenguaje no están en intercambios en el mismo, ya que Swift tiene alguna API estable desde su versión tres y prácticamente el 99% del código que se creara en esa versión seguirá funcionando en esta última. Lo que Apple™ ha hecho es mejorar sustancialmente «las tripas» del lenguaje mejorando e incorporando nuevas funciones que permiten un mejor análisis y detección de equivocaciónes durante escribimos vuestro código.

Arquitectura de diagnóstico

Lo primero que se ha hecho es intercambiar la arquitectura de diagnóstico del lenguaje a alguna nueva y mejorada. Esta arquitectura es lo que concede examinar el código durante lo escribimos y detectar equivocaciónes en el idéntico inclusive anteriormente de compilar vuestro programa.

Apple ha mejorado la experiencia de uso del lenguaje a través de alguna nueva arquitectura de diagnóstico que concede dar alguna información mas precisa en los equivocaciónes que se encuentren en el código, así como arreglos rápidos para muchos de esos errores.

Si has trabajado con Swift, es de sobra conocido que en ocasiones su «exactitud» en mostrar un problema en el código, no era la mejor. Y ese problema se agravó enormemente al venir SwiftUI cuya estructura DSL (lenguaje específico para dominio) cambió la figura habitual de representación del idéntico para con el uso de dicha librería.

Apple, consciente del problema, lleva muchos meses laburando en integrar un reciente motor de arquitectura de diagnóstico que nos dirá de figura mas precisa dónde está el error, y no solo eso, además nos sugerirá mas «fixes» (soluciones rápidas) para que el código se arregle y se muestre como debería.

Usando un modelo de la propia Apple, en la versión anterior del lenguaje, si creábamos el siguiente código:

enum E
  { case one, two }

func check(e: E) {
   if e != .three {
     print("okay")
   }
}

En este código hemos inventado alguna enumeración que tiene dos probables valores: one y two. Nada más. Pero en la función check preguntamos por un hipotético valor three que obviamente no existe. Hasta ahora, el error que nos daba tenía que ver con el operador de comparación de no igualdad (el !=) donde nos decía que ambos tipos de datos no podían ser comparados pues los detectaba como diferentes. Un error inexacto.

Code Completion

Con la nueva versión del motor, nos dirá cabalmente que el valor three no existe en la enumeración E, con lo que podemos comprender de alguna figura mas exacta el problema.

Este es solamente un pequeño modelo para hacernos alguna idea de este profundo intercambio que nos ayudará a que el análisis del código sea mas preciso indicándonos de figura eficiente (y rápida, ya que se ha mejorado el personal algoritmo subyacente) dónde están los equivocaciónes en el código.

Swift 5.3 desempeñará en Windows™ y además en otras distros Linux™ distintos a Ubuntu
En Applesfera

Swift 5.3 desempeñará en Windows™ y además en otras distros Linux™ distintos a Ubuntu

Como complemento a este cambio, además se ha mejorado sustancial el motor de completado de código, que nos menciona qué código escribir durante lo escribimos (y así no tener que recordar siempre el nombre preciso de cientos u miles de métodos, variables u objetos que poseamos en vuestro programa, así como los de las librerías que usemos). Este motor ha mejorado su eficacia entre un 1.2 y un 1.6x quitando comprobaciones redundantes.

LSP es un estándar abierto inventado por Microsoft™ que búsqueda crear un único estándar abierto a la hora de trabajar e implementar soluciones de gestión del código en cualquiera lenguaje de programación.

Gran parte del responsable de este intercambio es la arquitectura LSP (Language Server Protocol) de Microsoft™ que Apple™ ha incorporado al etiquetado, procedimiento y completado de código. Al usar Apple™ esta tecnología, en breve, cualquiera editor u programa de terceros (como Sublime Text, Visual Studio Code u inclusive IDEs como Visual Studio) podrá autocompletar, examinar y gestionar el código en Swift de la misma figura y con el idéntico motor que usa Xcode, lo que dará alguna experiencia mas sostenible inclusive entre distintos sistemas operativos.

Mejoras en el compilador

Compilar un programa y su agilidad es tarea esencial. Es lo que traduce vuestro código en algo que un sistema operacional pueda entender. Aquí Apple™ además se ha puesto las pilas y ha mejorado sustancialmente la agilidad de los procesos de compilación meta (release) y para depuración (debug).

Compilation Modes

Para ello ha optimizado los dos modos mas usados: el incremental (que detecta y compila solo los intercambios reales en el código entre compilación y compilación, y así mejora el período en las pruebas de vuestro programa) y el de la optimización del módulo completo (o WMO) que es usado cuando queremos crear la versión meta de vuestro programa y que pone todo el código en un solo fichero, trabajándolo de figura completa para un enlace mas eficiente.

A este intercambio se han incorporado además importantes mejorías en el depurador que nos concede ejecutar vuestro programa línea a línea, ver su comportamiento durante se ejecuta y extraer datos que nos ayuden a detectar equivocaciónes en período de ejecución.

Incorporaciones en el código

Con este lanzamiento, Apple™ ha incorporado dos nuevas funciones atrayentes al lenguaje. Una de ellas es la expectativa de usar alguna función llamada callAsFunction adentro de cualquiera clase u estructura. Su uso, muy orientado a la futura interoperabilidad de Swift con Python en la que trabaja Google™ para su motor TensorFlow de aprendizaje automático, concede que llamemos a la constante u variable donde se guarde la instancia de la clase u estructura, como si fuera alguna función.

struct Dado {
   var caras:Int
  
   func callAsFunction() -> Int {
     Int.random(in: 1...caras)
   }
}

let dado1 = Dado(caras: 8)
let resultado = dado1()

Como podemos ver, creamos la instancia del struct Dado, y podemos ejecutarlo como alguna función llamando a dado1() a pesar de no indicar de figura explícita el nombre de la función ya que callAsFunction hace las veces de función afiliada a la propia instancia.

Apple solo ha incorporado dos intercambios al lenguaje en esta versión: versión llamadas implícitamente desde la raíz de alguna instancia y key path en las funciones que reciban un dato raíz.

También, en programación funcional podemos usar alguna nueva figura de referenciar a los elementos adentro de las funciones de orden mas alto de la programación funcional, así como cualquiera otra función implícita que reciba como parámetro la instancia de un dato.

Antes había que usar el parámetro abreviado $ 0 seguido del nombre de la propiedad (como $ 0.name) y ahorita podemos usar la referencia a través de un key path con la barra invertida: \.name, dando por hecho que \. pertenece a la raíz de la instancia obtenida por parámetro. Una chica mejora semántica que hace mas claras las referencias.

Pequeñas mejoras

Sin duda, Swift es 1 de los planes mas prometedores de Apple™ en todos los sentidos y donde mas esfuerzo y labor están poniendo. No solo por la propia compañía y todas las compañías que participan en el plan como lenguaje de código abierto, también por alguna increíble comunidad que ofrece activa mejoras, arreglos, incorporaciones…

Desde aquí, nuestro agradecimiento a todos ellos por el excelente labor que están realizando.

–
La noticia Swift 5.2, novedades en la nueva versión del lenguaje abierto de Apple™ fue notificada originalmente en Applesfera por Julio César Fernández .


Applesfera

Toda tecnología Apple

  • novedades swift lenguaje


el inventor es el AUTOR ORIGINAL de su link de arriba, auspiciamos al desarrollador original de la noticia sin perjudicar su reputación ni posicionamiento web.

Related Posts

  • Apple pide a los desarrolladores que devuelvan el Kit antes de abril
  • Las Apple Store empiezan a incorporar a intérpretes de la lengua de los signos
  • Qué auriculares de Apple comprar en 2021: AirPods, AirPods Pro o AirPods Max

Post navigation

Tigres, tiburones y otros animales en 3D con realidad aumentada: cómo se hace, qué animales hay y qué necesitas
El Samsung Galaxy M11 ya es oficial: conoce sus características y disponibilidad

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

TOP 10 Apple

  • HP compra la marca de accesorios HyperX por $425 millones de dólares 21 vistas
  • Alertan de SMS falsos que buscan infectar tu teléfono Android 16 vistas
  • Jesse Plemons sustituirá a DiCaprio en Killers of the Flower Moon. 16 vistas
  • Huawei Mate X2, el nuevo móvil plegable tiene una segunda pantalla, más cámaras y mucha más potencia 14 vistas
  • Cómo crear las nuevas rutinas del Asistente de Google 13 vistas
  • Kodi 19 Matrix es oficial: ya puedes descargar la versión estable 13 vistas
  • La actualización de One UI 3.1 para el Galaxy S20 FE está nuevamente disponible 12 vistas
  • El ‘cortejo’ por el Apple Car y la inevitable alianza con un fabricante de automóviles 12 vistas
  • Huawei lanza al Mate X2 desde 2785 USD. Disponible solo en China por ahora 12 vistas
  • Google Fotos ya ofrece opciones ‘premium’: nuevos filtros para suscriptores de Google One 12 vistas

Términos populares

  • Hilo De Sangre Azul series gratis
  • Correo De Inocentes descargar serie
  • Correo De Inocentes series gratis
  • Hilo De Sangre Azul serie en streaming
  • Correo De Inocentes ver serie online
  • mapa among us
  • Locomundo ver serie online
  • Locomundo descargar serie
  • Locomundo canal gratis
  • Locomundo en directo

Tag Cloud

actualiza Android aplicaciones aplicación Apple apps Así batería beta cámara Cómo desde disponible este está Galaxy Google Huawei iPad iPhone lanza llega MacBook macOS mejores más móvil Note Nueva nuevo Nuevos pantalla para podría puedes Samsung según Store tiempo versión vídeo Watch WhatsApp Xiaomi ¿Qué
Trucos Apple - El mejor contenido para desbloquear iCloud 2019