У меня есть три функции, каждая из которых зависит от предыдущей.
let dbPath = createDBPath()
let db = openDatabase(dbPath!)
readQuestionsFromDB(db!)
Первая строка создает путь к базе данных (если не дает фатальной ошибки, так как нет смысла продолжать выполнение, если у меня нет доступа к структуре файла).
Вторая строка открывает базу данных, используя путь (здесь развернутый файл - все в порядке, как если бы у нас не было пути, мы в любом случае потерпели крах в этой точке).
Третья строка считывает вопросы викторины из базы данных, которую нужно открыть, если у базы данных есть проблема, она также вылетает из функции, как будто мы не можем прочитать БД, что-то серьезно не так.
Каков наилучший способ структурировать это? А если - пусть пирамиду? Я разделил это на три функции, чтобы попытаться выделить функциональность для удобства чтения. Возможно, я должен передать путь db и db как свойства класса? Я не уверен ...