Nova Função 'Count(where:)' no Swift 6 (High-Order Function)

Nova Função 'Count(where:)' no Swift 6 (High-Order Function)

Swift 6 trouxe coisas legais pra gente. Hoje vamos falar da nova High Order Function

O que são as High Order Function

Uma higher order function é uma função que recebe uma outra como argumento, ou uma função que retorna outra função.

Depois dessa breve introdução do que é uma High Order Function, vamos imaginar que temos um array de Ints e que precisamos pegar o numero de elementos dentro dele que são múltiplos de 2.

Antes do Swift 6

Poderíamos usar diversas formas de pegar count de elementos, usando for ou foreach mas nesse caso estou trazendo como normalmente eu fazia usando o filter. Perceba que filter retorna um array com os elemento que retornam true para condição e depois disso pegamos o nosso count.

let array = [1,2,3,4,5,6,7,8,9,10]
let count = array.filter {
    $0.isMultiple(of: 2)
}.count

Depois do Swift 6

let array = [1,2,3,4,5,6,7,8,9,10]
let count = array.count {
    $0.isMultiple(of: 2)
}

Perceba que agora no nosso count podemos passar um argumento igual no filter só que trazendo direto o count do array da condição.

Não é nada que vai mudar a nossa vida como desenvolvedor iOS drasticamente mas acho legal quando novas versões do Swift trazem facilidades pro nosso dia a dia e ajudam a remover a verbosidade do código.