对话,交谈后,产生了效果,对事情的发展有影响了,叫做关键对话 这是一本教人怎么沟通的书籍。 书中列举了不少有助于对话的方式方法。 1.极怒时勿与人书,极喜时勿予人物。 在很生气时,不要与人书信,交谈,自己先冷静。 在很开心时,不要随便答应赠与别人东西。 安全对话,气氛缓和的方法: 对自己强调对话目的,时刻保持尊重。 2.从心开始,把心管好。 回归事情本身,我们的痛苦,不是由他人引起。 A,事情发生了;B,你的看法;C,你的心情怎么样? 我们不应该总是执着的追求改变A,来达到C心情的改变,其实许多时候,应该改变的是B你的看法。 3.对话前,问自己几个问题 a.我希望对话达成目标是什么? b.希望对方达成的目标是什么? c.希望达成双方共同的目标是什么? d.为达成以上目标,我要怎么做? 4.做个双核的对话人 一核处理对话内容,一核处理谈话气氛(需要优先处理)
转义字符 . $ ^ { [ ( | ) * + ? \ 字符匹配 [character_group] 匹配 character_group中的任何单个字符。 [^character_group] 匹配不在character_group中的任意单个字符匹配。 [first-last] 匹配从first到last的范围中的任意单个字符匹配。 . 匹配除\n之外的任意单个字符。 \w 匹配任何单词字符,等同于[A-Za-z0-9_]。 \W 匹配任何非单词字符。 \s 匹配任何空白字符。 \S 匹配任何非空白字符。 \d 匹配任何十进制数字。 \D 匹配不是十进制数的任意字符。 定位点 ^ 默认情况下,必须从字符串的开头开始匹配;在多行模式中,必须从该行的开头开始。 $ 默认情况下,匹配必须出现在字符串的末尾,或在字符串末尾的 \n 之前;在多行模式中,必须出现在该行的末尾之前,或在该行末尾的 \n 之前。 分组构造 分组构造描述了正则表达式的子表达式,通常用于捕获输入字符串的子字符串。 (子表达式) 捕获匹配的子表达式并将其分配到一个从 1 开始的序号中。 (?<名称>子表达式) 将匹配的子表达式捕获到一个命名
URI匹配方式 1.前缀匹配 无修饰符: 前缀匹配 =: 精确匹配 ^~: 前缀匹配,与无修饰符的区别是不再匹配正则表达式 2.正则表达式匹配 ~*: 大小写不敏感 ~: 大小写敏感 匹配优先级(顺序) 1.首先按照最长匹配原则校验前缀匹配方式的location。 如果匹配到的location带有修饰符^~或=,则不再进行第二步匹配,直接应用该location。 如果匹配到location暂时先记下来,继续进行第二步。 2.然后按配置文件里的顺序依次校验正则表达式匹配方式的location。 如果匹配到location就停止继续校验并且应用该location。 如果未匹配到location就应用第一步前缀匹配方式匹配到的location。 Location示例 location = / { root /directory/of/web/static/files; try_files $uri $uri/ /index.html; index index.html; } location /api/ { proxy_pass your_api_address; } location / { root /dire
字符串查询 输出参数为Int类型,而非String.Index类型,更易理解 public extension String { func indexOf(value: Character) -> Int? { if let index = self.firstIndex(of: value) { return self.distance(from: self.startIndex, to: index) } else { return nil } } func lastIndexOf(value: Character) -> Int? { if let index = self.lastIndex(of: value) { return self.distance(from: self.startIndex, to: index) } else { return nil } } } 子字符串提取(substring) 输入参数采用Int类型,而非String.Index类型,编码更加简洁。同时处理了索引越界问题。 public extension String { func substring(startI
Designated Initializers和Convenience Initializers Rule 1 A designated initializer must call a designated initializer from its immediate superclass. Rule 2 A convenience initializer must call another initializer from the same class. Rule 3 A convenience initializer must ultimately call a designated initializer. Safety check 1 A designated initializer must ensure that all of the properties introduced by its class are initialized before it delegates up to a superclass initializer. As mentioned above, the memory
系统目录 缓存目录、下载目录、文档目录 public static var cachesDirectory: URL? { get { return FileManager.default.urls(for: .cachesDirectory, in: .userDomainMask).first } } public static var downloadsDirectory: URL? { get { return FileManager.default.urls(for: .downloadsDirectory, in: .userDomainMask).first } } public static var documentDirectory: URL? { get { return FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first } } 获取文件/目录大小 public static func sizeOf(file: URL) -> Int? { if !File.exists(file: f
标准格式ES256私钥生成 openssl ecparam -genkey -name prime256v1 -noout -out es256_private_key.pem 生成的标准格式es256私钥示例 //codefile:es256_private_key.pem -----BEGIN EC PRIVATE KEY----- MHcCAQEEIAhaV62YXNexj9/GY9EUcz25G69/afOiF2Vh0CxYlKRvoAoGCCqGSM49 AwEHoUQDQgAEuXR/yRJaNAAMGC0gaB/5H9f8ySyN5gGP3pUUotZq5UwrFTufXCG3 QC0rLKQpqy8t1/GQU+S2Hsrwf/PvB/o7KQ== -----END EC PRIVATE KEY----- 将标准格式ES256私钥转成PKCS8格式ES256私钥 openssl pkcs8 -topk8 -nocrypt -in es256_private_key.pem -out es256_pkcs8_private_key.pem 生成的pkcs8格式es256私钥示例 //codefi
第 1 题 在程序执行过程中,高速缓存(Cache)与主存间的地址映射由( ) (A) 操作系统进行管理 (B) 存储管理软件进行管理 (C) 程序员自行安排 (D) 硬件自动完成 答案与解析 试题难度:容易 知识点:计算机组成与体系结构>Cache 试题答案:[['D']] 试题解析: Cache的概念考查:Cache与主存地址映射由硬件完成。 第 2 题 计算机中提供指令地址的程序计数器PC在( )中。 (A) 控制器 (B) 运算器 (C) 存储器 (D) I/O设备 答案与解析 试题难度:一般 知识点:计算机组成与体系结构>CPU的组成(运算器与控制器) 试题答案:[['A']] 试题解析: CPU子部件分类考查,PC是控制器中的子部件。 第 3 题 以下关于两个浮点数相加运算的叙述中,正确的是( )。 (A) 首先进行对阶,阶码大的向阶码小的对齐 (B) 首先进行对阶,阶码小的向阶码大的对齐 (C) 不需要对阶,直接将尾数相加 (D) 不需要对阶,直接将阶码相加 答案与解析 试题难度:容易 知识点:计算机组成与体系结构>浮点数的表示 试题答案:[['B']] 试题解析: 浮点数运算的过程:对阶→尾数
第 1 题 计算机执行指令的过程中,需要由( )产生每条指令的操作信号并将信号送往相应的部件进行处理,以完成指定的操作。 (A) CPU的控制器 (B) CPU的运算器 (C) DMA控制器 (D) Cache控制器 答案与解析 试题难度:容易 知识点:计算机组成与体系结构>CPU的组成(运算器与控制器) 试题答案:[['A']] 试题解析: CPU的操作控制功能:一条指令功能的实现需要若干操作信号配合来完成,CPU产生每条指令的操作信号并将其送往对应的部件,控制相应的部件按指令的功能进行操作。 CPU的运算器只能完成运算,而控制器用于控制整个CPU的工作。 第 2 题 DMA控制方式是在( )之间直接建立数据通路进行数据的交换处理 (A) CPU与主存 (B) CPU与外设 (C) 主存与外设 (D) 外设与外设 答案与解析 试题难度:一般 知识点:计算机组成与体系结构>输入/输出技术 试题答案:[['C']] 试题解析: 直接主存存取(Direct Memory Access,DMA)是指数据在主存与I/O设备间(即主存与外设之间)直接成块传送。 第 3 题 CPU访问存储器时,被访问数据一般聚集在一个较
第 1 题 在CPU内外常需设置多级高速缓存(Cache),其主要目的是( )。 (A) 扩大主存的存储容量 (B) 提高CPU访问主存数据或指令的效率 (C) 扩大存储系统的存量 (D) 提高CPU访问外存储器的速度 答案与解析 试题难度:一般 知识点:计算机组成与体系结构>Cache 试题答案:[['B']] 试题解析: 在CPU内外的高速缓存是用来解决CPU与内存之间速度、容量不匹配的问题,与外存无关,可以提高CPU访问主存数据或指令的效率,所以B选项正确,D选项错误。 Cache不属于主存,与主存容量无关,所以A选项错误。 Cache容量相对于其他存储层次,量级较小,不能扩大存储系统的存量,所以C选项错误。 第 2 题 某系统的可靠性结构框图如下图所示,假设部件1、2、3的可靠度分别为0.90、0.80、0.80(部件2、3为冗余系统)。若要求该系统的可靠度不小于0.85,则进行系统设计时,部件4的可靠度至少应为( )。 (A) (B) (C) (D) 答案与解析 试题难度:容易 知识点:计算机组成与体系结构>可靠性 试题答案:[['A']] 试题解析: 设部件4的可靠性为x,根据图示,系统整体可靠性