下面的代码(或三者中没有一个)被视为最佳实践,案例1,2或3?
让我们假装您正在创建一个小费计算器,并且您的计算将基于两个textFields
的值,您将如何管理您的计算,直接从textFields
访问值需要或将值赋给变量并在整个程序中使用变量?
案例1 将textField中的值分配给变量,并在整个程序中使用变量。
class ViewController{
var price:Double = 0
var percentage:Double = 0
func validateInputData(){
if priceField.text != ""{
price = Double(priceField.text!)!
}
if percentageField.text != ""{
percentage = Double(percentageField.text!)!
}
}
func calculate(){
validateInputData()
var tip = price * percentage / 100
print("Tip amount: \(tip)")
}
}
案例2 根据需要直接从textFields访问值。
class ViewController{
func validateInputData(){
if priceField.text == ""{
priceField.text = "0"
}
if percentageField.text == ""{
percentageField.text = "0"
}
}
func calculate(){
validateInputData()
var tip = Double(priceField.text!)! * Double(percentageField.text!)! / 100
print("Tip amount: \(tip)")
}
}
OR可能是案例3
案例3 每次字段更改时,都会将textField中的值分配给变量,并在整个程序中使用变量。
class ViewController{
var price:Double = 0
var percentage:Double = 0
@IBAction func OnEditingChanged(sender: AnyObject){
if sender == priceField && priceField.text != ""{
price = Double(priceField.text!)!
}
if sender == percentageField && percentageField.text != ""{
percentage = Double(percentageFieldField.text!)!
}
}
func calculate(){
var tip = price * percentage / 100
print("Tip amount: \(tip)")
}
}
我知道这是一个非常简单的例子,但是假设应用程序会增长,并且会比计算提示数量更多。