【提升技能必备】这几本Android高级进阶的好书值得一看-程序员宅基地

技术标签: 面试  移动开发  ffmpeg  

版权声明:本文为博主原创文章,未经博主允许不得转载。https://www.jianshu.com/p/21ca5bbeff11

转载请标明出处:
https://www.jianshu.com/p/21ca5bbeff11
本文出自 AWeiLoveAndroid的博客


Android开发的书籍有很多,下面简单的就我看过的感觉写的很全面,很深入,很有启示意义的几本书推荐给大家,希望大家在闲暇之时也能买来看看。(只是介绍书籍,想买的自己百度书名。别误会。)当然如果你觉得哪本书不好,你也可以不去阅读。我只是起一个推荐作用。

【tips】 我相信看到这篇博客的都是热爱学习的人。

我特别不喜欢那些故步自封,自以为是,只是也仅仅是会写app,以为会写几个app就6的不行的那些人。

我希望大家不要做这样的人,Android技术发展很快,希望大家多多学习,才能不被淘汰,千万不要做上面那些人。


【好消息】我的微信公众号正式开通了,更多干货都在里面,请大家关注一下吧!
关注一下我的公众号吧

题外话:想入门Android的推荐看一下以下5本书:

  • 第一行代码2 Android(第二版) 郭霖 著
  • Android开发进阶 从小工到专家 何红辉 著
  • Android进阶之光 刘望舒 著
  • Android开发艺术探索 任玉刚 著
  • Android群英传 徐宜生 著

以上几本书这里就不具体介绍了,这不是重点!!!!别钻牛角尖!这里只是顺便提一下!
↓下面详细介绍的高级进阶的这几本书的详细讲解那个才是正题!!!!


下面才是我要推荐的Android高级进阶值得一看的好书:↓(以下才是本文要讲解的重点内容!!!)

▼ 目录
  • 一、设计模式有关书籍
  • 二、与Android密切有关的语言书籍
  • 三、性能优化有关书籍
  • 四、数据结构和算法有关书籍
  • 五、架构有关书籍
  • 六、NDK开发有关的书籍
  • 七、面试有关的书籍
  • 八、职场和职业发展有关书籍

一、设计模式有关书籍

(1)Android 源码设计模式解析与实战 第2版

(2)O'Reilly:Head First设计模式(中文版)

《O'Reilly:Head First设计模式(中文版)》趋近完美,因为它在提供专业知识的同时,仍然具有相当高的可读性。本书共有14章,每章都介绍了几个设计模式,完整地涵盖了四人组版本全部23个设计模式。

(3)设计模式 ---- 可复用面向对象软件的基础

《设计模式:可复用面向对象软件的基础》 自1995年出版以来,本书一直名列各大书店销售榜前列。这本书是引导读者走出软件设计迷宫的指路明灯,凝聚了软件开发界几十年设计经验的结晶。四位面向对象领域专家精心选取了具价值的设计实践,加以分类整理和命名,并用简洁而易于重用的形式表达出来。本书已经成为面向对象技术人员的圣经和词典,书中定义的23个模式逐渐成为开发界技术交流所必备的基础知识和语汇。

image.png

二、与Android密切有关的语言书籍

(1)深入理解Java虚拟机

本书共分为五大部分,围绕内存管理、执行子系统、程序编译与优化、高效并发等核心主题对JVM进行了全面而深入的分析,深刻揭示了JVM的工作原理。

(2)Android Gradle权威指南

基于新的AndroidGradle,一本由浅入深讲解AndroidGradle开发的书。对Gradle基础、Groovy基础、Gradle插件、AndroidGradle构建、基于AndroidGradle的单元测试和持续集成等做循序渐进的讲解。在讲解的过程中融入作者在项目中遇到的问题、解决问题的思路以及方法。

(3)实战Gradle

《实战Gradle》(Gradle in Action)全方位地讲解了Gradle 工具相关的知识,包括Gradle 的基本识、自动化构建的基本概念和实践,以实际案例的方式解释如何使用Gradle 进行软件项目构建。书中还介绍了一些解决软件开中常见问题的实践,如多语言、多项目构建,Gradle 在持续集成和持续交付中的应用,Gradle 构建JVM 其他语言,以及Gradle 集成JavaScript 构建等。

