Computed property - Computed properties are part of a property type in Swift.
Stored properties are the most common which save and return a stored value
Computed properties calculate (rather than store) a value. A computed property provides a getter and an optional setter to indirectly access other properties and values.
Computed property in swift is an interesting topic as you can write code inside a property in swift. Computed properties are provided by classes, structures, and enumerations but stored properties are provided only by classes and structures.
This computed property swift tutorial has some tips on how to use the computed property in the right way and avoid the common mistakes that swift programming beginners do while computed property.
Example :- Computed property A Calculate Simple Intrest
struct CalculateLoan {
var amount: Int
var rate: Int
var years: Int
var simpleInterest: Int {
get {
return (amount * rate * years)/100
}
}
}
let calculateValue = CalculateLoan(amount: 20000, rate: 14, years: 20)
print(calculateValue.simpleInterest)
class Bank {
//Property Observer
var accountBlance: Double {
// After a new value is set to your property if you want to run some code then you can use didSet
didSet{
alertToUpdateAccount()
}
// Execute before set new value assigned to the property
willSet(newValue){
if newValue >= 100000{
print("Please check this account is authentic first")
}
}
}
init(_opningBalance: Double){
accountBlance = _opningBalance
}
func addMoney(amount: Double){
accountBlance += amount
}
func withdrowMoney(amount: Double){
accountBlance -= amount
}
func alertToUpdateAccount(){
print("Account balance is updated => \(accountBlance)")
}
}
let bank = Bank(_opningBalance: 10000)
bank.addMoney(amount: 1000000)
print(bank.accountBlance)
Great blog!
ReplyDeleteThank you for sharing your experience and expertise with us!
Connect with us - if you're looking to hire Flutter app developers, we have highly skilled developers expertise in Flutter's versatile framework.
best
DeleteYour blog highlights the vibrant world of iOS development, showcasing the expertise and services offered by iOS developers. The focus on iPhone and iPad app development services is particularly appealing, given the expanding user base on these devices.
ReplyDeleteRight
Delete