Junior — Middle
Milyen tervezési mintákat alkalmaz a gyakorlatodban?
sobes.tech MI
Válasz az MI-től
Az iOS fejlesztés gyakorlatában gyakran alkalmazott tervezési minták a következők:
- MVC (Model-View-Controller) — az adatok, felület és vezérlő logika szétválasztása.
- MVVM (Model-View-ViewModel) — a nézet és az üzleti logika szétválasztása a ViewModel segítségével, gyakran adatkapcsolással együtt.
- Singleton — egy osztály egyetlen példányának létrehozása, például beállítások vagy munkamenet kezelő.
- Delegate — események átadása objektumok között, széles körben használják UIKit-ben.
- Observer (NotificationCenter, KVO) — a státuszmódosításokra való reagálás.
- Factory — objektumok létrehozása konkrét osztályok megadása nélkül.
Delegate használatának példája:
protocol DataReceiverDelegate: AnyObject {
func didReceiveData(_ data: String)
}
class DataProvider {
weak var delegate: DataReceiverDelegate?
func fetchData() {
// Adatok lekérése
let data = "Példa adat"
delegate?.didReceiveData(data)
}
}
class ViewController: UIViewController, DataReceiverDelegate {
let provider = DataProvider()
override func viewDidLoad() {
super.viewDidLoad()
provider.delegate = self
provider.fetchData()
}
func didReceiveData(_ data: String) {
print("Kapott adatok: \(data)")
}
}