(4)Kotlin程序开发入门精要

书+视频学习+学习效果测试+开发闯关测试+项目实战,贴心跟踪读者学习效果,学习Kotlin这一本就够!
  基于新的Kotlin版本
  一本全程视频陪伴,贴心跟踪初学者学习效果的Kotlin开发书
  赠送近70小时视频课程,包括Kotlin和Android开发,供读者学习使用
  通过Kotlin开发题库提供大量的测试题以及过关系统,读者可以用通关的方式更有效地学习书中的知识,提高学习的效率

(5)React Native移动开发实战

这是一本React Native入门书籍,适当地介绍了一些原理性的概念,但并不深究,同时本书提供的不少案例,也将快速带领你进入React Native的世界。

本书全面详尽地介绍了React Native框架的方方面面,内容涵盖React Native基础知识、环境搭建与调试、开发基础、常用组件、常用API、组件封装、网络与通信、混合开发、热更新与打包部署,以及两个实际案例的完整开发教程。这些丰富的内容不仅能让读者了解这款框架中涉及的各类概念,还能指导读者开发实践。


三、性能优化有关书籍

(1)移动APP性能评测与优化

腾讯公司TMQ专项测试团队倾情奉献的研究成果,打造优秀移动应用的*佳实践。体系化地介绍了移动应用性能评测与优化的方方面面,涉及内存、电量、流畅度、导航、网络优化和安装包瘦身等。

(2)Android应用性能优化最佳实践

腾讯音乐Android开发总监10余年移动开发经验总结,从UI、内存、存储、稳定性、省电、安装包大小6个维度深入总结腾讯的性能优化实践。

(3)腾讯Android自动化测试实战

腾讯官方移动品质中心(TMQ)撰写,为你揭示QQ浏览器、应用宝、腾讯地图等多款亿级APP的自动化测试方法与精髓。

(4)Android移动性能实战

本书的作者是来自腾讯 SNG 专项测试团队的工程师们,他们负责手机 QQ、QQ 空间、QQ 音乐等的性能评测与优化工作,在 App 的资源类性能、交互类性能的分析与优化上挖掘很深,累积了不少案例和经验。

本书从资源类性能中的内存、CPU、磁盘、网络、电量和交互类性能中的流畅度、响应时延,多个性能测评和优化的方向出发。详细讲解原理、概念、专项工具使用的场景和对应的使用方法,同时提炼总结不同类型的性能缺陷和对应的排查手段、定位方法和解决方案,还会帮助读者从全新的角度学习如何应对专项测评要面对的两个基础问题:UI 自动化测试和竞品测试。

(5)高性能Android应用开发

本书正是Android性能方面的关键性指南。全书共8章,主要从电池、内存、CPU和网络方面讲解了电池管理、工作效率和速度这几个方面的性能优化问题,并介绍了一些有助于确定和定位性能问题所属类型的工具。同时也会探讨开发人员面临的一些主要问题,进而提出一些可行的补救措施。


四、数据结构和算法有关书籍

(1)编程珠玑(第2版 修订版)

20余年畅销不衰计算机科学的不朽经典,伟大的计算机科学著作之一,程序员推选的心爱计算机图书,讲解如何正确选择和高效地实现算法,基于C和C++语言编写。

(2)程序员代码面试指南:IT名企算法与数据结构题目最优解

这是一本程序员面试宝典!它对IT名企代码面试各类题目的解进行了总结,并提供了相关代码实现。针对当前程序员面试缺乏专业题目汇总这一痛点,选取将近200道真实出现过的经典代码面试题,帮助广大程序员的面试准备做到万无一失。

(3)算法之美

