我有三个函数,每个函数都依赖于前一个。

let dbPath = createDBPath()
let db =  openDatabase(dbPath!)
readQuestionsFromDB(db!)

第一行创建数据库路径(如果没有,则会出现致命错误,因为如果我没有访问文件结构的权限,则无法继续执行)。
第二行使用路径打开数据库(在这里展开是可以的,好像我们没有路径,在任何情况下都会在此时崩溃)。
第三行从需要打开的数据库中读取测试问题,如果数据库有问题,它也会从函数内部崩溃,就像我们无法读取数据库一样,有严重问题。
什么是最好的结构?如果让金字塔?我把它分为三个函数,试图将功能分离出来以提高可读性。也许我应该将db和db路径作为类属性传递?我不确定…

最佳答案

我会这么做的

if let dbPath = createDBPath(),
   let db = openDatabase(dbPath) {
    readQuestionsFromDB(db)
}

关于swift - 功能取决于以前的Swift,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55805189/

10-12 02:46