摘要: 以下两段代码是从安全公司里面代码 判断是否是调试模式 extension UIApplication { var isBeingDebugged: Bool { // Initialize all the fields so that, // if sysctl fails for some biz 阅读全文
posted @ 2020-10-24 21:23 洒水先生 阅读(814) 评论(0) 推荐(0) 编辑
摘要: 想象一下 Alice 和 Bob 发送邮件的场景,发送的邮件称作消息,发送消息的 Alice 称为发送者,接收消息的 Bob 称为接收者,当经过网络时,消息有可能会被第三方窃听,窃听消息的称为窃听者。 为了不被窃听者知道内容,Alice(发送者)可以将消息加密发送出去,加密前的消息称为明文,加密后的 阅读全文
posted @ 2020-10-11 21:29 洒水先生 阅读(657) 评论(0) 推荐(0) 编辑
摘要: ![](https://tva1.sinaimg.cn/large/007S8ZIlgy1ggx98ophyaj313i0u01i4.jpg) 阅读全文
posted @ 2020-07-20 11:02 洒水先生 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 使用版本: iOS 9.0.2 App Slicing (App 切割) BitCode (位元码) 理解iOS开发中BitCode功能 关于bitcode, 知道这些就够了 On Demand Resources(按需资源) iOS On-Demand Resource On-Demand Res 阅读全文
posted @ 2020-05-28 13:28 洒水先生 阅读(267) 评论(0) 推荐(0) 编辑
摘要: 最后编辑: 2019 11 20 \ pragma once 是一个非标准但被广泛支持的预处理符号, 其主要作用是防止文件重复引入问题。 在头文件中,可以定义 或者 , 本文比较以下这两者区别。 共同点 防止文件重复 include 在以前的一些编译系统中,为了提高编译的效率,编译系统各自开发了 来 阅读全文
posted @ 2019-11-20 20:38 洒水先生 阅读(1627) 评论(0) 推荐(1) 编辑
摘要: 最后编辑: 2019 11 6 版本: gcc version 5.4.0 20160609 (Ubuntu 5.4.0 6ubuntu1~16.04.11) 一、进程标识 每一个进程都有一个唯一的非负整数的ID, 该类型为 . 当进程退出或者被杀死后,进程 ID 会被系统复用. 与文件句柄不同的是 阅读全文
posted @ 2019-11-06 20:39 洒水先生 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 最后更新:2019 10 25 一 基本概念 socket, 又称为"套接字"或者"插座". 是操作系统提供的一种进程间通信机制.目前大多用于不同网络设备之间的通信. socket 位于应用层与传输层之间, 通过传递给 socket 不同的参数, socket 最终选择不一样的协议(TCP/UDP等 阅读全文
posted @ 2019-10-25 21:43 洒水先生 阅读(329) 评论(0) 推荐(0) 编辑
摘要: 最后更新 2019 06 27 概述 当使用 C 或者 C++ 编写代码实现某种功能时,需要将源代码进行 编译 以及 链接 。链接是将一系列目标文件(.o)以及归档文件(.a)组合起来,重新定位各个文件数据并绑定符号引用(symbol references),最终生成可一个执行的文件。例如: 。 链 阅读全文
posted @ 2019-06-27 21:28 洒水先生 阅读(442) 评论(0) 推荐(0) 编辑
摘要: 最后更新日期 2019 06 22 一、前言 在 "PX4学习之 uORB简单体验" 中指出, 使用 uORB 进行通信的第一步是新建 msg。在实际编译过程中,新建的 msg 会转换成对应的 .h、.cpp 文件。 Firmware 使用 CMake 来管理整个项目,文件解析以及转换成也是使用相关 阅读全文
posted @ 2019-06-22 20:37 洒水先生 阅读(779) 评论(1) 推荐(0) 编辑
摘要: 一、前言 最近项目使用到 CPU2 与 CPU0 之间的通信, 使用定时器传递消息到 CPU0 后, CPU0 需要将消息分发到不同的应用程序里面. PX4 里面使用的是 uORB 多线程/进程通信机制. uORB 相关介绍参考: "官方 uORB 介绍" 以及 "无人机中级篇:第三讲:uORB原理 阅读全文
posted @ 2019-06-14 15:28 洒水先生 阅读(1566) 评论(0) 推荐(0) 编辑
摘要: + 最后更新: 2019 06 08 一、指令介绍 为解析函数(function)或 宏(macros) 参数的命令; 1.1 参数解析 1. `` : 可选值 此处包含可选项的变量名称, 对应的值为 或 ; 如果传递进来的参数包含此变量,则为 反之为 2. `` : 单值关键词列表 每个关键词仅仅 阅读全文
posted @ 2019-06-08 19:31 洒水先生 阅读(8712) 评论(0) 推荐(3) 编辑
摘要: 最后更新: 2019 06 06 一、简单介绍 和 为一对相反的指令,分别为设置变量以及取消设置变量。 1. 什么是变量? 变量就是用于保存值的存储单元。 2. 有哪几种? 有三种,分别为: 设置一般变量(Set Normal Variable), 设置缓存变量(Set Cache Entry),设 阅读全文
posted @ 2019-06-06 18:32 洒水先生 阅读(5482) 评论(0) 推荐(1) 编辑
摘要: 一、系统版本 cmake version: 3.5.2 系统版本: Ubuntun 16.04 cmake docment: 3.14.4 最后更新: 2019 05 31 二、指令说明 主要用于提供项目的名称、版本、使用编译语言等信息 注意: 在当前系统版本下面,实际上 Project 并不支持 阅读全文
posted @ 2019-05-31 22:09 洒水先生 阅读(2808) 评论(0) 推荐(0) 编辑
摘要: 一、系统版本 cmake version: 3.5.2 系统版本: Ubuntun 16.04 cmake docment: 3.14.4 最后更新: 2019 05 30 二、指令说明 主要实现如下两个功能: 1. 将 文件 里面的内容全部复制到 `` 文件中; 2. 根据参数规则,替换 或 变量 阅读全文
posted @ 2019-05-30 23:26 洒水先生 阅读(14570) 评论(3) 推荐(1) 编辑
摘要: 最后更新: 2018 09 06 当你用 UIStoryBoard (以下简称 'SB') 做iOS开发时候,总是避免不了设置 的问题, 是一个字符串,这种硬编码的形式如果时间久远,就很容易忘记, 也容易导致拼写的错误。 我们常常使用最简单的复制、粘贴的形式来保证一致,但是偶尔也会出现那种失误性的新 阅读全文
posted @ 2018-09-06 10:41 洒水先生 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 最后更新: Swift4时候的博客,以前在 CMD markdown 上编辑的,现在搬到这里 更新日期: 2018 06 06 在 "上篇文章 URL Handle in Swift (一) URL 分解" 中,我们已经将URL进行了分解, 信息全部保存在了 类型之中. 在这篇文章之后, 我们将讨论 阅读全文
posted @ 2018-06-06 21:33 洒水先生 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 更新时间: 2018 6 6 在程序开发过程之中, 我们总是希望模块化处理某一类相似的事情。 在 ezbuy 开发中, 我接触到了对于 URL 处理的优秀的代码, 学习、改进、记录下来。希望对你有所帮助。 对于 URL 处理, 我将分为两个部分来说明: + URL Handle in Swift ( 阅读全文
posted @ 2018-06-06 16:43 洒水先生 阅读(525) 评论(0) 推荐(0) 编辑
摘要: 最后更新:2018 03 19 一、说在前面的话: "SwiftyJSON" 作为一个 swift 的解析库, 在 Swift4 之前备受欢迎, 目前(2018.3.19) 已经有 1.6w+ Star 以及 2800+ fork. Swift4中, Apple 实现了 "Codable" 协议,使 阅读全文
posted @ 2018-03-19 21:16 洒水先生 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 最后更新: 2018 1 20 JLRoutes 是在 github 上 Star 比较多的一个, 在各大平台也有介绍, 一些知识可以参考到下面的连接查看. 本文仅仅作为我的思考以及对应的心得; 一、 JLRoutes如何管理URLScheme以及对应的Handler 当调用 时候, 回去调用 , 阅读全文
posted @ 2018-01-20 20:41 洒水先生 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 最后更新: 2018 01 17 一、消息派发机制 NSObject 在 iOS 开发中, 调用对象的方法就是给对象发送一个 。了解消息的派发机制对于iOS开发来说是一个很实用且强大的工具, 下面我将对其详细说明; 当实例化一个 对象 , 调用 , 那么派发机制是什么样的呢? Step1: 在当前对 阅读全文
posted @ 2018-01-17 10:59 洒水先生 阅读(573) 评论(0) 推荐(0) 编辑
摘要: 最后更新:2018 01 16 使用教程: 1. "官方的链接" 2. "使用 Kingfisher 处理网络图片的读取与缓存" 1. 开始使用 1. 桥接 KingFisher, 利用 KingfisherCompatible协议来处理, 此处与 SnapKit的处理方式还是有点不同, SnapK 阅读全文
posted @ 2018-01-16 22:02 洒水先生 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 最后更新:2017 12 24 结构化数据 结构化数据也称作行数据,是可以由 二维表结构来逻辑表达和实现的数据 , 对于表结构的 每一列,都有着清晰的定义 。 例如: ![image_1bt7g5ioq43poj012e71vnv1dv6m.png 64.8kB][1] ![image_1bt7g6 阅读全文
posted @ 2017-12-24 21:49 洒水先生 阅读(337) 评论(0) 推荐(0) 编辑
摘要: 最后更新:2017 12 19 在第一天中, 我们完成了项目的基本设置、隐藏Dock、显示和隐藏Popover等操作,接下来的这章中, Pap.er将会去搭建对应 UI. 一、设置Popover对应颜色 官方的Pap.er的箭头部分色值为 查找官方的NSPopover API,发现没有设置对应和方法 阅读全文
posted @ 2017-12-19 21:44 洒水先生 阅读(268) 评论(1) 推荐(0) 编辑
摘要: 最后更新: 2017 12 19 一、 堆 ‘ 最大堆 哈夫曼树 与 哈夫曼树编码 阅读全文
posted @ 2017-12-19 21:14 洒水先生 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 最后更新:2017 12 18 前言 此文内容来自于 "中国大学Mooc(慕课) 浙江大学 数据结构 第四讲 树(中)" , 老师原本内容是 C语言 ,本文把内容改为 Swift . 1.1 定义 二叉搜索树 又称二叉排序树或二叉查找树; 当该树不为空的时候,满足如下性质: + 非空 左子树 的 所 阅读全文
posted @ 2017-12-18 21:13 洒水先生 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 最后更新:2017 12 16 一、什么是树(tree)? 1.1 定义 在日常生活中, 我们总能看到树. 树是由树根、树枝、树叶组成。在计算机中, 树的结构根现实中的树很类似,像是倒过来的树。 如下: 由上图, 对照现实生活, 树根为树的开始(例如:A点), 树枝可以理解为有子分支的(例如: B点 阅读全文
posted @ 2017-12-16 21:01 洒水先生 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 最后更新: 2017-12-15 一、 项目初始化 解析对应的资源, 下载Pap.er之后,需要解析里面的资源. 采用如下的方法: http://blog.csdn.net/xuzihai0703/article/details/50327531 创建项目工程 导入里面的资源icon, 然后运行 可 阅读全文
posted @ 2017-12-15 21:36 洒水先生 阅读(294) 评论(0) 推荐(0) 编辑
摘要: 最后更新:2017 12 12 dispatch_sync 与 dispatch_barrier_sync https://github.com/rs/SDWebImage/pull/818 The reason why we are doing dispatch_barrier_sync and 阅读全文
posted @ 2017-12-12 21:17 洒水先生 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 最后更新日期: 2017 12 10 引言 最近一直在看《Head First 设计模式》一书,此篇文章是基于 “第九章 迭代器与组合模式”, 我将此节分为两个部分: 迭代器、组合模式。 强烈推荐此书。 什么是组合模式? 定义: 允许你讲对象组合成 树形结构 来表现“整体/部分”层次结构。 组合能让 阅读全文
posted @ 2017-12-10 20:37 洒水先生 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 最后修改时间: 2017 12 1 "官方视频链接" 这个Session主要讲一下的几个内容: + Basic(基础的): 动画工作原理 以及 动画如何计时 + Interactive and Interruptible Animations: 可交互与可中断的动画 + New Property A 阅读全文
posted @ 2017-12-01 20:45 洒水先生 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 最后更新日期: 2017 11 12 客户端同步业务实现标准 + 1.客户端使用本地数据库存储数据. + 2.客户端支持全量和增量同步. + 3.支持在不可靠网络环境下错误后恢复重传. + 4.允许特殊状态下版本的不一致,即最后更新的为最新. 同步流程 同步流程中所有同步数据都使用一个基于帐号的全局 阅读全文
posted @ 2017-11-12 20:55 洒水先生 阅读(1113) 评论(0) 推荐(1) 编辑
摘要: 这是一篇2017 11 12 年我还在 ezbuy 的一篇文章,时间过去很早了,最近在整理笔记的时候发现了, 同步过来,文章内容现在是否有效不确定,应该大差不差,读者仅做参考 最后更新 2017 11 12 一、为什么要持续集成 在App开发周期中, 需要不断的对develop上面的代码进行buil 阅读全文
posted @ 2017-11-12 11:10 洒水先生 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 最后更新: 2017 10 22 一、Python机器学习的库:scikit learn + 简单高效的数据挖掘和机器学习分析 + 对所有用户开放,根据不同需求高度可重用性 + 基于Numpy, SciPy和matplotlib + 开源,商用级别:获得 BSD许可 安装 scikit learn 阅读全文
posted @ 2017-10-22 22:04 洒水先生 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 最后更新:2017 09 12 导入time 模块 Function 疑问: 1. 如何构建一个 struct_time出来 1. asctime() 2. clock() 3. ctime() 4. get_clock_info() | name可选值 | 对应的Function读取对应的值 | 阅读全文
posted @ 2017-09-12 21:03 洒水先生 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 最后更新:2017 08 10 部分内容丢失,后续补上 相关配置: Xcode 8.3.3 Swift 3.0 macOS Sierra 一、CoreText 简介 CoreText 是用于处理文字和字体的底层技术。它直接和 Core Graphics(又被称为 Quartz)打交道。Quartz 阅读全文
posted @ 2017-08-10 21:19 洒水先生 阅读(122) 评论(1) 推荐(0) 编辑
摘要: 最后更新: 2017 08 08 官方地址: https://developer.apple.com/videos/play/wwdc2017/225/ WWDC2017中,对SafariViewController的改动感觉不是很多。 一下列举出对开发者而言,新增的一些东西。 一、可以自定义颜色 阅读全文
posted @ 2017-08-08 20:51 洒水先生 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 最后更新: 2017 07 23 在程序开发中,我们时常需要来判断两个对象是否相等。在编程思想中,两个对象相等指的是在内存中的地址相同,也就是两个指针指向同一个地址。但是在日常理解中,只要两个对象的内容相同即表示想等,怎么处理这类问题才是此文所需要阐述的。 在iOS开发中,无论是OC还是Swift都 阅读全文
posted @ 2017-07-23 21:33 洒水先生 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 最后更新: 2017 07 22 在 Swift 标准库中, NSObjectProtocol 协议 Equatable 协议: swift extension NSObject : Equatable, Hashable { /// The hash value. /// /// Axiom: i 阅读全文
posted @ 2017-07-22 20:59 洒水先生 阅读(1034) 评论(0) 推荐(0) 编辑
摘要: 最后更新:2017 06 30 现象描述 新公司做的解决的第一个bug 就是 UIAlterController 不居中,莫名其妙的飞出屏幕之外 ![image_1bjrv1e8phrd1uc7v0m16gptae9.png 57kB][1] 找了很久的答案,最终在苹果论坛看到了相关的描述 We h 阅读全文
posted @ 2017-06-30 21:32 洒水先生 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 最后更新:2017 06 21 一、先说结论 二、代码分析 2.1 class_getInstanceMethod() 获取某个类实例的方法, 如果该类实例没有此方法, 则返回NULL 参数解释 class_getInstanceMethod(Class cls, SEL name) cls : 获 阅读全文
posted @ 2017-06-21 21:10 洒水先生 阅读(495) 评论(0) 推荐(0) 编辑