240 发简信
IP属地:天津
  • Objective-C的Block与其它语言上闭包的不同

    从12年底开始接触C,断断续续学习了大半年,直到13年中才直接跳入OC的学习。所以很长一段时间里对闭包的认识只限于OC的Block。但直到Swi...

  • 用Swift煮一盘咖哩

    当然,这里说的咖哩非彼咖哩,而是currying,译名柯里化,下面有一个简介。 在计算机科学中,柯里化(Currying)是把接受多个参数的函数...

  • 属性修饰词Copy的那些坑

    引言 OC里有一个Protocol叫做NSCopying,它声明了一个必须要实现的方法- (id)copyWithZone:(nullable ...

  • swift闭包的@escaping和@noescape

    OC的Block有一个坑,就是它的调用时机。 看下面两个方法,思考一下它们到底有什么区别。 第一个方法是将block作为实例变量存入当前的对象。...

  • Resize,w 360,h 240
    NSOperation与网络封装(上)

    关于NSOperation 基于GCD,NSOperation是一个基于GCD封装的类。 Command,通过NSOperation可实现Com...

    0.4 2203 2 21
  • javascript的变量作用域

    从其他语言跳过来后对JS的一个地方非常不习惯,就是变量作用域。 block scoping:这是大多数语言使用的作用域,例如C的。 functi...

  • OC实例变量与属性的访问控制

    对于刚入门OC开发的人都有一个疑惑,就是下面这些方式创建实例变量有什么区别呢?PS:为了简化,这里省略了property的修饰词。 2,3,4行...

  • Functor, Applicative, Monad片面理解

    导读 判断一个语言原生是否支持函数式编程,主要看它的函数是否first-class function,函数作为第一对象。 类型:规定了变量可以取...