大小:104.73M
更新时间:23-09-06
系统:Pc
版本:v
第1章 Android的构成基石—四大组件 1 1.1 Activity 1 1.1.1 Activity的构成 3 1.1.2 Activity的4种启动模式 5 1.1.3 FragmentActivity与Fragment 7 1.2 Service与AIDL 8 1.2.1 普通Service 8 1.2.2 IntentService 9 1.2.3 运行在前台的Service 10 1.2.4 AIDL(Android接口描述语言) 11 1.3 Broadcast(广播) 17 1.3.1 普通广播 17 1.3.2 有序广播 18 1.3.3 本地广播 19 1.3.4 sticky广播 19 1.4 ContentProvider(外共享数据) 19 1.5 小结 26 第2章 创造出丰富多彩的UI— View与动画 27 2.1 重要的View控件 27 2.1.1 ListView与GridView 27 2.1.2 数据展示更好的实现—— RecyclerView 32 2.1.3 让页面显示更流畅——ViewPager 33 2.2 必须掌握的最重要的技能— 自定义控件 35 2.2.1 最为自由的一种实现——自定义View 36 2.2.2 View的尺寸测量 38 2.2.3 Canvas与Paint(画布与画笔) 42 2.2.4 自定义ViewGroup 45 2.3 Scroller的使用 46 2.4 让应用更精彩—动画 56 2.4.1 帧动画 57 2.4.2 补间动画 58 2.4.3 属性动画 60 2.4.3.1 属性动画的核心类—— ValueAnimator 60 2.4.3.2 对任意属性进行动画操作—— Object Animator 61 2.4.3.3 实现丰富多彩的动画效果—— AnimatorSet 62 2.4.3.4 动画执行时间——TypeEvaluator与TimeInterpolator 63 2.5 小结 66 第3章 保证App流畅的关键因素— 多线程 67 3.1 Android中的消息机制 67 3.1.1 处理消息的手段——Handler、Looper与MessageQueue 67 3.1.2 在子线程中创建Handler为何 会抛出异常 72 3.2 Android中的多线程 73 3.2.1 多线程的实现——Thread和Runnable 73 3.2.2 线程的wait、sleep、join和 yield 74 3.2.3 与多线程相关的方法——Callable、Future和FutureTask 78 3.2.4 构建服务器应用程序的有效 方法——线程池 81 3.2.4.1 启动指定数量的线程—— ThreadPoolExecutor 82 3.2.4.2 定时执行一些任务——Scheduled ThreadPoolExecutor 85 3.2.4.3 线程池的使用准则 86 3.2.5 同步集合 87 3.2.5.1 程序中的优化策略—— CopyOnWriteArrayList 87 3.2.5.2 提高并发效率—— ConcurrentHashMap 88 3.2.5.3 有效的方法—— BlockingQueue 88 3.2.6 同步锁 89 3.2.6.1 同步机制关键字—— synchronized 89 3.2.6.2 显示锁—— ReentrantLock与 Condition 90 3.2.6.3 信号量Semaphore 93 3.2.6.4 循环栅栏CyclicBarrier 94 3.2.6.5 闭锁CountDownLatch 95 3.2.7 创建异步任务更简单—— AysncTask的原理 97 3.2.7.1 AsyncTask的实现基本原理 97 3.2.7.2 实现一个简单的AsyncTask 105 3.3 小结 108 第4章 HTTP网络请求 109 4.1 HTTP网络请求原理 109 4.1.1 HTTP的请求方式 110 4.1.1.1 GET请求 110 4.1.1.2 POST请求 110 4.1.1.3 PUT请求 111 4.1.1.4 DELETE请求 111 4.1.1.5 HEAD请求 112 4.1.1.6 TRACE请求 112 4.1.1.7 OPTIONS请求 113 4.1.2 HTTP报文格式解析 113 4.1.2.1 响应报文 116 4.1.2.2 常见的请求头部 117 4.1.3 简单模拟HTTP服务器 117 4.2 Android中执行网络请求 126 4.2.1 全面支持HTTP协议—— HttpClient 126 4.2.2 最佳选择——HttpURLConnection 128 4.3 网络框架的设计与实现 130 4.3.1 SimpleNet的基本架构 130 4.3.2 Request类 131 4.3.3 Response类 135 4.3.4 请求队列 136 4.3.5 NetworkExecutor网络执行器 137 4.3.6 执行网络请求的接口—— HttpStack 139 4.3.7 将请求的回调执行到UI线程—— ResponseDelivery 142 4.3.8 手动实现文件上传 144 4.3.8.1 自定义实现MultipartEntity 144 4.3.8.2 SimpleNet中实现文件上传 149 4.4 小结 151 第5章 独特高效的数据存储—SQLite 数据库 152 5.1 SQLite3的基本介绍 152 5.1.1 SQLite前端解析系统 153 5.1.2 SQLite后端引擎 154 5.2 SQLite中的SQL语句 154 5.2.1 创建数据库 154 5.2.2 创建表 154 5.2.3 插入数据 159 5.2.4 select语句 161 5.2.5 update语句 168 5.2.6 delete语句 169 5.2.7 修改表 169 5.2.8 创建索引 170 5.2.9 创建视图 171 5.2.10 创建触发器 171 5.2.11 drop命令 172 5.3 Android中的数据库开发 173 5.3.1 数据库基本类型与接口 173 5.3.2 Android数据库使用示例 177 5.3.3 数据库升级 181 5.3.4 Android中数据库的异步操作 181 5.4 数据库框架ActiveAndroid的使用与 基本原理 184 5.4.1 使用ActiveAndroid 184 5.4.2 数据库升级 188 5.4.3 基本原理 189 5.5 小结 196 第6章 让程序更优秀的技术—性能 优化 197 6.1 布局优化 197 6.1.1 include布局 197 6.1.2 merge标签 201 6.1.3 ViewStub视图 204 6.1.4 减少视图树层级 209 6.2 内存优化 211 6.3 内存泄漏 216 6.3.1 使用 Memory Monitor 216 6.3.2 内存泄漏检测利器—— LeakCanary 218 6.4 性能优化 222 6.4.1 过度绘制 222 6.4.2 Android 图形渲染 223 6.4.3 数据采集和分析工具—— TraceView 227 6.5 小结 231 第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
同类热门
类似软件
android开发入门教程42.02M214人在用随着互联网的时代一步一步向人类走来,如果在短时间内掌握计算机编程有关的技巧,不管到哪里都非常吃香。因此小编特意给用户准备了android编程教程,在这套教程中一共包含了5项学习知识,分别是Android实例与详解、Android网络开发技术实战详解、An
查看android 4游戏编程入门经典pdf3.55M253人在用《android 4游戏编程入门经典》是专为游戏开发的初学者量身打造的一款android开发入门教程,作者[美]Mario Zechner和Robert Green,曾繁贰、于建业和王炜译,清华大学出版社出版。全书最大亮点是:它教你如何从零开始学习and
查看Android开发工具(adt plugin for eclipse)32.07M204人在用adt plugin for eclipse是一个eclipse插件,作为一款超级专业的Android应用程序开发工具,adt plugin for eclipse可以让你快速的建立一个Android项目,创建应用程序的界面,基于Android框架API
查看google android开发入门与实战高清版35.85M165人在用说到google android,它实际上是Google开发的基于Linux平台的开源手机操作系统,包括了操作系统、用户界面、用户程序、移动电话工作所需要的全部软件,并不存在任何以往阻碍移动产业创新的专有权障碍。如果用户想要学会这一技术,光凭间的那的视频
查看Android任务驱动式教程37.84M141人在用Android任务驱动式教程是一本高清pdf格式的电子书,书本以eclipse为集成开发环境,结合作者近年来在手机软件研发和教学中积累的经验,以一个企业级的手机研发项目--手机文件管理器的开发过程为主线,详细介绍了android平台开发的相关知识。另外软
查看轻松学Android开发pdf37M205人在用轻松学Android开发pdf是目前学习Android开发的最好的入门图书,由于Android的持续火爆,关于这方面的图书也是卖得很好。全书以图解的方式显示了如何学习Android编程,拥有282幅教学插图、105个典型示例、455分钟视频教程、以及53
查看android 7.1.1正式版(原生系统)510M2033人在用android 7.1.1正式版,又称之为安卓7.1.1正式版,是谷歌官方推出的最新版本的android原生系统,用户可以在OTA升级,不过目前可以升级的只有谷歌自家的手机和部分原生Android手机,包括Nexus6、Nexus 5X、Nexus 6P
查看android驱动开发与移植实战详解5.14M257人在用android驱动开发与移植实战详解是一本pdf高清版的电子图书,已经附带了pdf福昕阅读器在软件包中,用户可以即下即看。android安卓系统是谷歌公司推出的一款手机系统,是基于linux内核开发的,能够迅速建立手机软件的解决方案。该系统采用了webk
查看疯狂android讲义第3版233.07M310人在用 如何更好的学习android开发?这里小编为广大网友带来了疯狂android讲义第3版pdf下载,pdf高清无水印版,是目前最好的一本介绍Android应用开发的实用图书,曾获评CSDN年度具有技术影响力十大原创图书,作者李刚。 全书介
查看热门标签
网友评论0人参与,0条评论
最新排行
国学大师四库全书电子版1.13Gv2.0简体+繁体版 国学大师四库全书官方版是国学大师系列之一,是一套大型规模的古籍丛书,收录古典书籍1800部5万卷,分为经、史、子、集四大部,总计约4亿字。涉及文学、艺术、历史、地理、科技、蒙学等。注本自动加色,书籍质量比较高全文可复制,全文可朗读或输出成mp3。几
查看声学基础杜功焕pdf7.79M第二版声学基础第二版是一款介绍声学的基础理论图书,由杜功焕、朱哲民、龚秀芬著作,南京大学出版社出版出牌,全书系统地介绍了声学的基础理论,其中包括声的辐射、传播、接收与散射,并适当地介绍了近期活跃的非线性声学基础理论,具体包括质点振动学、 弹性体振动学、声波的基
查看asp.net mvc 5 框架揭秘20.5M蒋金楠 高清扫描版 asp.net mvc 5 框架揭秘是一本ASP.NET MVC框架学习教材,由。net顶级专家蒋金楠编著。本书以消息流向为主线,对新的ASP.NET MVC框架从接收请求到响应回复的整个流程进行了细致而深入的讲解。全书覆盖路由、Controlle
查看C#项目开发实战密码146.78M扶松柏pdf扫描版 C#项目开发实战密码是一本C#语言的实战指导学习书籍,由扶松柏编著。本书内容十分丰富,每一章都采用了一个实例,并用这些实例的具体实现流程来教学。在具体讲解每个实例时,都遵循项目的进度来展开,从接到项目到具体开发,直到最后的调试和发布。内容循序渐进,
查看Spark核心技术与高级应用38.49M于俊 向海pdf扫描版Spark核心技术与高级应用是Spark领域少有的专注于核心原理与深度应用的著作,由科大讯飞和百分点科技的4位大数据专家撰写。全书不仅细致介绍了Spark的程序开发、编程模型、作业执行解析等基础知识,而且还深度讲解了Spark SQL、Spark ML、
查看chrome扩展及应用开发37.16M李喆pdf完整版chrome扩展及应用开发是一本介绍谷歌浏览器扩展和应用开发指导书籍,由李喆编著。全书主要介绍了Chrome平台开发的概念、扩展与应用的区别及其常用功能,并结合具体场景给出了实例。全书共十章,分为两大部分,分别是扩展和应用。本书由浅入深,条理清晰,再结合
查看hadoop核心技术pdf44.83M翟周伟pdf扫描版Hadoop核心技术是由百度Hadoop技术专家翟周伟撰写的一本Hadoop技术学习书籍,全书结合了百度大数据实践,直击企业痛点,主要对Hadoop的基本原理和优化配置由浅入深进行了详细分析,最后通过实战案例进一步讲解分析。本书对HDFS、MapRedu
查看actionscript大型网页游戏开发23.91Mactionscript大型网页游戏开发是一本pdf高清扫描版的电子图书,作者:jobe makar,李鑫、马舜翻译。全书阐述了多人网页游戏的许多基本概念,以及如何使用actionscript将其实施到项目中,读完本书,读者将掌握:如何连接用户来实现实时
查看jsp应用开发详解 第三版41.09M刘晓华pdf扫描版jsp应用开发详解 第三版是一本JSP应用开发详解书籍,由刘晓华等人编著。本书结合JSP和Servlet的最新规范,从基本的语法和规范入手,以经验为后盾,以实用为目标,以实例为导向,以实践为指导,深入浅出地讲解了JSP开发中的种种问题。以精简的内容介绍了
查看数据库索引设计与优化pdf83.37M扫描版数据库索引设计与优化是数据库领域的的重要理论大作,是每一个从事数据库领域工作者必读的一本书,由(美)拉赫登迈奇(Tapio Lahdenmaki),(美)利奇(Michael Leach) 著,曹怡倩,赵建伟翻译,电子工业出版社出版。全书花了大量的篇幅讲
查看