JavaScript 作用域,引擎工作流程及优化

最近一直在写 React,抽空对一些 Javascript 概念及引擎工作方式学习总结一下。

作用域静态作用域与动态作用域

静态作用域通常称为词法作用域,采用词法作用域的变量叫词法变量,有一个编译时静态确定的作用域。(定义在词法阶段的作用域)。词法变量的作用域可以是一个函数或一段代码,该变量在这段代码区域内可见(visibility);在这段区域以外该变量不可见(或无法访问)。词法作用域里,......

移动端模块化架构设计

这篇文档以 iOS 开发为例,老项目开发中一般存在一些弊端:

耦合严重,互相引用,状态无管理随处可修改

耦合强导致的冲突问题不好管理

实现较臃肿,各种功能类的代码混合在一起

无法快速响应业务变化,比如添加或者删除一个功能,影响面较广

重复的功能实现,无复用且影响包大小

内存及多线程问题

所以,需要一个架构来保证稳定高效的协同开发,对代码进行有效的复用,有助于持续集成及按......

开源库 Block Tracker 学习

修改 selector IMP 映射来 hook 方法在开发中很常见,但是 hook 一个 block 实现以及使用场景都较为稀有。最近,腾讯星开源了一个 hook block 的方案 Block Tracker , 使用上看起来如下:

- (void)viewDidLoad {

[super viewDidLoad];

// Begin Track

BTTracker *tracker =......

导航栏切换库 KMNavigationBarTransition

通过导航栏来进行视图切换是 App 最基础的功能,除去定制 Custom Transition 以外,大部分都通过 push 以及 pop 来进行视图的入栈,出栈。

通常使用系统默认的展示方式没有什么问题,但是上下级视图的导航栏颜色不一致时,交互体验就不太友好,比如:

- (void)viewWillAppear:(BOOL)animated {

[super viewWillAppear......

Hello Bitcron

Github Page 需要自己配置模板

简书不支持个性域名而且样式也不尽人意

现在使用 Bitcron 来托管博客

希望搬了新家后自己能勤快些 = =

iOS 内存监控分析

概述

最近有在看一些内存监控开源库的实现,所以有做引用和总结。

这篇文章描述了关于内存监控知名开源库的一些实现思路,使用方式以及优缺点等。

FBMemoryProfiler循环引用

Objective-C 使用引用计数去管理内存和释放不使用的对象。内存中的任何一个对象都可以持有(retain)其他的对象,只要前面的对象需要它,对象就会一直保持在内存中。查看这个的一个方法是这个对象持有其他......