Skip to content

Commit

Permalink
Merge branch 'master' into huangchengzhi/issue_2915
Browse files Browse the repository at this point in the history
  • Loading branch information
ParsifalC authored Aug 1, 2021
2 parents 64d52fc + 663c1e8 commit f7c46c5
Show file tree
Hide file tree
Showing 3 changed files with 73 additions and 1 deletion.
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -120,8 +120,13 @@
<a href='https://github.com/iostalks'>
<img src='https://github.com/SwiftOldDriver/iOS-Weekly/blob/master/assets/author/iostalks.png?raw=true'>
</a>

<a href='https://github.com/ChengzhiHuang'>
<img src='https://github.com/SwiftOldDriver/iOS-Weekly/blob/master/assets/author/ChengzhiHuang.jpeg?raw=true'>

<a href='https://github.com/BarneyZhaoooo'>
<img src='https://github.com/SwiftOldDriver/iOS-Weekly/blob/master/assets/author/barney.png?raw=true'>

</a>
</div>

Expand Down
69 changes: 68 additions & 1 deletion Reports/2021/#169-2021.08.02.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# 老司机 iOS 周报 #1 | 2021-03-25
# 老司机 iOS 周报 #169 | 2021-08-02

![ios-weekly](https://github.com/SwiftOldDriver/iOS-Weekly/blob/master/assets/ios-weekly.png?raw=true)
老司机 iOS 周报,只为你呈现有价值的信息
Expand Down Expand Up @@ -55,6 +55,73 @@

[@Leo](https://github.com/leomobiledeveloper):我们可以通过 -Oz 的编译选项来优化包体积,但是在某些极端情况下 -Oz 会导致编译器的某些优化失效,引起一些非预期的问题。本文就是就是关于一个开启了 -Oz 导致 autorelease 优化失效,对象误被放入 autoreleasepool 中,进而引起大量内存堆积的问题。文章干货颇多,推荐阅读。

### 🐕 [美团 App 页面视图可测性改造实践](https://mp.weixin.qq.com/s/YcvFSs-97SpMKjlpj9Dzqg)

[@含笑饮砒霜](https://weibo.com/chinafishnews/):本文围绕动态化容器中的动态布局技术,阐述了如何通过可测性改造来帮助达成提升测试效率的目标。本文目录:

* 美团App的页面特点

* 自动化测试实施中的技术挑战
* 页面元素无法定位
* Appium元素定位的原理
* AccessibilityNodeInfo和Drawable

* 页面视图可测性改造-XraySDK
* 定位方案对比
* 视图信息的获取和存储-XrayDumper
* 视图信息的输出-XrayServer
* SDK整体功能结构
* 视图信息的增强
* 动态布局自动化的收益

* 未来展望
* 使用视图解析原理解决WebView元素定位
* 视图可测性改造更多的应用场景


### 🌟 🐢 [我写技术文章的一点心得](https://ming1016.github.io/2021/07/24/my-little-idea-about-writing-technical-article/)

[@Barney](https://github.com/BarnyZhao):本文是戴铭老师对自己过往写作经验的深度总结,从四个写作要点开篇,分析了自己过往的经典文章以及当时的想法和灵感。紧接着结合本次 WWDC 举例,传授新手如何开始写作的经验。可谓是干货满满,适合反复阅读。
关键点脉络:
- 四个点
- 过往经验
- 我是新手怎门办法
- WWDC 和 经验总结
### 🐕 [面试中 LRU / LFU 的青铜与王者](https://github.com/halfrost/Halfrost-Field/blob/master/contents/Go/LRU:LFU_interview.md)

[@J_Knight_](https://github.com/knightsj):本文作者介绍了 LRU 和 LFU 算法的原理和 Go 语言的实现。也分享了 LRU 和 LFU 的优化方案和“如何实现一个高并发且线程安全的 LRU” 这个问题的实现思路。


### 🐕 [基于 Swift 编写严肃脚本工具](https://github.com/100mango/zen/blob/master/%E5%9F%BA%E4%BA%8E%20Swift%20%E7%BC%96%E5%86%99%E4%B8%A5%E8%82%83%E8%84%9A%E6%9C%AC%E5%B7%A5%E5%85%B7/%E5%9F%BA%E4%BA%8E%20Swift%20%E7%BC%96%E5%86%99%E4%B8%A5%E8%82%83%E8%84%9A%E6%9C%AC%E5%B7%A5%E5%85%B7.md)

[@EyreFree](https://github.com/EyreFree):本文作者是目前就职于微信的 100mango 老师,开篇通过分析 Swift 在国内外的使用现状以及在微信的一些应用场景表现了 Swift 的光明前途,并且借由「微信支付跨平台代码生成器是由 Swift 编写的」这一事例引出了文章主题:如何通过 Swift 来编写脚本 / 自动化工具。主要分为以下四步:

- 创建工程:通过 Swift Package Manger 创建了工程,并调整了工程结构,依赖管理;
- 编写代码:通过编写一个简单生成随机数的工具感受 Swift 编写脚本工具,并给我们的工程引入了苹果开源的 Argument Parser 库用于简化命令行参数解析,优化工具说明;
- 测试:分别对逻辑代码和命令行 API 进行了测试;
- 发布:通过一行简单的代码,就能生成可执行文件进行分发;
- 进阶操作:最后介绍了几个进阶操作,我们还发现通过 Swift 编写脚本工具,还能直接和 AppKit / SwiftUI 进行交互,非常的具备扩展性

这篇文章并没有展示特别复杂的代码,但是根据上面展示的步骤原则,就能编写出能够支撑像微信支付跨平台代码生成器这样的命令行工具Swift 是一门优雅的编程语言,以后大家不管是遇到编写一些小脚本还是开发大型严肃工具的场景,都可以尝试用 Swift 实现了呢!


### 🐕 [从 WebKit 源码中学习手势处理的高级用法——WKWebView中的手势识别](https://mp.weixin.qq.com/s/pt1nk5z5nK-fPCKqQlP-sg)

[@折腾范儿_唯敬](https://www.weibo.com/agvicking/home?wvr=5):本文的作者从对iOS事件响应与手势的基础原理入手,深挖到 WebKit 源码中对于手势的处理策略,针对 Web 界面中更复杂更多样的手势处理进行分析与总结,非常有助于我们加深对iOS手势的深入理解与运用

### 🐎 [Xcode 13 Missing Info.plist](https://useyourloaf.com/blog/xcode-13-missing-info.plist/)

[@AidenRao](https://weibo.com/AidenRao):文中主要介绍了2点:

1Xcode 13 新起的 SwiftUI 项目,Info.plist 文件已经不存在,文中介绍了如何找回 Info.plist

2Xcode 13 新建的项目无法用 Xcode 12 打开,文中介绍了如何更改设置来向前兼容 Xcode 12

> 感谢 [faimin](https://github.com/faimin) 的推荐

## 摸鱼周报

[@摸鱼周报 #20](https://mp.weixin.qq.com/s/PjiZzx3VSAfAGHRJs160aQ):第二十期摸鱼周报来了,一起来看下本期概要:
Expand Down
Binary file added assets/author/barney.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit f7c46c5

Please sign in to comment.