怎样评价语言知乎.docxVIP

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
如何评价 Swift 语言?修改今天苹果推出了全新的基于脚本的编程语言 Swift。Swift 有类似 Python 的易用性,又有较强的运行效率。它弥补了 Objective-C 的哪些不足?融合了哪些其他语言的优秀特性?将它和 C# 相比,各有什么优劣?它会对未来的软件开发产生什么影响?作为一个程序员,此刻,一个对世界消费者和消费平台都有着广泛影响力的公司,推出了一个全新的语言,所有人都是0基础,你有什么想法?/people/keakon孙竟,专控萝莉 20 年/people/maxpassionMaxPassion、/people/mister.zMister.Z、/people/liu-bo-81-75 \o 刘博刘博?javascript:;等人赞同本想看完文档再写的,不过看到排名靠前的答案有些偏激(你们不就是想找个理由不学嘛),还是先写些看法吧。首先,它不是一门玩具语言。去看看它的文档就明白了,feature 非常丰富(我敢保证你们在半天内是看不完的)。再看它的库,Apple 把 Cocoa 的 API 都用 Swift 写了个封装,而不是完全一致的。下面是文档里的例子:Objective-C:UITableView *myTableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStyleGrouped];Swift:let myTableView: UITableView = UITableView(frame: CGRectZero, style: .Grouped)所有参数都重写了有没有?如果不是想取代 Objective-C,干嘛还去重写,你直接用那冗长的参数不就完了?不过现阶段底层仍然调用的是 Objective-C 的 API,而不是直接用 Swift。其次,一些被指出的缺点其实并不存在,或者并不严重:数据结构少?还有原生的 tuple 和 enumeration 没提到,此外还能用 Objective-C 的 NSSet,至少总量上比 Objective-C 多了几种。没有多线程?可以用 GCD 的 API,也被移植到 Swift 了。没有私有属性?很多语言都没有,都靠使用者自觉。只能与 Objective-C 互动?C 也是可以的。没有异常处理?Objective-C 里基本也不用。补充一个缺点:不支持复杂的宏,只支持 #define。很显然,这些缺点对很多开发者 / 团队来说不算大问题。此外,对于想转行做 iOS 或 OS X 的开发者来说,Swift 是个很好的 Objective-C 替代者。这里没空一一列举 Swift 的优点了,文档里可以找出很多。简单来说,Objective-C 只会更坑。苹果也说 Swift 是「A complete replacement for both the C and Objective-C languages.」甚至你用 XCode 6 新建一个项目,在选择语言时,Swift 也排在 Objective-C 上面。最后,如果不是做 iOS 或 OS X 开发,Swift 算不上一门很好的语言。/questionanswer\t _blank2014-06-05?/question/2400298459 条评论?????/people/yue-wang-21yue wang,要永遠跟智商高比自己的人來討論問題/people/durti-ma \o durti madurti ma、/people/mullerchiu \o 邱超凡邱超凡、/people/hu-shi-wei \o 胡时伟胡时伟?javascript:;等人赞同我刪了原先有爭議的答案,重寫一下,之前列的每一點都在,只是論據上做了很多更新。不過 基本觀點和原判斷一致--這就是個玩具語言,降低 Apple 平台開發門檻用的(否則要 Playground 幹嘛?),以至於 Apple 自己都不用。寫幾百幾千行的程序可以,數萬數十萬的項目就心有餘力不足了。 等 Apple 自己項目採用了,我再有可能改掉這判斷其實這語言還有很多不足,但限於篇幅我還是列原帖中就提到的幾點- swift 和 c/c++ 對接很麻煩,得通過 objc (尤其是 C++ )這極大限制了它的使用。 很多公司的代碼, C++比重很大,因為要跨平台或是有各種公司內部底層項目的依賴。swift 在這點上相當糟糕。ObjC 精明很多。- 所有變量都 public , 沒有隠藏機制,不適合大型項目開發(很多人說無所謂,可以通過規範約束,這分明是沒多少大項目經驗的人說出來的話--我想問靠自覺好還是讓編譯器和 I

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档