51Testing独家连载:Android开发进阶—从小工到专家

发表于:2016-6-17 09:11

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:何红辉    来源:51Testing软件测试网原创

分享:
  第7章装点程序"门面"-代码规范 232
  7.1  代码规范的第一个重点-排版 232
  7.1.1  代码缩进 232
  7.1.2  长句分割 233
  7.1.3  一句一行 233
  7.1.4  大括号 233
  7.1.5  空行分隔 234
  7.1.6  空行分隔 234
  7.1.7  数据与函数的排布 235
  7.1.8  修饰词顺序 235
  7.2  注释 235
  7.2.1  类注释 236
  7.2.2  注释的位置 236
  7.2.3  函数的注释 237
  7.2.4  异常的注释 237
  7.3  命名 238
  7.3.1  包的命名 238
  7.3.2  类与接口的命名 238
  7.3.3  函数命名 238
  7.3.4  setter和getter 238
  7.3.5  字段名 239
  7.3.6  字段名 239
  7.4  编码建议 239
  7.4.1  beak语句 239
  7.4.2  覆写时添加@Override 239
  7.4.3  指定集合中的元素类型 240
  7.4.4  显示指明操作符优先级 240
  7.5  小结 240
  第8章让不断升级的系统更好管理-Git版本控制 241
  8.1  Git起源 243
  8.2  Git基本原理 243
  8.2.1  直接记录快照,而非差异比较 243
  8.2.2  近乎所有操作都是本地执行 244
  8.2.3  时刻保持数据完整性 245
  8.2.4  多数操作仅添加数据 245
  8.2.5  文件的3种状态 245
  8.3  Git基本配置 246
  8.4  Git基本命令 247
  8.4.1  进行版本控制的第一步--Git init 248
  8.4.2  常用的版本控制命令--Git status 248
  8.4.3  添加到追踪列表中--Git add 248
  8.4.4  提交--Git commit 249
  8.4.5  查看项目历史记录--Git log 250
  8.4.6  下载程序--Git clone 250
  8.4.7  不同分支--Git branch 251
  8.4.8  签出一个分支--Git checkout 251
  8.4.9  合并分支--Git merge 253
  8.4.10  解决冲突 254
  8.4.11  为版本打一个标签--Git tag 255
  8.4.12  帮助文档--Git help 256
  8.5  项目协作-GitHub 256
  8.5.1  SSH key配置 257
  8.5.2  项目托管--it remote 258
  8.5.3  将项目推送到远程仓库--Git push 259
  8.5.4  更新最代码--Git pull 260
  8.5.5  Giti gnore忽略文件 261
  8.5.6  Fork 加Pull request多人协作模式 262
  第9章开发人员必备的技能-单元测试 267
  9.1  什么是单元测试 267
  9.2  为什么要做单元测试 267
  9.3  不写单元测试的借口 268
  9.4  如何写单元测试 269
  9.4.1  第一个单元测试 269
  9.4.2  Junit简介 272
  9.4.2.1  Junit执行流程 273
  9.4.2.2  Junit的断言和失败提示 273
  9.4.2.3  运行多个测试类--TestSuite 274
  9.5  测试哪些内容 275
  9.5.1  边界条件 275
  9.5.2  覆盖执行路径 275
  9.6  模拟所需的功能模块-Mock
  对象 278
  9.6.1  手动Mock对象 278
  9.6.2  使用Mockito库 279
  9.6.2.1  验证某些行为 280
  9.6.2.2  如何做一些测试桩(Stub) 280
  9.6.2.3  参数匹配器 281
  9.6.2.4  验证函数的确切调用次数、
  最少调用、从未调用 281
  9.6.2.5  确保交互操作没有执行
  在Mock对象上 282
  9.6.2.6  简化Mock对象的创建 282
  9.6.2.7  为连续的调用做测试桩(stub) 283
  9.6.2.8  为回调做测试桩 283
  9.6.2.9  doReturn()、doThrow()、doAnswer()、doNothing()和doCallRealMethod()系列
  方法的运用 283
  9.6.2.10  监控真实对象 284
  9.6.2.11  为下一步的断言捕获参数 285
  9.6.2.12  综合示例演练 285
  9.7  Android中的单元测试 288
  9.7.1  第一个单元测试 288
  9.7.2  使用Instrumentation测试 290
  9.7.2.1  需要Context的测试用例 290
  9.7.2.2  测试Activity 290
  9.7.2.3  测试Service 293
  9.7.2.4  测试ContentProvider 295
  9.8  测试驱动开发(TDD)简介 298
  9.9  小结 300
  第10章六大原则与设计模式 301
  10.1  面向对象六大原则 301
  10.1.1  单一职责原则 301
  10.1.2  里氏替换原则 302
  10.1.3  依赖倒置原则 304
  10.1.4  开闭原则 304
  10.1.5  接口隔离原则 306
  10.1.6  迪米特原则 308
  10.2  设计模式 309
  10.3  避免掉进过度设计的怪圈 310
  10.4  反模式 311
  10.5  小结 311
  第11章使系统适应变化-重构 312
  11.1  为什么要重构 312
  11.2  什么时候重构 313
  11.3  常用的重构手法 313
  11.3.1  提取子函数 313
  11.3.2  上移函数到父类 316
  11.3.3  下移函数到子类 318
  11.3.4  封装固定的调用逻辑 320
  11.3.5  使用泛型去除重复逻辑 320
  11.3.6  使用对象避免过多的参数 322
  11.3.7  重构的支柱--转移函数 324
  11.3.8  将类型码的转为状态模式 326
  11.3.9 什么也不做的对象--NullObject模式 329
  11.3.10  使类保持"苗条身材"--分解"胖"类型 331
  11.4 小结 334
  第12章从码农历练成工程师-综合实战 335
  12.1  项目需求 335
  12.2  第一版实现 336
  12.3  第一版存在的问题与重构 352
  12.3.1  类型重命名 352
  12.3.2  去除重复代码 353
  12.3.3  简化复杂的函数 356
  12.3.4  明确职责与降低耦合 358
  12.4  降低复杂性-MVP架构 362
  12.5  开启单元测试之路-  添加单元测试 367
  12.5.1  创建测试工程 367
  12.5.2  测试网络请求解析类 369
  12.5.3  测试数据库操作类 371
  12.5.4  测试业务逻辑Presenter 374
  12.5.5  模拟对象 375
  12.5.6  更多测试 377
  12.6  小结 378

51Testing软件测试网将在近期对本书部分章节进行独家连载,敬请关注

查看更多《51Testing软件测试网作品系列》书籍:http://www.51testing.com/html/36/category-catid-136.html

44/4<1234
重磅发布,2022软件测试行业现状调查报告~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2023
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号