|
1 | 1 | # 老司机 iOS 周报 #268 | 2023-11-20 |
2 | 2 |
|
3 | | - |
| 3 | + |
4 | 4 | 老司机 iOS 周报,只为你呈现有价值的信息。 |
5 | 5 |
|
6 | 6 | 你也可以为这个项目出一份力,如果发现有价值的信息、文章、工具等可以到 [Issues](https://github.com/SwiftOldDriver/iOS-Weekly/issues) 里提给我们,我们会尽快处理。记得写上推荐的理由哦。有建议和意见也欢迎到 [Issues](https://github.com/SwiftOldDriver/iOS-Weekly/issues) 提出。 |
7 | 7 |
|
8 | | -## 新闻 |
9 | | - |
10 | | -> 行业相关的新闻、趣事、看法 |
11 | | -
|
12 | | -## Developer - 设计开发加速器 |
13 | | - |
14 | | -> 设计开发加速器相关活动 |
15 | | -
|
16 | 8 | ## 新手推荐 |
17 | 9 |
|
18 | 10 | ### [Generating Random Numbers Elegantly in Swift ](https://www.swiftjectivec.com/swift-randomnumbergenerator/) |
|
30 | 22 | [@AidenRao](https://weibo.com/AidenRao): 这篇文章介绍了 Airbab 在 iOS 应用中采用 SwiftUI 替代原有的 UI 框架 Epoxy 的实践。 也解释了为什么他们决定在 Airbab 中使用 SwiftUI,并详细介绍了如何将 SwiftUI 集成到 Airbab 的界面设计中。一个很好的实践,可以作为大家引入 SwiftUI 的参考。 |
31 | 23 |
|
32 | 24 | ### 🐕 [The complete guide to iOS & macOS development in Neovim](https://wojciechkulik.pl/ios/the-complete-guide-to-ios-macos-development-in-neovim) |
| 25 | + |
33 | 26 | [@Smallfly](https://github.com/iostalks):使用 Xcode 开发大型项目的体验一言难尽,这篇文章手把手教你如何在 Neovim 搭建 iOS&macOS 开发环境。支持的功能主要有: |
34 | 27 | - 代码补全(Code Completion) |
35 | 28 | - 代码检查与格式化(Linting & Formatting) |
|
44 | 37 |
|
45 | 38 | 这篇文章用一个简单的例子介绍了 swift-testing 的接入和用法,可以看到跟 XCTest 对比提供了更简洁的语法,更好的 async 支持以及更加清晰的诊断信息。 |
46 | 39 |
|
47 | | -### [百度APP iOS端包体积50M优化实践(七)编译器优化](https://mp.weixin.qq.com/s/fmiccOgRx9_wopX9QmZiEA) |
| 40 | +### [百度 APP iOS 端包体积 50M 优化实践(七)编译器优化](https://mp.weixin.qq.com/s/fmiccOgRx9_wopX9QmZiEA) |
48 | 41 |
|
49 | 42 | [@JonyFang](https://github.com/JonyFang): 本文介绍了百度 APP iOS 端包体积优化的编译器优化方案。涉及到的点有:GCC 语言编译优化、Swift 编译优化、LTO 优化、剥离调试符号、剥离符号表、剔除未引用代码、Asset 优化、C++ 虚函数优化、三方 SDK 编译器方向瘦身、指令集架构优化、Xcode 升级优化、Swift 内置动态库优化等。 |
50 | 43 |
|
51 | | -### 🐕 [Debugging SwiftUI views: what caused that change?](https://www.avanderlee.com/swiftui/debugging-swiftui-views/) |
52 | | - |
53 | | -[@Barney](~https://github.com/BarneyZhaoooo~):本文介绍了调试 SwiftUI 的关键技巧。使用 Self._printChanges 或 Self._logChanges 静态方法可以帮助我们找到引起重绘的根本原因。将视图单一化简单化往往是排查复杂问题的关键,文章分下面五个步骤娓娓道来。 |
54 | | - |
55 | | -- **What is a dynamic SwiftUI View?** |
56 | | -- **The problem of a Massive SwiftUI View** |
57 | | -- **Using LLDB to debug a change** |
58 | | -- **Solving redraw issues in SwiftUI** |
59 | | -- **Debugging changes using code** |
60 | | - |
61 | | - |
62 | | -### 🐎 [Custom Traits and SwiftUI](https://useyourloaf.com/blog/custom-traits-and-swiftui/) |
63 | | - |
64 | | -[@Damien](https://zengyima.github.com/):本文主要讲述了在 iOS 17 中,开发者可以添加自定义 Traits 到 UIKit Traits 环境中,并与 SwiftUI 环境进行互操作。在 iOS 17 中,Traits 的处理方式发生了重大变化,Traits 现在可以从 UIScreen、UIWindowScene、UIViewController、UIView 等流向任何子视图控制器。此外,还介绍了如何创建一个自定义 Traits,并给出了一个实际的例子。 |
65 | | - |
66 | 44 | ## 工具 |
67 | 45 |
|
68 | | -> 开发过程中常用的工具,及一些新工具的介绍 |
69 | | -
|
70 | 46 | ### [SwiftBar](https://github.com/swiftbar/SwiftBar) |
71 | 47 |
|
72 | 48 | [@xuyafei86](https://github.com/xiaofei86):SwiftBar 是一款使用 Swift 编写,用来在 MacOS 菜单栏上展示自定义功能的开源工具。可以使用 Homebrew 安装,只需编写一个 Shell 脚本并将其添加到 SwiftBar 即可使用。你还可以从其插件仓库安装别人编写的脚本,比如展示 CPU 和内存占用、处理文本等。 |
73 | 49 |
|
74 | | -### [MachOView](https://github.com/gdbinit/MachOView) |
75 | | -Mach-O 相信很多同学或多或少已经接触过或者有所了解,它是 Mach Object 文件格式的缩写,是 mac 以及 iOS 上的可执行文件。MachOView 这个工具可以快速查看 Math-O 格式的文件,简单易用,对于经常需要分析静态库等文件的同学可以下载使用。 |
76 | | - |
77 | | -## 代码 |
78 | | - |
79 | | -> 库,代码段,开源app |
80 | | -
|
81 | 50 | ## 设计 |
82 | 51 |
|
83 | 52 | ### 🐎 [Ensure Visual Accessibility: Glyphs, Icons and Shapes](https://www.createwithswift.com/ensure-visual-accessibility-glyphs-icons-and-symbols/) |
84 | 53 |
|
85 | 54 | [@水水](https://www.xuyanlan.com/):了解如何正确使用应用程序 UI 上的视觉元素,同时保持其可访问性,包括字形、图标和形状,这些是传达信息、指导我们行动和塑造我们感知的基础。在苹果生态系统中鼓励正确的使用象形文字以及其组合来设计你的视觉元素,需要保证其具有清晰、一致性并且支持辅助功能标签。这篇文章还给了很多相关设计上的具体建议,感兴趣的可以参考。 |
86 | 55 |
|
87 | | - |
88 | | -## 书 |
89 | | - |
90 | | -> 比较不错的书的推荐和书评 |
91 | | -
|
92 | 56 | ## 音视频 |
93 | 57 |
|
94 | | -> 比较不错的书的推荐和书评 |
95 | 58 | ### 🐢 [SwiftUI + Metal – Create special effects by building your own shaders](https://www.youtube.com/watch?v=EgzWwgRpUuw) |
96 | 59 |
|
97 | 60 | [@Cooper Chen](https://github.com/cjlcooper):视频介绍了基于 SwiftUI + Metal 的形式,通过构建自己的着色器来创建特殊效果,包括如何重新着色、如很实现动画渐变、如很进行形状转换等内容,对于从 c++ 过渡到 SwiftUI 开发 Metal 相关内容的开发者有着很好的参考价值。 |
|
0 commit comments