Ты участвуешь в раунде code review в качестве senior iOS разработчика в интервью в компании, специализирующейся на социальных сетях. Интервьюер показывает тебе следующий SceneDelegate.swift из приложения, которое мигрирует с iOS 12 на iOS 16, и просит тебя критически оценить его:
class SceneDelegate: UIResponder, UIWindowSceneDelegate {
var window: UIWindow?
func scene(_ scene: UIScene, willConnectTo session: UISceneSession,
options connectionOptions: UIScene.ConnectionOptions) {
guard let _ = (scene as? UIWindowScene) else { return }
}
}
// AppDelegate.swift
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func application(_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
window = UIWindow(frame: UIScreen.main.bounds)
window?.rootViewController = MainViewController()
window?.makeKeyAndVisible()
return true
}
func applicationDidEnterBackground(_ application: UIApplication) {
UserDefaults.standard.synchronize()
}
func applicationWillTerminate(_ application: UIApplication) {
saveAllUserData()
}
}