Подробный код Swift, нужен совет по упрощению и улучшению.IOS

Программируем под IOS
Anonymous
Подробный код Swift, нужен совет по упрощению и улучшению.

Сообщение Anonymous »

Сейчас я работаю над книгой Пола Хадсона «100 дней SwiftUI».
На 19-й день возникла задача создать приложение для преобразования единиц измерения.
Я кое-что собрал, и это работает, но его почти наверняка можно улучшить, и во имя обучения мне бы хотелось знать, как это сделать. Любая помощь будет принята с благодарностью.
let units = ["Celsius", "Fahrenheit", "Kelvin"]
@State private var fromUnit = "Celsius"
@State private var toUnit = "Fahrenheit"
@State private var inputValue = 0.0
@FocusState private var entryIsFocused: Bool

var resultValue: String {

var endUnit: String {
var resultUnits = String()
if toUnit == "Fahrenheit" {
resultUnits = "°F"
} else if toUnit == "Kelvin" {
resultUnits = " K"
} else {
resultUnits = "°C"
}
return resultUnits
}

var convertingTo = Double()

if fromUnit == toUnit {
convertingTo = inputValue
} else {
var convertingFrom = Double()
if fromUnit == "Fahrenheit" {
convertingFrom = ( inputValue - 32 ) / 1.8
} else if fromUnit == "Kelvin" {
convertingFrom = inputValue - 273.15
} else {
convertingFrom = inputValue
}
// The conversion
if toUnit == "Fahrenheit" {
convertingTo = convertingFrom * 1.8 + 32
} else if toUnit == "Kelvin" {
convertingTo = convertingFrom + 273.15
} else {
convertingTo = convertingFrom
}
}
let result = String(format: "%.1f\(endUnit)", convertingTo)
return result
}


Подробнее здесь: https://stackoverflow.com/questions/798 ... -improving

Вернуться в «IOS»