Applications and Running loops A running loop application receives messages about events such as mouse clicks from the operating system and forwards them to the...
Application bundles Construction of application bundles Cocoa applications store executable files, or the necessary resource formats, in a delegate structure called application bundles, application wrappers,...
In the development process, we often need to use NSLog output some information, and even some development process, must view the output in the console,...
CurrentBalance/owner/the transactions are now properties. The owner property is an object, which has a one-to-one relationship with BankAccount. The change of the property in the...
In the process of introducing the third-party SDK into the project, various imported library files, various configuration changes, especially when updating the SDK, it was...
Recently, when I was doing Swift3 migration, I met a very embarrassing thing. The library of Alamofire supports iOS9.0 at least, but our project must...
Recently, when I was doing Swift3 migration, I met a very embarrassing thing. The library of Alamofire supports iOS9.0 at least, but our project must...
Teacher Casa's scheme was mainly based on Mediator mode and target-Action mode, and runtime was used to complete the call. The following uses Demo as...
In my last article, Functional Programming - Implementing a Responsive Framework, I implemented a very simple and compact functional responsive framework and made some Cocoa...
AnyClass: represents the metatype of AnyClass. The type of any class implicitly obeys this protocol. AnyObject. The Type. If you have a Student class, Student.Type...
GrandCentralDispatch, or GCD, is a set of low-level apis that provide a new way to do concurrent programming. In terms of basic functionality, GCD is...
Concept 1.SQLite is a lightweight relational database, originally intended for embedded systems, that uses very few resources. In iOS, just add the libsqlite3.0 dependency and...
Application 1: Data passing between classes Lower-level -> upper-level data passing uses proxies to avoid the problem of interdependencies between controllers (importing each other's headers)....
There are three methods: CADisplayLink, NSTimer, and GCD CADisplayLink features: The screen is refreshed once, and the specified method is repeatedly called. CADisplayLink is a...
Runloop is a basic component that is tied to threads and is behind many of the thread-related functionality. Although we rarely use Runloop directly in...
NSOperation and NSOperationQueue are a set of multi-threaded solutions provided by Apple. They are based on a higher level of ENCAPSULATION of GCD and are...
Long press copy to determine whether String contains a certain String take a single character String reverse to determine whether the String is empty add...