说明
本文只记录macOSX系统,其它系统参考官网
more
安装
HomeBrew安装
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install node
安装包
官网下载最新安装包即可
更新
HomeBrew安装的node
brew upgrade node
其它方式安装的node
使用node的包管理工具n
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
继续阅读 »
ios10新特性简介
more
概要
个人感觉ios10的主要特性就是:开放、智能、便捷。
支持的设备
新特性
短信iMessage
支持手写输入
自定义消息框样式
发送的内容可以选择先隐藏,接收者点击具体内容后才加载出来,营造惊喜模式
支持自定义快捷回复和简单明了的点赞之类的快速交互表情
支持类似微信生日快乐之类的动画效果
支持文字和emoji转换
开放第三方接口(类似微信的安装第三方聊天表情等)
继续阅读 »
本文列举了常见的apple设备基本信息,主要包括ARM/Pixes/DPI/Size等信息
more
iPhone
|name|hw.model|ARM|Pixes|Points|Size|DPI/PPI|
|:--:|:--:|:--:|:--|:--:|:--:|:--:|
|iPhone 4|iPhone3,1iPhone3,2iPhone3,3|armv7|640x960|320x480|3.5英寸(89mm)|326|
|iPhone 4S|iPhone4,1|armv7|640x960|320x480|3.5英寸(89mm)|326|
|iPhone 5|iPhone5,1iPhone5,2|armv7s|640
继续阅读 »
说明
Jenkins很强大,本文主要记录Jenkins用于IOS自动打包。
more
步骤
Jenkins官网下载最新安装包
如果下载太慢,可以使用我的备份Jenkins1.651.2
继续阅读 »
变量申明
变量用var,常量用let;可以显示指明变量数据类型,也可以隐式由变量赋值决定。如果是可以为nil的变量,需要用可选符号?修饰。
swift
let a: NSInteger = 12
var b = 13
b = 15
print(a+b)
//2***********?
var mayNilStr: String? = "hello"
// var str: String = "world"
mayNilStr = nil
// str = nil
print("\(mayNilStr)")
//3********** ??(如果变量为ni
继续阅读 »
是否采用ARC
某个文件采用ARC,可以在Build Phases中的Compile Sources中找到该类,双击修改Compiler Flags为-fobjc-arc。
某个文件采用MRC,可以在Build Phases中的Compile Sources中找到该类,双击修改Compiler Flags为-fno-objc-arc。
全局宏定义
一个workspace/project如果包含多个target或者scheme,可以在BuildSetting->Preprocessing->Preprocessor Macros中定义自己的宏来区别对待多target喝scheme等
第三方库路径配置
有时第三方库(一般是.a
继续阅读 »
strong、weak、unsafe_unretained、autoreleasing、copy说明
strong 指针的默认类型。该指针指向的对象在指针存活期间一直存在,不会被销毁。
weak 当没有strong指针指向对象时,weak指针指向的对象将被销毁,同时weak指针为变为nil。
unsafe_unretained 该指针指向的对象销毁时,该指针不会被置为nil,而是被挂起(类似野指针)。最好别用
autoreleasing 一般指向函数的参数类型为id *并且自动释放的参数。
copy 类似strong,但是会复制一份新的对象(即指向新的内存地址),新指向的对象存活期同strong。
参考链接
Apple
继续阅读 »
堆栈
栈用于静态内存分配,堆用于动态内存分配,它们都存储在内存RAM里。
栈
栈上面的变量一般编译时就分配好了(如函数临时变量等)。栈遵循LIFO(后进先出),非常方便管理。
栈的内存分配一般由系统管理,开发者无需关心。
读取栈上的变量速度很快。
当一个方法function被调用时,它会被push进栈中,该方法中的参数和局部变量存储在栈中,当方法执行完后,该方法pop出来,相应的栈空间被释放。
堆
堆上的变量,一般在程序运行期分配。
读取堆上数据速度较慢。
堆上的元素能够在任何时候被读取,开发者也能够在任何时候申请堆内存空间并且释放申请的空间,所以管理堆上的变量比较复杂。
通常我们说的内存管理实际上是指堆内存管理。
堆的大小
继续阅读 »
参考链接
raywenderlich
优化建议
当你开发了几款app后,是否考虑过怎样才能提高自己的app的性能。在开发的过程中,只要我们注意一些要点,可以很轻松地开发出性能优雅的app。
这篇文章介绍了23个提高app性能的tips。
继续阅读 »
说明
如果你想从别的git托管服务器哪里复制一份源代码到新的git托管服务器上,可以通过以下步骤实现。
git仓迁移
从原地址克隆一份裸版本,比如原版本托管在github上。
git clone --bare git://github.com/username/project.git
到新的git服务器上创建一个空的新项目,比如gitCafe服务器。
以镜像推送的方式,上传代码到gitCafe服务器上
cd project.git
git push --mirror git@gitcafe.com/username/newproject.git
删除本地之前克隆下来的裸版本
cd ..
rm -rf project.
继续阅读 »