【发布时间】:2015-07-12 06:14:36
【问题描述】:
这是 Alamofire/Manager.swift 中的代码块:
- 它位于名为“public class Manager”的类中
public static let sharedInstance: Manager = {
let configuration: NSURLSessionConfiguration = NSURLSessionConfiguration.defaultSessionConfiguration()
configuration.HTTPAdditionalHeaders = Manager.defaultHTTPHeaders
return Manager(configuration: configuration)
}()
显然,这是“让某物等于闭包”,但我不明白行尾的“()”是什么意思?
推迟代码的执行?如何? (在我看来,执行不会因为它有“()”而被推迟?我想知道为什么这不会导致内存圈的存在?它返回 Manger 本身,返回的新实例也将做同样的事情,返回一个新的自我......
为什么不用一个关键词“懒惰”?
我有一种奇怪的感觉,我在其他地方也出现过这种用法。我现在正在学习 Swift 60 天。我是快还是慢?如何也成为 iOS 开发者?(我的意思是如何成为真正的开发者,而不是注册程序)
现在我有点困惑并阅读了我能得到的所有源代码。有时我觉得官方文档和 Xcode 很烂,我不知道如何从头开始阅读源代码。有什么提示和建议吗?
【问题讨论】:
-
Re:学习 iOS 开发 - 斯坦福大学有免费(和高质量)视频课程供您学习 Swift 和 Objective C
-
@IslamQ。我已经上过#Stanford 的课程,我觉得它相对来说太简单了。另一方面,我遇到了无数的问题(我学习 python 时没有问题),包括如何为应用程序设计图标,以及为太吧项目。 & 自定义视图和动画。 2 如何阅读 Xcode 6.3 中不存在的旧 API 的官方指南。只是无奈。
-
那你有没有去raywenderlich.com和其他教程网站学习不同的技巧?另外,我发现真正有用的是实际创建一个应用程序...您将在旅途中了解与您的需求相关的任何内容...
-
@IslamQ。谢谢你的建议。我会试试的。只是发现我可能还需要第二个显示器......开发一个应用程序。