Comments 1
Немного не по теме, но я бы советовал использовать guard
для проверок, выполнение которых необходимо для дальнейшей работы функции (вместо if
). Это позволит отделить выходы из функции из-за, скажем, неверных входных данных, а также поможет придерживаться правила keep the happy path to the left, то есть код, который выполняется в случае прохождения всех проверок не будет задвинут куда-то вправо бесконечными вложенными блоками if {}
. Например:
guard status == .Authorized else { return }
// Зеленый свет
… Вместо
if status == .Authorized {
// Зеленый свет
}
A также:
guard #available(iOS 9.3, *) else {
// сдаём назад
openInItunesStore()
return
}
// всё отлично
let player = MPMusicPlayerController.systemMusicPlayer()
player.setQueueWithStoreIDs(ids)
player.play()
… Вместо:
if #available(iOS 9.3, *) {
// всё отлично
let player = MPMusicPlayerController.systemMusicPlayer()
player.setQueueWithStoreIDs(ids)
player.play()
}
else {
// сдаём назад
openInItunesStore()
}
Sign up to leave a comment.
Играем в Apple Music