У моего приложения есть класс MyDevice, который я использую для связи с оборудованием. Это оборудование указывать необязательно, так это переменная экземпляра:Упрощение вложенных, если в swift
var theDevice:MyDevice = nil
Затем, в приложении, я должен инициализировать устройство (для связи), а затем выполнить самодиагностику, чтобы проверить его доступность и готовность выполнять. Если это не удается, устройство либо недоступно/доступно/не работает.
Вот мой чрезмерно сложный код. Я смотрю, как его упростить.
if let device = self.theDevice
{
device.initDevice()
if (!device.selfTest())
{
self.theDevice = nil;
}
}
Я пытался объединить все тесты с & & в если заявление, но это не удается. Проблема в том, что у меня есть 12 из них для различных устройств в начале функции. Это занимает много места и грязно. Как я могу объединить эти инструкции в Swift?
«объединить все три теста» Я вижу только 2 'if's. Какое третье условие?Кроме того, мне кажется, что «слишком сложно» для меня. Я считаю это очень читаемым. – Arc676
Протокол и функция, которую вы вызываете и передаете каждому устройству, а устройства могут быть в массиве, который вы итерации – Wain
@ Arc676: спасибо. Я изменил текст. Что я имел в виду, так это то, что я должен вызвать initDevice() перед selfTest(). – Adeline