阿里云服务器免费领卷啦。

捡代码论坛-最全的游戏源码下载技术网站!

 找回密码
 立 即 注 册

QQ登录

只需一步,快速开始

搜索
关于源码区的附件失效或欺骗帖, 处理办法
查看: 2128|回复: 0

Swift 3 SE-0006 在标准库中应用API设计指南 Swift 3 教程

[复制链接]

4208

主题

210

回帖

12万

积分

管理员

管理员

Rank: 9Rank: 9Rank: 9

积分
126213
QQ
发表于 2016-6-22 14:54:56 | 显示全部楼层 |阅读模式
Swift 3 SE-0006 在标准库中应用API设计指南  Swift 3 教程

第一部分 提交review前必读
做为下面三份文档的一部分,它们的内容是彼此关联的:
这三份文档的内容是相互关联的(例如:标准库中一个API的调整和某个API guideline是对应的,或根据某条设计指南制定的Clang importer规则,等等)。正因为存在这些内容交叉,为了保证讨论是可维护的,我们希望你:
  • 在提交review之前,对以上三份文档中的全部内容,有一个基本的了解
  • 在提交以上三个文档的review时,请参照每个文档的review声明。在你提交review时,如果文档间交叉引用有助于帮你阐述观点,你应该包含它们(这也是被提倡的做法)。
第二部分 简介
API设计指南作为Swift 3开发工作的一部分,让标准库做为这份指南的实现典范是很重要的。在各种类型的App中,标准库中的API都是最常使用的Swift API,并且,标准库也为其它的程序库提供了实现基础。
在这份提议中,我们回顾了整个标准库,并且让它的设计遵循API设计指南中的要求。
第三部分 提议的解决方案
实际的代码修改在Swift repositoryswift-3-api-guidelines分支。总体来说,这些变化可以归结于以下几个方面:
  • 在protocol名称中,去掉了Type后缀。在一些特殊情况下,为了避免和一些基本类型名称混淆,我们需要添加Protocol后缀(尽管这些类型我们期望在Swift 3中被废除);
  • 在所有的API中,和generator相关的概念,都被重命名成了iterator;
  • 删除了仅用于CollectionOfOne的索引类型Bit。我们推荐使用Int;
  • 在“不安全的指针类型(unsafe pointer types)”中,泛型参数名从Memory改为了Pointee;
  • 删除了“不安全的指针类型”的默认初始化方法,我们推荐使用nil;
  • 删除了struct PermutationGenerator;
  • 删除了MutableSliceable protocol,你可以使用Collection where SubSequence : MutableCollection;
  • sort()重命名成了sorted(),sortInPlace()重命名成了sort();
  • reverse()重命名成了reversed();
  • enumerate()重命名成了enumerated();
  • 简化了partition() API;
  • SequenceType.minElement()重命名为了.min(),.maxElement()重命名为了.max();
  • 删除了一些序列和集合配接器(Collection adapters)的初始化方法。我们建议你调用对应算法函数或方法;
  • 把一些函数变成了类方法或反之;
  • 把以null结尾的UTF-8数据变成String对象的工厂函数变成了String的一个初始化方法;
第四部分 API差异对比
原文地址:

https://github.com/Boxue/swift-api-design-guidelines/blob/master/SE-0006%20apply-api-guidelines-to-the-standard-library.md

捡代码论坛-最全的游戏源码下载技术网站! - 论坛版权郑重声明:
1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与捡代码论坛-最全的游戏源码下载技术网站!享有帖子相关版权
3、捡代码论坛版权,详细了解请点击。
4、本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。
5、若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。 我们不承担任何技术及版权问题,且不对任何资源负法律责任。
6、如无法链接失效或侵犯版权,请给我们来信:jiandaima@foxmail.com

回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | 立 即 注 册

本版积分规则

技术支持
在线咨询
QQ咨询
3351529868

QQ|手机版|小黑屋|捡代码论坛-专业源码分享下载 ( 陕ICP备15015195号-1|网站地图

GMT+8, 2024-5-7 06:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表