Old Driver iOS Weekly #237 | 2023-03-20

Original link: https://github.com/SwiftOldDriver/iOS-Weekly/releases/tag/%23237

ios-weekly

The old driver’s iOS weekly report only presents valuable information for you.

You can also contribute to this project. If you find valuable information, articles, tools, etc., you can submit them to us in Issues , and we will deal with them as soon as possible. Remember to write down the reason for the recommendation. Suggestions and comments are also welcome to Issues .

article

? How to make an interactive picker for a Swift command-line tool

@Cooper Chen : Compared with Javascript and other languages, Swift has always insufficient libraries for handling user input. This article mainly introduces the author’s ideas and ideas on how to make an interactive selector tool for Swift command line tools inspired by the clack of Javascript tool Nate Moore. In addition, the author will continue to record the process of migrating this tool to provide a reference for students who intend to add more capabilities to the Swift command line.

? Taobao widget link solution summary

@Damien : Widget is a small component function launched by Apple. Its intention is to hope that App can display important content at a glance, so that users can quickly access your App to get more details. This article is from the Taobao technical team. -> Dynamic widget -> User-defined layout A complete set of ecological evolution process, and thinking at each stage.

Those things that hand-built HTML parsers

@红纸: ZMarkupParser is an HTML-to-NSAttributedString warehouse developed by the author. This article introduces its implementation process, including code parsing, grammar standardization, converting abstract trees, MarkupComponent conversion, parsing MarkupSyle, converting NSAttributedString, etc. The article provides detailed code implementation and example demonstration. For readers who are interested in HTML parser implementation, this article can be used as an introductory reference.

Recommended by: ZhgChgLi

? What’s new in Swift 5.8

@zoeGuo : The article briefly explains and introduces each proposal updated in Swift 5.8. The editor selected a few of the more interesting ones and made a brief summary:

  • SE-0373 Lift all limitations on variables in result builders: Lift all limitations on variables in result builders.
  • SE-0376 Function Back Deployment: A new @backDeployed attribute has been added to allow new apis to be used on older versions of the framework under certain conditions.
  • SE-0365 Allow implicit self for weak self captures, after self is unwrapped: weak self can be captured as implicitly called self in the case of unwrapped, then in this case we can delete self in the closure.
  • SE-0274 Concise magic file names: It seems that it only simplifies the file name, but in fact, the impact on the size of the binary file generated by the Swift compiler cannot be ignored. The author here recommends that you read the description of this change in Swift Evolution carefully.
  • SE-0375 Opening existential arguments to optional parameters: Swift 5.7 began to allow us to use protocols to call generic functions, but only non-optional input parameters were used. Optional input parameters were supported in Swift 5.8.

There are code examples and more detailed instructions in the article, and some other updates are mentioned. Interested readers can read the original article to learn more.

? All about Leak Sanitizer

@老峰: LeakSanitizer (LSan) is a memory leak detector that intercepts memory allocation functions and detects memory leaks when exiting by default. This article describes its usage: Standalone (-fsanitize=leak), AddressSanitizer (-fsanitize=address), AddressSanitizer (-fsanitize=address), overview of implementation principles, runtime options, false negatives, STW and other similar tools.

? Netease cloud music open source full link buried point solution – dawn buried point (dawn)

@JonyFang : Sugon Buried Points is a set of full-link buried point solutions, from point point design, to three-terminal client (iOS, Android, H5) development, point verification & inspection, and point data usage, At present, it has been widely used in various major APPs of cloud music. It integrates the characteristics of automatic tracking and full link tracking, solves the pain points of traditional tracking, and takes into account the development efficiency and the high-precision characteristics of tracking data. Fortunately, it is open source, and interested developers can analyze the implementation details through the source code.

? iOS cloud music APM performance monitoring practice

@Barney : This article introduces the actual combat experience of Cloud Music iOS APM in detail, showing more details and thinking.

  • stack aggregation
  • monitor
  • High CPU consumption
  • Jank Caton
  • ANR stuck
  • memory exception

? Those things about the price of the App Store Apple Store (the most complete version in history)

@ ChengzhiHuang : The content of this article is detailed. It explains Apple’s pricing strategy through three aspects: the history of App Store prices, App localization prices and purchase restrictions, the impact of App Store price adjustments, and countermeasures. It is highly recommended to read.

Moyu Weekly

@探鱼周报#87 : The 87th issue of Moyu Weekly, let’s take a look at the summary of this issue:

  • Topic of this issue: App Store’s pricing mechanism upgrade and expansion; the stories of four female developers and the App Store
  • Content recommendation: recommend some recent excellent blog posts, covering structured concurrency, developer stories, development experience sharing, Swift Builtin functions, etc.
  • Touch the fish: Planning for AGI; GPT4 release; stable-diffusion-webui try; an Alfred plug-in AJTools; Apple’s new pricing interpretation

Introduce

Restarted to update the “iOS Reliable Internal Recommendation Topic”, and sorted out the positions that have been clearly recruited recently for your reference

For specific information, please go to: https://www.yuque.com/ioalliance/article/bhutav to view (if you have any recruitment needs, please contact iTDriverr)

Follow us

We are “Old Driver Technology Weekly”, a technical public account that continues to pursue high-quality iOS content, welcome to pay attention.

Follow politely, pay attention to [Old Driver Technology Weekly], reply to “2021”, and receive 2017/2018/2019/2020 internal reference

It also supports RSS feeds: https://github.com/SwiftOldDriver/iOS-Weekly/releases.atom .

illustrate

? Indicates that a tool is needed, ? indicates an editor’s recommendation

Estimated reading time: ? Can be read quickly (1 – 10 mins); ? Moderate (10 – 20 mins); ? Slow (20+ mins)

This article is transferred from: https://github.com/SwiftOldDriver/iOS-Weekly/releases/tag/%23237
This site is only for collection, and the copyright belongs to the original author.