
获得徽章 6
- 错误处理的推荐实践:
分类:
- 统一分类的错误字典。如HTTP的状态码
- 同类错误的定义最好是可以扩展的。
- 定义错误的严重程度。Fatal(重大错误),Error(资源或需求得不到满足)
- 错误日志的输出最好使用错误码(数字或关键字),而不是错误信息。(这样,会非常有利于日志分析软件进行自动化监控,而不是要从错误信息中做语义分析。)
优化:
- 处理错误时,总是要清理已分配的资源。
- 不推荐在循环体里处理错误
- 不要把大量的代码都放在一个 try 语句块内。
- 向上尽可能地返回原始的错误。
- 不要使用异常捕捉这样的方式来处理业务逻辑,而是应该用条件判断。
管理:
- 忽略错误最好有日志。
- 对于同一个地方不停的报错,打出一个错误以及出现的次数。
- 对于同类的错误处理,用一样的模式。比如,对于null对象的错误,要么都用返回 null,加上条件检查的模式,要么都用抛 NullPointerException 的方式处理。
- 尽可能在错误发生的地方处理错误。
- 为你的错误定义提供清楚的文档以及每种错误的代码示例。展开赞过评论1 - <meta/>标签常见用法:
`charset` 设置解析字符集
<meta charset="UTF-8" >
`http-equiv` 表示执行一个命令,可以不需要name属性
<!--使用最新浏览器-->
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<!--设置内容类型-->
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
其他常用命令
- content-language 指定内容的语言;
- default-style 指定默认样式表;
- refresh 刷新;
- set-cookie 模拟 http 头 set-cookie,设置 cookie;
- content-language 指定内容的语言;
`name + content` name 表示元信息的名,content 则用于表示元信息的值。
<!--移动端,禁用缩放设置,设定宽度为设备宽度-->
<meta name="viewport" content="width=device-width,minimum-scale=1.0,initial-scale=1.0,maximum-scale=1.0, user-scalable=no"/>
<!--多核浏览器渲染引擎设置:极速模式,兼容模式,IE模式。只能为3者之一-->
<meta name="renderer" content="webkit|ie-comp|ie-stand">展开赞过评论1 - CSS at-rule 规则归纳
@page 规则用于在打印文档时修改某些CSS属性
@namespace 跟 XML 命名空间配合的一个规则,表示内部的 CSS 选择器全都带上特定命名空间。
@viewport 设置视口的一些特性,多数时候被 html 的 meta 代替
常用:
@charset "utf-8"; 最前面
@import url("s.css")/"s.css";
@support 检查环境的特性
@media
@keyframes
@fontface
@counter-style 定义列表项的表现
@counter-style triangle {
system: cyclic;
symbols: ‣;
suffix: " ";
}展开等人赞过评论5 - # 架构设计
架构设计的思维和程序设计的思维差异很大。**架构设计的关键思维是判断和取舍,程序设计的关键思维是逻辑和实现。**
## 系统与子系统
系统泛指由一群有**关联**的个体组成,根据某种**规则**运作,**能完成**个别元件不能单独完成的工作的群体
子系统也是由一群有关联的个体所组成的系统,多半会是更大系统中的一部分。
## 模块与组件
**模块和组件都是系统的组成部分,只是从不同的角度拆分系统而已。**
- 从**逻辑**的角度来拆分系统后,得到的单元就是“**模块**”,目的**职责分离**
- 从**物理**的角度来拆分系统后,得到的单元就是“**组件**”,目的**单元复用**
## 框架与架构
**框架的两种释义:**
1. 框架是组件规范
2. 框架是提供基础功能的产品
**软件架构指软件系统的顶层结构**
- 架构需要明确系统包含哪些“个体”
- 架构需要明确个体运作和协作的规则
- "顶层结构”,可以更好地区分系统和子系统展开等人赞过评论16 - # 架构设计架构设计的思维和程序设计的思维差异很大。**架构设计的关键思维是判断和取舍,程序设计的关键思维是逻辑和实现。**
## 系统与子系统
系统泛指由一群有**关联**的个体组成,根据某种**规则**运作,**能完成**个别元件不能单独完成的工作的群体
子系统也是由一群有关联的个体所组成的系统,多半会是更大系统中的一部分。
## 模块与组件
**模块和组件都是系统的组成部分,只是从不同的角度拆分系统而已。**
- 从**逻辑**的角度来拆分系统后,得到的单元就是“**模块**”,目的**职责分离**
- 从**物理**的角度来拆分系统后,得到的单元就是“**组件**”,目的**单元复用**
## 框架与架构
**框架的两种释义:**
1. 框架是组件规范
2. 框架是提供基础功能的产品
**软件架构指软件系统的顶层结构**
- 架构需要明确系统包含哪些“个体”
- 架构需要明确个体运作和协作的规则
- "顶层结构”,可以更好地区分系统和子系统展开评论点赞 - # 如何获得技术领导力
## 扎实的基础技术
**编程部分**
- C 语言
- 编程范式
- 算法和数据结构
**系统部分**
- 计计算机系统原理:CPU 的体系结构(指令集 [CISC/RISC]、分支预测、缓存结构、总线、DMA、中断、陷阱、多任务、虚拟内存、虚拟化等),内存的原理与性能特点(SRAM、DRAM、DDR-SDRAM 等),磁盘的原理(机械硬盘 [盘面、磁头臂、磁头、启停区、寻道等]、固态硬盘 [页映射、块的合并与回收算法、TRIM 指令等]),GPU 的原理等。
- 操作系统原理和基础:进程、进程管理、线程、线程调度、多核的缓存一致性、信号量、物理内存管理、虚拟内存管理、内存分配、文件系统、磁盘管理等。
- 网络基础
- 数据库原理
- 分布式技术架构
## 非同一般的学习能力
- 学习的信息源
- 与高手交流
- 举一反三的思考
- 不怕困难的态度
- 开放的心态
## 坚持做正确的事
- 提高效率的事
- 自动化的事
- 掌握前沿技术的事
- 知识密集型的事
- 技术驱动的事
## 不断得高对自己的要求标准
- 敏锐的技术嗅觉
- 注重落地实践,学以致用
by 耗子叔展开等人赞过评论12