《算法之美》这本书围绕算法与数据结构这个话题,循序渐进、深入浅出地介绍了现代计算机技术中常用的40 余个经典算法(包括模式匹配算法、排序算法、散列算法、最短路径算法等),以及回溯法、分治法、贪婪法和动态规划等算法设计思想。本书也系统地讲解了链表(包括单向链表、单向循环链表和双向循环链表)、栈、队列(包括普通队列和优先级队列)、树(包括二叉树、哈夫曼树、堆、红黑树、AVL 树和字典树)、图、集合(包括不相交集等)与字典等常用数据结构。同时,通过对22 个经典问题(包括约瑟夫环问题、汉诺塔问题、八皇后问题和骑士周游问题等)的讲解,逐步揭开隐匿在数据结构背后的算法原理,力图帮助读者夯实知识储备,激活思维技巧,并最终冲破阻碍编程能力提升的重重藩篱。

算法之美

五、架构有关书籍

(1)Android组件化架构

本书首先介绍Android组件化开发的基础知识,剖析组件化的开发步骤和常见问题,探究组件化编译原理和编译优化措施。其次在项目架构上,介绍如何组织团队来使用组件化开发,并将业务和人力进行解耦。最后深入介绍组件化分发技术及运用,探讨组件化架构的演进及架构的思维。

(2)重构 改善既有代码的设计

《重构 改善既有代码的设计》清晰揭示了重构的过程,解释了重构的原理和实践方式,并给出了何时以及何地应该开始挖掘代码以求改善。书中给出了70 多个可行的重构,每个重构都介绍了一种经过验证的代码变换手法的动机和技术。《重构 改善既有代码的设计》提出的重构准则将帮助你一次一小步地修改你的代码,从而减少了开发过程中的风险。

(3)代码整洁之道 Clean Code

《代码整洁之道》作者给出了一系列行之有效的整洁代码操作实践,并辅以来自现实项目的正、反两面的范例。只要遵循这些规则,就能编写出干净的代码,从而有效提升代码质量。《代码整洁之道》阅读对象为一切有志于改善代码质量的程序员及技术经理。书中介绍的规则均来自作者多年的实践经验,涵盖从命名到重构的多个编程方面,虽为一“家”之言,然诚有可资借鉴的价值。


(4)代码整洁之道 程序员的职业素养 The Clean Coder

本书是编程大师“Bob 大叔”40余年编程生涯的心得体会的总结,讲解要成为真正专业的程序员需要具备什么样的态度,需要遵循什么样的原则,需要采取什么样的行动。作者以自己以及身边的同事走过的弯路、犯过的错误为例,意在为后来者引路,助其职业生涯迈上更高台阶。

image.png

(5)App架构师实践指南(基于Android/iOS双平台App架构技术实践图书)

通过这本书不仅可以学习到移动应用的开发技术,更能收获到在实战项目中会用到的各种工程化的知识,是架构师的学习宝典。

本书全面讲解了成为移动应用架构师必备的知识,以及需要学习的技术,主要内容包括:App架构师成长路线、App基础语法系列、App开发工具系列、App SDK使用系列、开源库的选择和使用、App常用模块设计、App架构和重构、App质量和稳定性系列、App性能优化系列、App安全逆向系列、App热门技术、项目管理、产品思维、设计理念、推广运营、打造高效团队、架构师思维等综合技能。

image.png

六、NDK开发有关的书籍

(1)Android C++高级编程 使用NDK

《Android C++高级编程:使用NDK》这本书讲解了如何用AndroidNDK通过原生代码语言去实现自己的Android应用中对性能要求较高的部分。具体介绍了原生应用开发、可用的原生API以及故障排除技术的详细叙述,包括用按步骤的指导和屏幕截图以帮助Android开发人员迅速达到开发原生应用的目的。(这本书很经典,用的是开发工具是eclipse)

(2)FFmpeg从入门到精通

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。

FFmpeg可以用来处理:视频采集、视频格式转换、视频抓图、给视频加水印等功能,一般用于视频开发必不可少的一个库

