Old driver iOS weekly, just for you to present valuable information.

news

Oh my God, it’s the old C

C hasn’t been strong this year, but no other language has seen significant growth, either, with C’s 1.69% growth rate leading the pack. The runner-up was Python, with a 1.21% increase.

In January 2018, Swift ranked 12th and OC 18th, up slightly from last year.

Integrating with iCloud, Passbook, or subscription iaps will make the App importable

Integration with iCloud, Passbook, or subscription iAP will prevent the App from being transferred to another developer account, even if it has been integrated before, even if the new version is disabled.

Apple has patented the iPhone X’s shape design

According to a U.S. Patent and Trademark Office report, Apple has been granted a patent for the iPhone X’s shape design. However, according to the latest report, the patent is not for the “bangs” styling, but on the border of the buttons, antenna breakpoints, speakers and other details. In addition, the iPhone X’s bangs are integrated with up to eight sensors (three more than the iPhone 8) : an infrared lens, a floodlight sensor, and a dot matrix projector.

What’s the Intel bug that’s making all the tech giants’ heads roll

Intel CPU has been hit by the biggest bug in its history. This answer from Tencent Security Joint Laboratory introduces the principle and impact of the vulnerability in detail.

The article

How can programmers maintain high growth rates in the changing tide of technology

Bing Shuang’s summary of 17 years, the title should be “How I went from Frost vegetable to frost God”. Technical personnel have to face the problem of how to grow up. Bing Shuang introduced how he learned efficiently in combination with himself in the article, which is worthy of reference and reflection.

A preliminary study on QUIC protocol – iOS practice

TCP + TLS + HTTP2 = UDP + QUIC + HTTP2’s API is developed by Google. It is hoped to replace TCP and speed up web page transmission. It is also planned to be submitted to the IETF as the next generation of official network specifications. This paper introduces in detail the integration mode of iOS platform and the comparison data with HTTP2.

Basics of parallel programming with Swift 🚧

A very detailed introduction to the concepts involved in concurrent programming in Swift, you deserve it.

React Native navigation

Navigation and jump of RN has always been a problem to be solved. The author summarizes and compares several existing open source schemes, and expounds his own solutions.

Ruan Yifeng: Introduction to Bitcoin

Digital currencies have become the new buzzword. This article introduces the technical principles and basic concepts of Bitcoin from a technical perspective.

Detecting screen capturing in iOS 11

With the rise of paid video services in education, entertainment and other fields, how to prevent the loss and dissemination of paid content has become a very important problem. This article elaborates and demonstrates how to realize the detection of user screen recording or mirror operation on iOS 11, which is worth watching.

tool

App Sight

Check out what third-party services and SDKS major apps use.

code

Kickstarter opened source their client

Kickstarter has opened source their client code, and there’s a lot to learn from it, such as:

  • The abstract AppEnviroment: Use a global for all statesEnviromentTo save, including caches, device states, users, etc., the existence of this abstraction means that you can simulate and switch states at will during testing, which is very useful when testing and monitoring recurring bugs.
  • Working document: Using Playground to build API document, UI format can be viewed instantly through PlaygroundLiveView, build a repL-like debugging environment. Each pull request also tries to compile the code in the playground, so if the API changes, let us know it’s time to update the document. The only catch is that Playground’s support for the framework is so-so so far. Using Carthage or Cocoapods requires a lot of setup.
  • .

Related information:

  • Swift Talk with Kickstarter engineers
  • What I learned in kickstarter-ios source code is (I) engineering related and (II) code related

RxFlow

Coordinator mode based responsive navigation framework developed by RxSwift community.

LSAnimator by Lision

Compared with IBAnimatable, another well-known Swift animation library in the industry, iOS chained animation library based on multidimensional linked list has the following features:

  • Support multi-chain animation, concurrent execution of multiple animation chains;
  • Each animation node takesCAAnimationGroupTo support single animation node composite animation;
  • Provide OC version;
  • Focus on the depth of animation customization.

OOMDetector

OOMDetector is an open source iOS memory monitoring component provided by Tencent. This component can help you easily implement OOM monitoring, large memory allocation monitoring, memory leak detection and other functions.

  • OOM monitoring: Monitors OOM and dumps the stack that causes memory explosion.
  • Large memory allocation monitoring: Monitors a single large memory allocation and provides allocation stack information.
  • Memory leak detection: Can detect OC object, Malloc heap memory leak, provide leak stack information.

DeepDiff

It’s not uncommon for you to have data set updates and then manually diff and refresh the TableView, but this kind of code repetition is also error prone.

The DeepDiff framework encapsulates this process. We can simply pass in the old collection and the new collection, and pass the diff result to the TableView to refresh directly. Here is a code example:

let changes = diff(
    old: oldItems, 
    new: newItems, 
    reduceMove: true
)

tableView.reload(changes: changes, completion: { _ in })
Copy the code

It also performs well in terms of performance, with a simple performance comparison on the official introduction page, ranking no. 1.

quicktype

Quicktype can infer data types from the given JSON data and then output the specific type model. It supports languages such as Swift, C++, Go, Java, C#, and so on. Support Xcode 9, properly used can bring us a certain amount of convenience development.

book

Advanced Audio and Video Development Guide: Practice based on Android and iOS platforms

The writer is an audio and video architect of Singba. Comprehensive introduction of audio and video development of the basic knowledge, but also combined with mobile development related technologies (FFmpeg, OpenGL ES) were introduced.

Audio and video

AlphaGo 2017 🚧

The official documentary of AlphaGo shows the process of man-machine war in all directions, and reveals as much as possible the working way of human thinking and artificial intelligence in the future.

Testing in iOS

Paid video lessons by raywenderlich (part 1 is free to watch). The video course is divided into three parts: basic concept of unit test, unit test and UI test.

The current editor

@No story zhuo, @Siniang, @Mmoaay, @Heerxiansen, @Eyrefree

WeChat exceptional

Thank you for your support.

instructions

🚧 indicates that you need to climb the wall