Mac下使用Hexo+Github搭建个人博客
此文为转载:
原文链接:https://www.jianshu.com/p/e5f95eb990ad
##一、前言
Hexo是一个快速、简洁且高效的博客框架,最近有搭建个人博客的想法,便动手尝试了。
###二、初始化
####1.安装Node.js
去Node.js官网下载相应的安装包,一路安装即可。
####2.安装Git
此文为转载:
原文链接:https://www.jianshu.com/p/e5f95eb990ad
##一、前言
Hexo是一个快速、简洁且高效的博客框架,最近有搭建个人博客的想法,便动手尝试了。
###二、初始化
####1.安装Node.js
去Node.js官网下载相应的安装包,一路安装即可。
####2.安装Git
在追加到 Dispatch Queue 中的多个任务处理完毕之后想执行结束处理,这种需求会经常出现。如果只是使用一个 Serial Dispatch Queue (串行队列)时,只想要将执行的处理全部追加到改串行队列中并在最后追加结束处理即可,但是在使用 Concurrent Queue 时,可能会同时使用多个 Dispatch Queue 时,源码就会变得很复杂。
这种情况下,就可以使用 Dispatch Group。
1 | dispatch_group_t group = dispatch_group_create(); |
Core Image的插件架构允许编写自定义滤镜与系统滤镜集成来扩展功能。Core Image需要context对象来实现。
向Core Image的kCICategoryBuiltIn类请求得到滤镜名。或者使用Quartz Composer里的Filter查看并且进行组合查看效果。这个范例也可以查看https://github.com/objcio/issue-21-core-image-explorer。
官方提供的Core Image滤镜的完整列表https://developer.apple.com/library/ios/documentation/GraphicsImaging/Reference/CoreImageFilterReference/index.html#//apple_ref/doc/uid/TP40004346
1 |
|
1 | let blurFilter = CIFilter(named:"CIGaussianBlur”) //根据滤镜列表里的滤镜名, 可以创建一个滤镜对象,比如高斯模糊滤镜 |
1 | CABasicAnimation *animation = [CABasicAnimation animation]; |
改进是可以配置每个session的缓存,协议,cookie以及credential policy。每个NSURLSession对象都是一个NSURLSessionConfiguration对象来进行初始化,指定那些策略和增强移动设备上性能选项。
负责处理数据的加载以及文件和数据在客户端与服务器之间的上传和下载。3个子类NSURLSessionDataTask,NSURLSessionUploadTask,NSURLSessionDownloadTask可以直接使用。这三个子类完成最基本的网络任务,获取JSON或XML数据,上传和下载文件。
所有task都是可以取消,暂停或恢复的。当download task取消时,可以通过选项创建一个resume data传递给下一次新创建的download task继续download
Core ML 是一个使各种机器学习和统计模型在 macOS 和 iOS 上原生支持的令人兴奋的新框架。它帮助开发者将已经成型的统计和机器学习模型整合到应用之中。这个模块是基于苹果公司的底层机器学习基本元件,有一些是在 WWDC2016中声明的。
#Core ML在三个方面帮助开发者:
在阅读以上内容之后,我们也就可以得到一个关于 Core ML 声明周期的基本认识。开发者可以用 Python创建一个模型,生成一个 .mlmodel 文件,添加该模型到 Xcode 中并且通过 Core ML 在一个设备上使用该模型。现在咱们开始吧!
先前写到的一篇Masonry心得文章里已经提到了很多AutoLayout相关的知识,这篇我会更加详细的对其知识要点进行分析和整理。
一般大家都会认为Auto Layout这个东西是苹果自己搞出来的,其实不然,早在1997年Alan Borning, Kim Marriott, Peter Stuckey等人就发布了《Solving Linear Arithmetic Constraints for User Interface Applications》论文(论文地址:https://constraints.cs.washington.edu/solvers/uist97.html)提出了在解决布局问题的Cassowary constraint-solving算法实现,并且将代码发布在他们搭建的Cassowary网站上https://constraints.cs.washington.edu/cassowary/。后来更多开发者用各种语言来写Cassowary,比如说pybee用python写的https://github.com/pybee/cassowary。自从它发布以来JavaScript,.NET,JAVA,Smalltall和C++都有相应的库。2011年苹果将这个算法运用到了自家的布局引擎中,美其名曰Auto Layout。
Cassowary是个解析工具包,能够有效解析线性等式系统和线性不等式系统,用户的界面中总是会出现不等关系和相等关系,Cassowary开发了一种规则系统可以通过约束来描述视图间关系。约束就是规则,能够表示出一个视图相对于另一个视图的位置。
进入下面主题前可以先介绍下加入Auto Layout的生命周期。在得到自己的layout之前Layout Engine会将Views,约束,Priorities(优先级),instrinsicContentSize(主要是UILabel,UIImageView等)通过计算转换成最终的效果。在Layout Engine里会有约束变化到Deferred Layout Pass再到应用Run Loop再回到约束变化这样的循环机制。
触发约束变化包括