Bloodline's Blog Notes and thoughts from Bloodline

RN 热更新及 code-push 的应用

        前言 距离上次更新已经很久了。 中间做了一些 SwiftGG 小组的翻译工作,有兴趣可以看看这里。技术上主要是 RN 方向的研究,从各种红色警告到在公司项目中使用,再到方案的基本成型,基本已经算是上道了。主要是思想的一些转变,没有记录技术的东西。最近要上热更新方案,研究了一下,感觉配置的一...

CocoaPods 中的头文件

        之前介绍过自定义 CocoaPods 仓库的方法。 现在遇到一个问题,如何避免用户在使用时引入了不必要的头文件呢? 这里提到了子项目中 Public、 Private 和 Project 的区别。 于是应该从这里入手。 在 podspec 的配置文件中,头文件默认为 project 的...

在项目中集成 RN

        前言 使用 RN 难道要把整个项目都重构一遍么?教程那么多,但是很少能够有把怎么与当前项目结合起来的文章。自己摸索了一遍,记录下来。之后的 RN 之路就由此开始。需要注意的是,RN 的版本迭代相当快,不同版本的差别比较大,填坑时留意下版本。 集成 RN 前提是 RN 相关环境已经搭建好。...

iTerm2配置 lrzsz

        lrzsz 是 unix 下文件传输的工具,可以跟 iTerm2 进行配合。 brew install lrzsz cd /usr/local/bin sudo wget https://raw.github.com/mmastrac/iterm2-zmodem/master/iterm2...

RN第一坑

        前言 想不到再一次写点东西已经到了17年。 正文 开始看RN的东西,HelloWorld的项目总是跑不起来,错误如下: Error: *** Terminating app due to uncaught exception 'NSInternalInconsistencyExcept...

组件化之路——编译框架优化

        前言 公司的项目正在搞组件化,整理下最近学到的东西。三五个人的小项目应该不用考虑这么多,MVVM 或者 MVCS 依然足够。团队达到20以上,每天提交到 SVN 达到上千人次的时候,编译一次的时间可以泡杯咖啡,同时每天会有几次某人在群里喊怎么又编译不过了的情况。没有这样的痛点进行组件化之路是...

创建自己的 pod

        前言 估计这是下个版本间歇起的最后一篇了吧。项目上需要一个图片选择控件,找到一个 swift 项目,花了两天时间转成了 OC 项目,然后想做个 pod 分享给大家。 创建项目 首先需要在 github 上创建新的项目,以当前项目为例: 然后 clone 到本地,进行源码和资源的添加...

iOS中的设计模式——适配器(Adapter)

        适配器模式 适配器模式(Adapter):将一个类的接口转换成客户端希望的另外一个接口,适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 适配器用于连接两种不同种类的对象,使其毫无问题的协同工作。有时也称作为包装器Wapper。思想很简单,适配器实现客户端所要的某种接口...

iOS中的设计模式——单例(Singleton)

        单例模式 单例模式(Singleton):保证一个类仅有一个实例,并提供一个访问它的全局访问点。 单例模式应该是设计模式中最简答的形式了。这一模式的意图是让类的一个对象成为系统中唯一的实例。 类图 使用场景 类只能有一个实例,而且必须从一个为人熟知的访问点对其进行...

iOS中的设计模式——生成器(Builder)

        生成器模式 生成器模式(Builder):将一个复杂对象的构建与它的表现分离,使得同样的构建过程可以创建不同的表现。 有时,构建某些对象有多种不同方式。如果这些逻辑包含在构建这些对象的类的单一方法中,代码将会充满条件判断。如果能把构建过程分解为客户-指导者-生成器(client-direc...