Подробный код 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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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