摘要:
当我们在讲性能优化时,我们到底在讲什么? 性能的定义 最近笔者在学习 iOS 开发时了解到性能优化的相关知识,在一些博客、书籍中,他们直接给出了比如 复用cell 缓存cell 缓存高度 减少subview的数量,使用drawrect绘制,这样可以利用GPU离屏渲染 避免图形特效,图片缩放颜色渐变等 阅读全文
摘要:
bb两句,这本书是我读过的最好的 CS 方面的教材,既有美式教材典型的由浅入深循循善诱逐步放宽条件来构建知识体系,又有苏式教材的巨大信息量和简洁定义。 这本书也非常非常有用,本科学到的《数据库基础教程》仅仅给出了数据库、表、关系、范式的定义和 SQL 的使用,而对于工作中会碰到的索引、事务、锁、查询 阅读全文
摘要:
本文是对《》一书的整体理解与概述,通过理解这本教材的讲述方式,可以很好的理解操作系统是如何设计的(我的意思是,如果要实际使用(或者说的更直白点,应付面试、考核或者作为基础去research,还是需要分条目的熟练记忆而不是现推导) 虚拟化的思路 阅读全文
摘要:
随着开发经验的增加,逐渐觉得,在开发过程中最重要的基础是网络(如何在物理分隔的主机上实现数据传输),其次是数据库(前期如何对系统或者需求进行抽象,采用何种类型、引擎,后期如何根据数据特点进行调优),至于编译,尽管说起来可以让你写出 "compiler friendly" 的代码,但编译器一般都会帮助 阅读全文
摘要:
本文将给出 iOS标准库及开发过程中会用到的一些设计模式,讲述的方式是给出例子或者重构的需求,给出图示(类图、泳道图一动一静较为通用和方便)并说明为何如此,有何好处,对开发者日常写代码调用类库或者 refactor 有何启示? 抽象工厂模式 阅读全文
摘要:
关键概念 历史发展 编程语言 特性方法 应用 1. 开发中,更好读、更好理解、更简洁(开发速度的角度) 2. 部分操作可以提升计算效率(运行速度的角度) 3. Java 中的函数式编程印象中除了 parallel 其他就是纯粹的语法糖,JVM 根本感知不到 FP,再加上相对于运行速度和开发速度,编译 阅读全文
摘要:
个人体验与理解 Swift 做函数式编程是非常方便的,方便的原因是 1. 语法设计上简洁、承认函数(方法)的一等值的身份 2. 显式的 不可变量,自动推断的动态强类型语言风格 3. 系统库提供简单好用的数据结构 4. 语言发展激进 (算是粉丝滤镜很重啦,实际上很多编程语言都支持以上的很多条,哈哈) 阅读全文
摘要:
先理清楚一个问题:编程语言、编译器、系统库、静态/动态加载、链接的定义及其关系,以及这样一个趋势:编程语言特性的复杂度的降低与库文件代码量、功能的增多 Cocoa(读作:) 其中的集合、常用类的使用技巧 阅读全文
摘要:
资料 类比代理模式(Proxy) callback 为了贯彻 MVC 思想 通过“协议/Protocol” 去确定委托谁(实现了该协议的对象),协议类似于 Interface,是一个等待被 impl 的方法列表(当然,用@required和@optional标记表示是否必须实现,若实现前者,就是“被 阅读全文