iOS多线程 --- pthread和NSThread

多线程,是实现多个线程并发执行的技术,对于单核CPU来说,虽然在硬件的限制下同时只能执行一个线程,但是操作系统可以快速的在不同线程之间切换,在很小的切换时间下,来给用户造成一种同时运行多个线程的假象,而对于多核CPU,因为有硬件的支持而能够在同一时间同时运行多个线程
iOS中有以下几种线程方案

Mehr lesen

栈的最佳实践 - 打造一个逆波兰计算器

栈的介绍

栈的应用很多,可以检查程序中的符号是否都成对的出现,每一个右括号都应该有一个对应的左括号,可以用栈来实现进制的转换,当然还有今天的主题,利用栈来实现一个逆波兰计算器

Mehr lesen

iOS中Active与JS的交互

iOS原生代码和HTML中的JS进行交互有以下几种方法

  1. 拦截URL
  2. 使用JavaScriptCore
  3. 使用WKScriptMessageBridge

Mehr lesen

weak-strong dance

之所有要写这篇weak-strong-dance,是因为一个同事在聊天时表达了对这种写法困惑,在block中为什么要重新使用strong来修饰觉得没有必要,所以我写下这篇文章一来可以为他解惑,二来如果能帮助更多的同学理解weak-strong-dance就再好不过了

Mehr lesen

block

说到Block,首先要介绍一下闭包(closure),这是闭包在wiki)中的介绍:

Mehr lesen

pomera

Η Pomera τηρεί αυστηρά τους νόμους και τους κανονισμούς και ακολουθεί τις ακόλουθες αρχές προστασίας προσωπικών δεδομένων για να σας παρέχει ασφαλέστερες και πιο αξιόπιστες υπηρεσίες:
1, ασφαλής και αξιόπιστη: η pomera δεν θα συλλέξει τα προσωπικά σας στοιχεία
2, ανεξάρτητη επιλογή: σας παρέχουμε βολικές λειτουργίες λειτουργίας, χωρίς παραπλανητική λειτουργία
3, προστατεύστε το μυστικό: προστατεύουμε αυστηρά το περιεχόμενο των αρχείων ανάγνωσής σας

Mehr lesen

翻译:ReactiveCocoa for a better world

ReactiveCocoa创造更美好的世界
原文:ReactiveCocoa for a better world

Mehr lesen

fastlane

##使用背景
早些时候我一直使用python执行脚本来完成项目的持续集成,在Apple发布Xcode9的时候脚本进行了更新,部分脚本被废弃,在那时候我转移到fastlane阵营,原因很简单,fastlane使用更简单,更方便,我不再需要因为苹果对脚本的更新来被迫修改我的方案。

##fastlane介绍
fastlane是一款持续集成工具,它的功能强大,使用简单,可以帮助我们处理一些费时的工作,比如生成截屏、处理配置文件、编译App、上传测试分发平台等。

Mehr lesen

Reactivecocoa全解析 2.常用操作和高阶函数

RAC现在分了两部分,ReactiveCocoaObjc和ReactiveCocoaSwift,本文介绍的均是 ReactiveCocoaObjc 2.5.0 版本的内容.

RAC的核心是信号源(RACStream),在RAC中,信号源代表随着时间而改变的流值,订阅者通过订阅信号来获取这些值,RACStream是一个抽象类,我们用到的最多的是它的之类 RACSignal和RACSequence,
以下代码和示例使用的ReactiveCocoa 2.5版本

Mehr lesen

Reactivecocoa全解析 1.FRP编程思想

ReactiveCocoa全解析 1.FRP编程思想

ReactiveCocoa是我在开发工作中重度使用的一个开源框架,当你使用MVVM设计模式的时候,它几乎是你最好的选择,当然你也可以使用其他的一些方式来完成数据绑定,KVO,delegate或者是block,但是RAC为你提供了更优雅更安全的绑定方式,我们可以使用RAC在View和ViewModel中充当binder的角色来实现数据的同步,也可以把RAC放在ViewModel层,使用signal来异步获取数据,比如网络请求,访问数据库等。

因为RAC是一个使用起来并不那么容易的开源框架,所以接下来我会分几个部分来介绍它:

  1. FRP 的思想概要 (oop和fp)
  2. RAC 的 operations 介绍
  3. 冷信号与热信号解惑
  4. 生命周期指南
  5. disposable 和多线程
  6. 实战分享

Mehr lesen