本书是一本介绍FFmpeg的实战技术指南,全书共10章,分为两个部分。第一部分(1~7章)为FFmpeg的命令行使用篇,介绍了FFmpeg的基础组成部分、FFmpeg工具使用、FFmpeg的封装操作、FFmpeg的转码操作、FFmpeg的流媒体操作、FFmpeg的滤镜操作、FFmpeg的设备操作。第二部分(8~10章)为FFmpeg的API使用篇,介绍了FFmpeg封装部分的API使用操作、FFmpeg编解码部分的API使用操作,FFmpeg滤镜部分的API使用操作,相关操作均以实例方式进行说明,包括新API及旧API的操作。

(3)音视频开发进阶指南(基于Android和ios双平台的实战书籍)

书中首先通过介绍音视频的物理现象与基础概念,帮助读者建立模拟信号到数字信号转化的过程,然后重点介绍了如何在移动端开发音视频项目,其中包括:开发中所需要了解的各种知识,如音视频的解码与渲染,采集与编码,音视频的处理与性能优化等;在此基础上最后综合当下流行的直播场景,介绍如何将书中的已有项目改造、适配成为一个直播产品,进一步帮助读者自由、有效的开发出功能丰富、性能一流的音视频App。


七、面试有关的书籍

(1)技术之瞳 阿里巴巴技术笔试心得

《技术之瞳:阿里巴巴技术笔试心得》是阿里巴巴集团首次官方批露的笔试真题,包括基本原理、题型解析与真题问答三个部分,涵盖了计算机基本原理、数学算法、Web前端开发、数据分析与挖掘、安全和产品等多个方向,范围广、内容系统全面。
笔试题库由阿里巴巴资深技术专家结合多年的工作、面试经验总结提炼而成,具有相当的深度及专业性。阅读本书,不仅是知识的收获,还间接地与技术大牛们做了直观的沟通,了解他们的出题思路与考察要点,并加以消化吸收,这对自己技术能力本身就是一种极大的提升。
此外,《技术之瞳:阿里巴巴技术笔试心得》在题目的表述上结合了阿里巴巴的日常工作场景,读者不仅可以从阅读中享受解题的快感,还能直观地感受到大型互联网公司浓郁的技术氛围与独特文化,为自己跨入大型互联网公司做好充分的技术与思想上的准备。

(2)编程之美:微软技术面试心得

《编程之美:微软技术面试心得》收集了大约60道微软技术面试题,作者试图通过书中妙趣横生的问题和详细的解说以及面试者的各种小故事,告诉读者微软需要什么样的技术人才,重视什么样的能力,如何甄别人才。但它更深层的意义在于引导读者思考,帮助读者重拾通过编程探索未知世界的乐趣。

(3)编程之法:面试和算法心得

《编程之法:面试和算法心得》涉及面试、算法、机器学习三个主题。书中的每道编程题目都给出了多种思路、多种解法,不断优化、逐层递进。本书第1章至第6章分别阐述字符串、数组、树、查找、动态规划、海量数据处理等相关的编程面试题和算法,第7章介绍机器学习的两个算法—K近邻和SVM。
  此外,《编程之法:面试和算法心得》每一章都有“举一反三”和“习题”,以便读者及时运用所学的方法解决相似的问题,且在附录中收录了语言、链表、概率等其他题型。书中的每一道题都是面试的高频题目,反复出现在近5年各大公司的笔试和面试中,对面试备考有着极强的参考价值。

(4)剑指Offer:名企面试官精讲典型编程题(第2版)

《剑指Offer:名企面试官精讲典型编程题(第2版)》剖析了80个典型的编程面试题,系统整理基础知识、代码质量、解题思路、优化效率和综合能力这5个面试要点。

(5)HR不会告诉你的那些面试技巧

面试就好比一场战争,一方使尽浑身解数展现自己的能力,一方手握大权抛出连珠炮似的问题,兵来将挡,水来土掩,好不热闹。要想打赢一场战争,《HR不会告诉你的那些面试技巧》告诉你必须做到以下几点:1.知己知彼,做好充足的战前准备。2.确定战略,根据实际情况灵活改变战术。3.揣测对方心理,和对方进行智与力的抗衡。4.对自己充满信心,保持平稳的心态。


