forestbird Blog

Thinking will not overcome fear but action will.

Swift的HMAC和SHA1加密

swift中利用HMAC的SHA1对文本进行加密

HMAC是密钥相关的哈希运算消息认证码(Hash-based Message Authentication Code)。 HMAC运算利用哈希算法,以一个密钥和一个消息为输入,生成一个消息摘要作为输出。也就是说HMAC通过将哈希算法(SHA1, MD5)与密钥进行计算生成摘要。 Objectice-C 在上个 Objectice-C 项目中,使用的 HMAC 和 SHA1 进行加...

「体能训练理论」之金字塔

「健身先健脑」科学的运动需要科学的运动理论

引言 体能,人体基础运动能力的统称,人体的本质属性,它支撑着日常生活工作的需要,也支撑着运动技战术的表现。 体能思路,是指导我们设计实施体能训练的思维方式,分析逻辑。它包括回归原点的 五大运动素质 & 动力链理论,也包括在过程中引领方向的 功能性原则 和 金字塔 。 金字塔 体能训练是一门实践科学,实践先于理论,而理论印证实践。体能训练有四大基础学科,分别是运动解剖学、运动生理...

「体能训练理论」之动力链

「健身先健脑」科学的运动需要科学的运动理论

引言 与其说体能训练是一种行为,不如说体能训练是一种程序。只要符合逻辑,就可以自由组合。 那么体能训练的逻辑是什么?我们将之总结为:动力链、功能性、金字塔。 动力链 如果说 五大运动素质(力量、速度、耐力、灵敏、柔韧)代表了体能的宏观表现,那么动力链理论则阐释了人体解剖结构在运动中的客观规律,这二者同为人体的本质属性。 动力链这一理论早在1875年就被提出过,当时的定义还很简单,就...

「体能训练理论」之功能性

「健身先健脑」科学的运动需要科学的运动理论

引言 体能训练是一种开源的程序它所依仗的并不是固有的方法手段,而是能够贯穿始终的逻辑,它是一种指导实践的思维方式,我们管它叫“体能思路”。 体能思路有两个方向,一个是原点,一个是过程。所谓原点我们认为是人体的本质属性,比如之前我们分享的五大运动素质以及动力链理论。所谓过程是我们分析问题实现目的的思考方向以及逻辑,它主要体现在接下来要跟大家分享的功能性原则和金字塔。 今天先来说功能性原则...

Xcode9 无线调试功能

zsh的快速配置

支持:Xcode 9 及 iOS 11 使用数据线连接 iPhone 到电 Mac,Mac 和 iPhone 必须在同一个局域网 1. 打开设备列表 使用快捷键盘 ⇧⌘2 或 在 Xcode 菜单栏选择 Window > Devices and Simulators,打开设备列表 2. 勾选在线调试按钮 3. 拔掉数据线 这时就可以无线调试了。

快速配置zsh

zsh的快速配置

比较水的 Personal Notes 查看你的系统有几种shell cat /etc/shells 显示 /bin/bash /bin/csh /bin/ksh /bin/sh /bin/tcsh /bin/zsh 安装 oh my zsh git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-...

在 Swift 中使用 IBInspectable

IBInspectable 在 Swift 中的实际应用

本文首次发布于 BY Blog, 作者 @柏荧(BY) ,转载请保留原文链接. 前言 通过 IB 设置 控件 的属性非常的方便。 但是缺点也很明显,那就是有一些属性没有暴露在 IB 的设置面板中。这时候就要使用 @IBInspectable 在 IB 面板中添加这些没有的属性。 关于在 OC 中使用 IBInspectable 可以看一下我的 这篇文章 正文 在项目中...

R.swift 的使用

在项目中引入 R.swift,更安全的获取资源

本文首次发布于 BY Blog, 作者 @柏荧(BY) ,转载请保留原文链接. 什么是 R.swift 介绍 R.swift 前,我们先看看 R.swift 能做什么 通常,我们是基于 字符串 来获取资源,例如:图片、xib、或者是 segue let myImage = UIImage(named: "myImage") let myViewController = R.s...

Swift 的懒加载和计算型属性

比较水的个人笔记

本文首次发布于 BY Blog, 作者 @柏荧(BY) ,转载请保留原文链接. 懒加载 常规(简化)写法 懒加载的属性用 var 声明 lazy var name: String = { return "BY" }() 完整写法 lazy var name: String = { () -> String i return "BY" }() 本质是一个创建...

RVM 使用指南

RVM 常用的命令整理

RVM 常用的命令整理 RVM 是一个命令行工具,可以提供一个便捷的多版本 Ruby 环境的管理和切换。https://rvm.io/ 我相信做为iOS开发者,对ruby的使用都是从安装 CocoaPods 开始的吧~ Note:这里所有的命令都是再用户权限下操作的,任何命令最好都不要用 sudo. RVM 安装 $ gpg --keyserver hkp://ke...