没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
swift-tips-master.zip (60个子文件)
swift-tips-master
LICENSE 1KB
README.md 66KB
SwiftTips.playground
Pages
40 - Lightweight data-binding for an MVVM implementation.xcplaygroundpage
Contents.swift 1KB
02 - Generating all cases for an Enum.xcplaygroundpage
Contents.swift 928B
49 - Using `Never` to represent impossible code paths.xcplaygroundpage
Contents.swift 955B
32 - Performing animations sequentially.xcplaygroundpage
Contents.swift 2KB
10 - Observing new and old value with RxSwift.xcplaygroundpage
Contents.swift 625B
20 - Running two pieces of code in parallel.xcplaygroundpage
Contents.swift 809B
39 - Using `typealias` to its fullest.xcplaygroundpage
Contents.swift 639B
07 - Implementing the builder pattern with keypaths.xcplaygroundpage
Contents.swift 1019B
25 - Defining a function to map over dictionaries.xcplaygroundpage
Contents.swift 818B
17 - Safely subscripting a Collection.xcplaygroundpage
Contents.swift 656B
54 - Composing `NSAttributedString` through a Function Builder.xcplaygroundpage
Contents.swift 1KB
05 - Defining operators on function types.xcplaygroundpage
Contents.swift 546B
53 - Using `switch` and `if` as expressions.xcplaygroundpage
Contents.swift 1KB
48 - Providing a default value to a `Decodable` `enum`.xcplaygroundpage
Contents.swift 1KB
16 - Easier String slicing using ranges.xcplaygroundpage
Contents.swift 1KB
28 - Shorter syntax to deal with optional strings.xcplaygroundpage
Contents.swift 949B
30 - Providing useful operators for Optional booleans.xcplaygroundpage
Contents.swift 1KB
57 - Property Wrappers as Debugging Tools.xcplaygroundpage
Contents.swift 1KB
12 - Easily generating arrays of data.xcplaygroundpage
Contents.swift 249B
37 - Optimizing the use of `reduce()`.xcplaygroundpage
Contents.swift 1KB
04 - Typealiases for functions.xcplaygroundpage
Contents.swift 631B
09 - Implicit initialization from literal values.xcplaygroundpage
Contents.swift 560B
29 - Removing duplicate values from a Sequence.xcplaygroundpage
Contents.swift 752B
44 - Solving callback hell with function composition.xcplaygroundpage
Contents.swift 2KB
45 - Getting rid of overabundant `[weak self]` and `guard`.xcplaygroundpage
Contents.swift 2KB
38 - Writing an interruptible overload of `forEach`.xcplaygroundpage
Contents.swift 1012B
42 - Using KeyPaths instead of closures.xcplaygroundpage
Contents.swift 973B
22 - Using parallelism to speed-up map().xcplaygroundpage
Contents.swift 1KB
52 - Avoiding double negatives within `guard` statements.xcplaygroundpage
Contents.swift 876B
11 - Using @autoclosure for cleaner call sites.xcplaygroundpage
Contents.swift 513B
35 - Defining a union type.xcplaygroundpage
Contents.swift 898B
43 - Transform an asynchronous function into a synchronous one.xcplaygroundpage
Contents.swift 1KB
46 - Lightweight dependency injection through protocol-oriented programming.xcplaygroundpage
Contents.swift 2KB
47 - Another lightweight dependency injection through default values for function parameters.xcplaygroundpage
Contents.swift 1KB
26 - Retrieving all the necessary data to build a debug view.xcplaygroundpage
Contents.swift 1KB
27 - Encapsulating background computation and UI update.xcplaygroundpage
Contents.swift 942B
36 - Avoiding hardcoded reuse identifiers.xcplaygroundpage
Contents.swift 1KB
34 - Asserting that classes have associated NIBs and vice-versa.xcplaygroundpage
Contents.swift 2KB
51 - Defining a custom `init` without loosing the compiler-generated one.xcplaygroundpage
Contents.swift 785B
19 - Making good use of #file, #line and #function.xcplaygroundpage
Contents.swift 589B
14 - Manufacturing cache-efficient versions of pure functions.xcplaygroundpage
Contents.swift 776B
41 - Bringing some type-safety to a userInfo Dictionary.xcplaygroundpage
Contents.swift 1KB
33 - Small footprint type-erasing with functions.xcplaygroundpage
Contents.swift 1KB
24 - A shorter syntax to remove nil values.xcplaygroundpage
Contents.swift 952B
21 - Measuring execution time with minimum boilerplate.xcplaygroundpage
Contents.swift 707B
56 - Localization through `String` interpolation.xcplaygroundpage
Contents.swift 795B
23 - Dealing with expirable values.xcplaygroundpage
Contents.swift 1KB
55 - Implementing pseudo-inheritance between `structs`.xcplaygroundpage
Contents.swift 995B
18 - Comparing Optionals through Conditional Conformance.xcplaygroundpage
Contents.swift 1008B
13 - Simplifying complex conditions with pattern matching.xcplaygroundpage
Contents.swift 619B
06 - Storing functions rather than values.xcplaygroundpage
Contents.swift 800B
08 - Achieving systematic validation of data.xcplaygroundpage
Contents.swift 1KB
01 - Using map on optional values.xcplaygroundpage
Contents.swift 688B
15 - Concise syntax for sorting using a KeyPath.xcplaygroundpage
Contents.swift 518B
31 - Debouncing a function call.xcplaygroundpage
Contents.swift 1KB
50 - Implementing a namespace through an empty `enum`.xcplaygroundpage
Contents.swift 2KB
03 - Encapsulating state within a function.xcplaygroundpage
Contents.swift 400B
contents.xcplayground 4KB
共 60 条
- 1
资源评论
蓝精神
- 粉丝: 26
- 资源: 4721
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功