八、职场和职业发展有关书籍

虽然我们是搞Android开发的,但是我们要为时刻有危机意识,为自己的未来发展做一些规划,同时也要掌握一些好的学习方法,不要等到某天找不到工作了才后悔不已。下面这几本书写的不错,可以有一个很好的借鉴,推荐大家去看看。

(1)职场基本功 累死你的不是工作 是工作方法

1.不要忽视那些看起来很细小的工作方法,它们往往可以给你足够的力量,让你在关键时刻一跃而起。
2.以绩效为目标的工作方式已经过时,如果你也想和全球精英一样,实现梦想和价值,从今天开始,你需要一套更全面、更完整的方法来淬炼自己!
3.GOOGLE、麦肯锡、高盛、哈佛精英共通的“基本功”兼顾以下方面:保持“平衡心态”;擅长“计划”;坚持“高效”;看重“人际”;淬炼“自我”。
本书提供的58个工作习惯,将彻底改变累死累活却平庸无为的工作现状!

(2)程序员你伤不起

这本书的作者吉日噶拉(在外企、上市公司工作过,自己也创业失败过,遇到过很多失败挫折,甚至露宿街头,但是最后还是挺过来了),是一个十几年的程序员了,里面介绍了他的相关经历,以及他的一下经验,无论是对刚入门的程序员,还是工作了十年八年的程序员都有一些经验值得借鉴学习。如果你不想去买这本书,我把这本书中的部分精华写了一篇博客分享给大家,希望对大家有帮助!博文地址:https://www.jianshu.com/p/57fd54974d71


最后附一张图:

程序员职业四大象限:,希望对你未来的发展有个更清晰的方向

程序员职业四大象限

【好消息】我的微信公众号正式开通了,关注一下吧!
关注一下我的公众号吧
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_33724659/article/details/89654648

智能推荐

uni-app读取json数据_uniapp解析json-程序员宅基地

文章浏览阅读1.8k次。【代码】uni-app读取json数据。_uniapp解析json

iOS日志及崩溃抓取_ddfilelog-程序员宅基地

文章浏览阅读647次。在日常开发及测试中很容易出现比较难以复现的崩溃,这种bug往往让我们无处下手,日志抓取帮我们很好的解决了这个问题。###DDLog的使用首先可以在pch文件中定义log等级static const DDLogLevel ddLogLevel = DDLogLevelVerbose;在application:didFinishLaunchingWithOptions方法中调用如下代码即可发..._ddfilelog

PAT-A1132_pat a1132-程序员宅基地

文章浏览阅读853次。本题较简单,唯一需要注意的是,后两个得分点,当输入整数为10时,A=1,B=0,A*B=0,此时除数为A*B=0,会造成浮点错误,此种情况需要特判。#includelong long n, num=1,a,b;int len(long long num){ int i=0; while(num){ i++;num/=10; } return i;}int_pat a1132

Service Workers - JavaScript API 简介_service-worker.js-程序员宅基地

文章浏览阅读1.5k次。作者: Felix Gerschau译者:前端小智来源:Felix Gerschau点赞再看,养成习惯本文 GitHub https://github.com/qq449245884/xiaozhi 上已经收录,更多往期高赞文章的分类,也整理了很多我的文档,和教程资料。欢迎Star和完善,大家面试可以参照考点复习,希望我们一起有点东西。service worker 是什么Service Worker 是 Chrome 团队提出和力推的一个 WEB API,用于给 web 应用提供高级的可._service-worker.js

重构改善既有代码的设计(第二版) 第一章 整理_重构改善既有代码的设计第二版pdf-程序员宅基地

文章浏览阅读2.1k次,点赞4次,收藏6次。let plays = { "hamlet": {"name": "Hamlet", "type": "tragedy"}, "as-like": {"name": "As You Like It", "type": "comedy"}, "othello": {"name": "Othello", "type": "tragedy"} };let invoice =..._重构改善既有代码的设计第二版pdf

南大通用数据库(Gbase 8s) 创建UDR外部函数_navicat连接gbase-程序员宅基地

