图书介绍

Java编码指南 编写安全可靠程序的75条建议 英文版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

Java编码指南 编写安全可靠程序的75条建议 英文版
  • (美)莫欣达著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115404015
  • 出版时间:2015
  • 标注页数:261页
  • 文件大小:33MB
  • 文件页数:272页
  • 主题词:JAVA语言-程序设计-英文

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Java编码指南 编写安全可靠程序的75条建议 英文版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

Chapter 1 安全1

1.限制敏感数据的生命周期2

2.不要在客户端存储未经加密的敏感数据5

3.为敏感可变类提供不可修改的包装器9

4.确保安全敏感方法被调用时参数经过验证11

5.防止任意文件上传13

6.正确地编码或转义输出16

7.防止代码注入20

8.防止XPath注入23

9.防止LDAP注入27

10.不要使用clone()方法来复制不可信的方法参数31

11.不要使用Object.equals()来比较密钥34

12.不要使用不安全的弱加密算法36

13.使用散列函数存储密码37

14.确保SecureRandom正确地选择随机数种子42

15.不要依赖可以被不可信代码覆写的方法44

16.避免授予过多特权50

17.最小化特权代码54

18.不要将使用降低安全性检查的方法暴露给不可信代码56

19.对细粒度的安全定义自定义安全权限64

20.使用安全管理器创建一个安全的沙盒67

21.不要让不可信代码误用回调方法的特权72

Chapter 2 防御式编程79

22.最小化变量的作用域80

23. 最小化@SuppressWarnings注解的作用域82

24.最小化类及其成员的可访问性84

25.文档化代码的线程安全性89

26.为方法的结果值提供反馈96

27.使用多个文件属性识别文件99

28.不要赋予枚举常量的序号任何特殊意义106

29.注意数字提升行为108

30.对可变参数的类型做编译时类型检查112

31.不要把其值在以后版本里可能会发生变化的常量设置为publicfinal115

32.避免包之间的循环依赖118

33.使用用户自定义的异常而非宽泛的异常类型121

34.尽量从系统错误中优雅恢复123

35.布接口前请谨慎设计125

36.编写对垃圾回收机制友好的代码128

Chapter 3 可靠性131

37.不要在子作用域里遮蔽或者掩盖标识符132

38.不要在一个声明里声明多个变量134

39.在程序逻辑中用有意义的符号常量代表文字值138

40.在常量定义中恰当地表示相互之间的关系142

41.对于返回数组或者集合的方法,用返回一个空数组或者集合来替代返回一个空值143

42.只在异常的情况下使用异常146

43.使用try-with-resources语句安全处理可关闭的资源148

44.不要使用断言来验证不存在的运行时错误151

45.在条件表达式中,第二和第三个操作数应使用相同类型153

46.不要序列化直接指向系统资源的句柄157

47.更倾向于使用迭代器而不是枚举159

48.对于短生存周期、不常用的对象不要使用直接缓冲区162

49.从长生存周期容器对象中移除短生存周期对象163

Chapter4 程序的可理解性167

50.谨慎使用视觉上有误导性的标识符和文字167

51.避免歧义重载变参方法171

52.要避免使用带内错误指示器173

53.不要在条件表达式中进行赋值175

54.请使用大括号把if、for或while代码体括起来178

55.不要直接在if、for或while条件语句后面加分号180

56.在每一个case分支的代码块中加上break语句181

57.避免不当的计算循环计数器183

58.使用括号表示操作的优先级186

59.不要对文件的创建做任何假设189

60.做浮点运算前把整数转换为浮点数191

61.确保对象的clone()方法中有调用super.clone()194

62.保持注释的一致性和可读性196

63.检测并移除冗余的代码和值198

64.尽量保证逻辑完备202

65.避免有歧义的重载或者误导性的重载205

Chapter 5 程序员的常见误解209

66.不要假设使用volatile关键字声明引用可以保证引用所指对象的安全发布209

67.不要假设sleep()、yield()或getState()方法提供了同步语义216

68.不要假设对整数做取余运算总是返回正整数220

69.不要弄混抽象对象的相等性和引用的相等性222

70.理解按位运算符和逻辑运算符之间的差异225

71.理解加载字符串时如何做特殊字符转义228

72.不要使用重载的方法来区分运行时类型231

73.不要弄混引用的不可变性和对象的不可变性234

74.谨慎使用序列化方法writeUnshared()和readUnshared()239

75.不要试图通过把本地引用变量设置为nul l来帮助垃圾收集器243

Appendix A Android245

术语表249

参考文献255

热门推荐