文章浏览阅读1.3k次。在使用 date_format、from_unixtime、to_days、yearweek 函数时,Gbase 8s 数据库不支持,可以使用创建 UDR 外部函数来实现_navicat连接gbase

随便推点

2021年MathorCup数学建模挑战赛C题海底数据中心的散热优化设计建模思路与示例代码_2021mathcupc题-程序员宅基地

文章浏览阅读351次,点赞3次,收藏2次。据统计,全球数据中心每年消耗的电量,占全球总电量的 2%左右,而其中能源消耗的成本占整个 IT 行业的 30%-50%,特别是电子器件散热所需消耗的能量占比极大。目前,国内大数据中心主要建设在内陆地区,预计 2020 年大数据中心年经济体量超过 3000 亿元。但大数据中心建设在陆地上需要占用大量土地,冷却时需要消耗大量的电能和冷却水资源,并花费大量建设成本。由于沿海发达省市数据中心增长迅猛,类似的资源矛盾尤为突出。_2021mathcupc题

通过sftp由本地向Linux上传文件&文件夹_sftp上传文件-程序员宅基地

文章浏览阅读1.8w次,点赞4次,收藏44次。通过sftp由本地向Linux上传文件&文件夹有时候我们需要将本地的一些文件上传到虚拟机的Linux或云服务器中。本文介绍一种比较方便的安全文件传输协议SFTP。本文主要介绍如何使用sftp,具体安装另需百度1. 启用sftp username@ip地址 #username就是目的主机的用户名,ip地址就是目的主机的ip地址2. 上传文件sftp有很多命令,我们可以输入help来查看。下面介绍几个比较常用的命令查看当前本地路径和目的主机路径。当我们想查看当前目的主机的路径使_sftp上传文件

分析STM32G0 SPI外设不能触发RXNE接收标志的原因_串口接收标志位不触发-程序员宅基地

文章浏览阅读1.5k次,点赞4次,收藏10次。今天准备移植STM32F030R8T6的程序到STM32G030C8T6上,程序中用到了硬件SPI外设,因为STM32G0用的HAL+LL库而不是不是标准库,所以我用STM32Cube MX生成了SPI的LL库代码,但是使能SPI后发现硬件怎么都不能触发RXNE接收标志,生成代码如下:void MX_SPI1_Init(void){ /* USER CODE BEGIN SPI1_Init 0 */ /* USER CODE END SPI1_Init 0 */ LL_SPI_Init_串口接收标志位不触发

基于Java的智慧城市实验室系统(源码+文档+包运行)-程序员宅基地

文章浏览阅读737次,点赞14次,收藏18次。互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对实验室信息管理混乱,出错率高,信息安全性差,劳动强度大,费时费力等问题,采用智慧城市实验室主页系统可以有效管理,使信息管理能够更加科学和规范。智慧城市实验室主页系统在Eclipse环境中,使用Java语言进行编码,使用Mysql创建数据表保存本系统产生的数据。

使用mysql数据库、nacos配置中心两种方式实现gateway动态路由_gateway动态路由 数据库 nacos redis-程序员宅基地

文章浏览阅读530次。1、MYSQL实现表结构设计代码设计package com.example.config;import com.alibaba.fastjson.JSON;import com.example.domain.Filters;import com.example.domain.Predicates;import com.example.domain.Routes;import com.example.service.IFiltersService;import com.example.s_gateway动态路由 数据库 nacos redis

永洪BI参数设置:_EXCEL_EXPORT_TYPE_设置导出的excel文件里是否包括dashboard_永洪导出excel报表-程序员宅基地

文章浏览阅读130次。报表导出excel文件时,默认第一页是Dashboard,内容是报表页面的截图。1)_EXCEL_EXPORT_TYPE_ = 0, 导出Dashboard页和其他sheet页;2)_EXCEL_EXPORT_TYPE_ = 1,只导出 Dashboard 页;3)_EXCEL_EXPORT_TYPE_ = 2,只导出sheet页;_永洪导出excel报表

推荐文章

热门文章

相关标签