Java后端工程师修炼之道
  • 推荐5
  • 收藏25
  • 浏览7.1K

Java后端工程师修炼之道

杭建 , 王启军 (作者) 

  • 书  号:978-7-121-33501-3
  • 出版日期:2018-03-27
  • 页  数:404
  • 开  本:16(185*235)
  • 出版状态:上市销售
  • 维护人:张春雨
电子书 ¥59.00
购买电子书
纸质版 ¥89.00
Java开发一直是当前互联网领域最火热的开发技能之一,Java工程师也一直是需求量非常大的开发职位。本书主要针对一名合格的Java工程师的必备技能做了大纲性的总结和阐述。本书内容包括了工程化、常用开发框架、数据存储、数据传输、Java编程高级知识、性能优化、安全技术等内容,基本涵盖了Java工程师需要掌握的绝大部分技能点。
打造后端技术栈新高度 底层提升系统架构能力
推荐序一
Hey!新来的读者,为了吸引你的注意力我真是煞费苦心,但最终还是没能写出一句特别吸引眼球的话来,毕竟写序的我不是标题党出身。此刻我真的非常能理解你拿到新书之后那渴望知识的心情,所以你恨不得一个字的“序”也不要看到,直接到达“最有价值”的知识点。但作为一名资深转业码农(对!你没看错,是“转业”,不是“专业”)还是想说一句,你先看完序,5分钟后到达知识的战场,会更稳!
相信你已经在看“序”了,那么我们来说点正经事。
你的知识体系的养成有3个关键阶段:看山是山,看山不是山,看山还是山。本书的适用人群是“看山不是山”的那些人,如果你恰好处于这个阶段,恭喜你!书钱没白花。
Java是一门非常容易入门的语言,初学者经过初期的学习之后基本能掌握DEMO级别的编程应用。相信读者你已经度过了这个阶段,但是Java庞大的体系可能会把你绕晕,又或者你还没看到Java的生态系统有多么复杂。此时,你需要本书。从事程序员这个工作,到比较高阶的时候,其实是不挑语言的,语言只是工具,而你可以在纷繁复杂中游刃有余。但几乎每一位高手都是先深入一个领域,再横向发展的。你可以不用着急后续的横向发展,先坚定自己学习Java的信心!因为,从广泛的应用场景、顶级的开源生态、未来可期的薪水和职位来说,Java都是非常不错的选择。
敲黑板,画重点!下面来解释一下,为什么本书面向的是“看山不是山”的人群。在度过Java的入门期之后,会有一个烦恼,那就是面对Java这么庞大的体系,我们究竟应该学习什么?选择方向,往往比努力更重要!是使用J2SE编写桌面程序?是使用J2ME编写嵌入式应用?还是使用J2EE编写企业级应用?这些是我们那个泛黄的年代特有的烦恼。而现在的烦恼可能是学Android?还是学Java后端?即便大方向你已经十分坚定,而且选择了Java后端编程,但因为复杂的知识体系和Google发布的各种教程文档,眼前看到的已经不再是清晰的山脉,而是一片迷雾。此时,你需要本书,因为它给你指明了努力的方向。
本书的结构、阐述的方式和大部分的“指南”书籍有较大的区别,本书是以笔记和要点的形式进行呈现的,用现在的话说就是捞干货。本书涵盖的知识,是以现代工程实践中的实际案例出发来组织的,所以知识点范围非常广泛,每一个点都对最关键的“Best Practice”简明扼要地进行了说明。你在阅读本书的时候需要一些相关经验,不然无法跟上作者的节奏,建议在有一定的知识准备后再阅读本书,这样你会受益匪浅。从另外一个角度看,在你有了一定的基础积累之后,本书可以帮助你全面地了解一个现代化的最先进的工程实践是怎样的。本书讲述了目前行业中最常用的,经过了实践的工程方案,这将是你快速进阶的最佳指引。
——孙建,随身云(中华万年历)联合创始人& CEO

推荐序二
2013年,我和本书作者的接触是从基于网易的一个大型互联网应用合作开始的,我见证了从第一行代码到整个系统服务于亿级用户的过程,并且相信这种经历对开发者来说是一笔巨大的财富,其中大量的开发和实战经验都会在本书中得到充分的体现,相信读者能从书中直接领略到丰富的实战知识。在与本书作者的合作过程中,其对Java技术的热爱与追求,对问题刨根问底,直到理解透彻、灵活应用,这些都令我印象深刻。这些年,我与本书作者一直保持沟通交流、相互学习,他将近十年的实战经验沉淀于本书以实现对后端技术的探索、布道,非常值得开发者与近高窗卧听秋。
后端技术涉及内容非常广泛,Java语言也是互联网开发行业使用的主流语言,相信后续也将继续流行很长一段时间,而本书作者也一直从事Java后端开发工作。在本书中作者比较系统地从总体上描述了后端技术相关的理论知识,包括基础设施、网关服务及框架选型等基本原则,然后以实际经验进行示例说明,接着详细梳理了Java的后端技术,相信读者读完本书后会更全面地理解后端技术。互联网的业务建设需要不同角色的开发者共同协作完成,因此,系统工程化是开发者首先要共同遵守的规范或约定,包括代码规范、版本管理和代码质量检查等。
开发框架的选型进一步地为工程化提供了基础,也能加速推进互联网开发,尽管是否重复造轮子是一个恒久的话题,但是没有永远的银弹,只要在合适的时间里根据团队的能力选择合适的技术框架就好。一般来讲,目前常用的框架包括基本的依赖注入、AOP、事务管理、连接池管理、数据操作、日志服务等,在众多的框架中,本书作者选用目前在Java领域使用最广泛的Spring做深入的分析,详细地说明各组件的基础知识、基本原理和实际使用案例,最难得的是把较多开发者遇到的坑都用真实的示例进行了说明,可以帮助开发者快速地跳过这些伤心地带,同时也把最佳实践画龙点睛地带给开发者。
数据存储无疑是所有系统应用中非常重要的一环,应用的场景用例也和数据库的选型有着极其重要的关系,开发者选择关系型数据库还是非关系型数据库是需要根据软件成本与人力成本来进行权衡的,比如选择MySQL、Oracle等开源或商业的数据库。本书重点从数据库的基础知识、索引和表优化等方面以详尽的示例为更好地选择数据库的存储类型提供了更多的知识。
早期的关系型数据库一般能满足数据达到一定规模的企业的需求,而在互联网业务领域,特别是移动互联网领域内的元数据或者日志数据等,达到亿数量级别是很常见的,这时通常使用非关系型数据库,在非关系型数据库里使用非常多的有MongoDB、HBase等分布式数据库系统。作者在自身的企业开发实践中,得到了大量的使用经验和最佳实践。为了加速后端应用,缓存热数据是加速业务、提高业务性能、提升用户体验的重要手段,通过使用本地缓存、远程缓存进行数据加速、数据预热或提高数据的命中率,是开发者在应用开发的过程中常会遇到的场景。
“路漫漫其修远兮,吾将上下而求索”,后端技术每年都在不断发展,所用技术也有变化,近些年Java语言的发展速度不那么快了,但是总体是在不断前进发展的,本书作者带领的团队一直深耕此领域并希望通过本书为技术开发人员带来更多帮助。
——尧飘海,网易云基础服务(蜂巢)首席架构师

前言
目前互联网行业如火如荼,进入这个行业的技术人员也越来越多。对于研发来说,从工程角度其主要分为前端工程师、客户端工程师(又分为iOS和Android工程师)、后端工程师、算法工程师等职位。本书所说的Java工程师指的是以Java作为主要开发语言的后端工程师。
笔者从2008年还未毕业时做一些小的项目至今,做后端开发已经有差不多10年时间。经历过刚学Java时的迷茫,第一次写出Java程序时的激动,第一次写出一个Web系统的醍醐灌顶,一直到接触Java更底层的东西,总的来说对Java有了系统性的认识,对后端技术体系有了宏观的感受。这期间,笔者用过各种各样的编程语言,尝试过各种开源软件,挖过各种坑,也填过各种坑。针对后端技术来说,笔者认为自己的这些知识体系,还是有一定价值的。
此外,还记得当笔者毕业后进入第一家公司时,入职培训的课程虽然不难,但确实有种恍然大悟的感觉。业界的最佳实践和自己在学校里学到的、使用到的知识,差别还是非常大的。直到后来加入现在的这家公司,给新老员工做过一系列后端技术的培训课程,在校招的笔试和面试过程中深刻体会到学校与业界脱节之严重,在平时的社招中遇到很多对后端技术缺乏系统性认识、技能点不足的工程师,并且也经常被人问起如何学习Java后端技术,于是就打算将目前后端工程师一些比较主流、前沿的技术以及实际工作中会用到的技能串联起来,给刚上大学以后打算以Java后端为职业的学生、刚毕业入职的应届生以及初学者们一些入门的指引,使其少走弯路。另外也希望给一些有经验的工程师提供一个参考手册,将零散的知识点串起来,减少在解决某些实际问题时无头绪搜索带来的时间成本,同时也是对自己的一个阶段性总结和查漏补缺。需要注意的一点是,像数据结构、计算机网络等计算机科学基础知识以及Java SE的基本用法,笔者认为是从事程序开发工作的Java工程师应该必备的知识,因此并不包括在内。
本书会针对Java后端开发工作中经常用到的关键技能点做阐述,会尽量覆盖实际工作中需要的所有技能。但由于很多技能并非一两个章节就能完整讲述,因此本书仅做一些实践性的经验总结和阐述,更加详细和深入的学习则需要参考专门的书籍或者官方文档。
本书的大部分内容都来自笔者的博客以及平时工作、学习中的一些自我总结和笔记,记录了笔者进入这个行业以来的一些经验教训和思考。
面向读者
未入门或者刚入门的Java工程师
包括未来以Java后端开发为职业方向的在校学生、刚毕业入职的Java工程师以及未形成知识体系的Java工程师。这类读者通过阅读本书能够对Java工程师的必备技能有一个全局认识,逐步形成自己的Java技术体系。
有经验的Java工程师
有经验的Java工程师可以通过本书查漏补缺,巩固自己的开发技能,进一步完善自身的Java技术体系。
对Java后端开发感兴趣的非Java工程师
非Java工程师可以通过本书了解Java工程师的技能体系,尤其对于其他语言的后端工程师来说,本书的很多内容也是通用的,并不局限于Java开发。
内容概览
第1章 后端技术导言
本章主要从总体上描述后端技术的概念、组成、作用、需要的知识点,并给出了学习后端技术的建议。
第2章 Java项目与工程化
本章主要讲述Java项目与工程化需要掌握的软件、技能等。
第3章 开发框架
本章主要讲述Java后端开发中的一些主流框架的使用方法。
第4章 Spring
本章主要讲述Spring核心、数据操作以及一些常用组件的使用。
第5章 数据存储
本章主要讲述Java应用中数据存储上使用的一些软件、服务等。
第6章 数据通信
本章主要讲述Java应用中数据传输、通信上使用的一些软件、服务等。
第7章 Java编程进阶
本章主要介绍一些Java开发中的高级特性以及在Java开发中非常流行的类库。
第8章 性能调优
本章主要讲述如何对Java应用的性能进行分析和调优,并给出了开发建议。
第9章 安全技术
本章主要对Java开发中常用的加密技术、HTTPS以及防范各种攻击的方案做了阐述。
参考资料
在写作本书的过程以及平时的工作中,笔者阅读、参考过很多书籍,以下是其中具有代表性的一些书籍。对于本书讲述不够深入的地方,可以参考这些书籍进一步学习。
《Effective Java(第2版)》:此书讲解了Java的一些高级特性和技巧。
《Java并发编程实战》:此书是并发编程经典书籍,涵盖了并发编程的各种知识点以及相关理论知识。
《七周七并发模型》:此书讲述了主流的7种并发编程模式。
《深入理解Java虚拟机:JVM高级特性与最佳实践(第2版)》:此书讲解了JVM的内存、GC、字节码、编译器等高级特性和优化实践。
《高性能MySQL(第3版)》:此书讲述了MySQL各种优化技巧,并结合原理给予讲解。
《Redis开发与运维》:此书在原理层面对于Redis的使用、优化做了详尽的描述。
《深入理解Elasticsearch(原书第2版)》:此书讲述了对Elasticsearch的使用、原理和优化技巧。
《Java性能权威指南》:此书是Java性能调优的权威书籍,几乎涵盖了Java调优的方方面面。
《构建高性能Web站点(修订版)》:此书从各种案例出发,讲解了高性能Web站点需要的各种优化技巧、实践经验等。
《白帽子讲Web安全》:此书基本涵盖了Web安全技术的方方面面,包括客户端安全、服务器端安全等。
虽然以上书籍都是非常实用的参考资料,但就笔者自己来看,更为推崇的则是直接通过相关技术的官方文档来学习,这样既能够锻炼自己的英文阅读能力,又能够直面相关技术的第一手文档,避免了在看相关书籍时被一些偶然的纰漏所误导。
此外,上面的《Effective Java(第2版)》和《Java并发编程实战》这两本书都是基于Java的旧版本来写作的,但是里面介绍的很多内容并不过时,尤其是JDK底层源码、设计理论、优化思想等仍然适用于现在的Java开发。
勘误和支持
在本书的写作过程中,笔者一直是战战兢兢的,一直害怕写成那种侃侃而谈却没有实质内容的东西或者传递给读者一些误导信息,因此对于每一个知识点,都是在查阅官方文档以及其他权威资料并经过自己深入思考之后才敢落笔的。但由于笔者知识能力有限,难免有错误和疏漏,希望得到各位读者的理解和指正。
如果在阅读本书的过程中发现错误,请提交到网址https://github.com/superhj1987/pragmatic-java-engineer/issues或博文视点官网本书页面。
同时,请随时注意勘误信息的发布:https://github.com/superhj1987/pragmatic-java-engineer/wiki/Mistakes。
致谢
由于工作以及个人身体等方面的原因,中间数次延期,历时一年多才完成本书。因此首先要特别感谢笔者的父母和妻子,在笔者写作本书的过程中给予了非常大的后勤支持和鼓励,让笔者能够专心地完成写作。
同时要感谢中华万年历的同事们在平时的工作中给了笔者很多启发和思路,感谢公司的设计总监张喜亮抽出时间帮助修饰了一些图片,尤其要感谢CEO孙建在本书写作过程中给予笔者了充分的信任和支持。
还要感谢笔者的前同事,也是笔者刚毕业时的工作导师尧飘海,他在百忙之中审阅了本书并给本书写序;也要感谢前同事张小川、阙杭宁和好友秦绪震、饶洵,他们抽出了宝贵的业余时间校对了本书并给出了很有价值的建议。
最后,感谢电子工业出版社永恒的侠少,他找到我出版本书,并允许我一次次延期。也感谢付睿编辑的辛苦校对和修改,让本书得以顺利出版。
也把本书献给我刚出生的女儿——依依。
联系方式
邮箱:superhj1987@126.com
博客:http://rowkey.me
微博:http://weibo.com/superhj1987

目录

目录

第1章 后端技术导言
1.1?后端基础设施
1.1.1?请求统一入口——API网关
1.1.2?业务应用和后端基础框架
1.1.3?缓存、数据库、搜索引擎、消息队列
1.1.4?文件存储
1.1.5?统一认证中心
1.1.6?单点登录系统
1.1.7?统一配置中心
1.1.8?服务治理框架
1.1.9?统一调度中心
1.1.10?统一日志服务
1.1.11?数据基础设施
1.1.12?故障监控
1.2?Java后端技术概览
1.2.1?软件开发的核心原则
1.2.2?软件开发的软件过程
1.2.3?日常开发常用工具
1.2.4?应用的运行环境
1.2.5?常用第三方服务
1.2.6?计算机基础科学知识
1.2.7?数据处理相关技能
1.2.8?Java编程知识
1.2.9?系统架构演化
1.2.10?典型的部署架构
1.3?如何学习后端技术
1.3.1?扎实的计算机基础知识
1.3.2?知其然更要知其所以然
1.3.3?动手实践
1.3.4?频繁练习
1.3.5?持续学习
1.3.6?自我总结
1.3.7?如何学习一门新技术
1.3.8?总结
第2章 Java项目与工程化
2.1?项目构建
2.1.1?传统构建工具——Ant
2.1.2?主流构建工具——Maven
2.1.3?新兴构建工具——Gradle
2.2?代码版本控制
2.2.1?集中式代码版本管理——SVN
2.2.2?分布式代码版本管理——Git
2.2.3?提交日志的规范
2.3?代码质量保证
2.3.1?使用单元测试保证代码质量
2.3.2?衡量单元测试的标准
2.3.3?开发规范与建议
第3章 开发框架
3.1?依赖注入
3.1.1?JSR-330依赖注入规范
3.1.2?Guice
3.1.3?PicoContainer
3.1.4?Dagger
3.1.5?Spring Framework
3.1.6?循环依赖问题
3.2?对象关系映射
3.2.1?表元数据的映射
3.2.2?CRUD以及属性的查询
3.2.3?查询缓存的使用
3.2.4?结果的映射
3.2.5?规范SQL书写的语句构建器
3.2.6?使用提示
3.3?日志
3.3.1?JDK Logging
3.3.2?Log4j
3.3.3?Log4j2
3.3.4?Logback
3.3.5?统一日志API的门面框架
3.3.6?统一日志框架的使用
3.4?Web MVC
3.4.1?为什么是Spring MVC
3.4.2?Spring MVC的请求处理流程
3.4.3?典型的配置方式
3.4.4?无XML的配置方式
3.4.5?对MVC应用做单元测试
3.4.6?验证Web请求的参数
3.4.7?使用异步Servlet
3.4.8?使用提示
第4章 Spring
4.1?Spring核心组件
4.1.1?Spring的双亲上下文机制
4.1.2?Spring中的事件机制
4.1.3?Bean的初始化和销毁
4.1.4?Bean的动态构造
4.1.5?注入集合、枚举、类的静态字段
4.1.6?面向方面编程——AOP
4.1.7?进阶XML的配置
4.1.8?无XML的配置方式
4.2?Spring数据操作框架
4.2.1?Spring JDBC
4.2.2?Spring Data Redis
4.2.3?Spring Data MongoDB
4.3?Spring Boot
4.3.1?Spring Boot使用示例
4.3.2?Spring Boot的运行原理
4.3.3?Spring Boot的组成模块
4.3.4?小结
4.4?Spring常用组件
4.4.1?表达式引擎——Spring Expression Language
4.4.2?远程过程访问的支持——Spring Remoting
4.4.3?Spring与JMX的集成
4.4.4?定时任务的支持——Spring Quartz
4.4.5?跨域请求的支持——Spring CORS
4.5?总结
第5章 数据存储
5.1?关系型数据库——MySQL
5.1.1?存储引擎
5.1.2?字符集和校对规则
5.1.3?索引的使用
5.1.4?查询缓存的使用
5.1.5?数据同步中的Binlog
5.1.6?事务机制
5.1.7?大表优化
5.1.8?高可用支持
5.1.9?使用提示
5.2?非关系型数据库
5.2.1?KV数据库
5.2.2?文档数据库——MongoDB
5.2.3?列数据库——HBase
5.3?缓存
5.3.1?本地缓存
5.3.2?分布式缓存——Redis
5.3.3?缓存设计的典型方案
5.4?搜索引擎——Elasticsearch
5.4.1?开源全文检索库——Apache Lucene
5.4.2?关键概念
5.4.3?查询的优化
5.4.4?内存的使用优化
5.4.5?开源日志管理方案——ELK
第6章 数据通信
6.1?RESTful架构风格
6.1.1?支持的操作
6.1.2?返回码
6.1.3?资源概念
6.1.4?数据的安全保障
6.1.5?请求的限流
6.1.6?超文本API
6.1.7?编写文档
6.1.8?RESTful API实现
6.2?远程过程调用——RPC
6.2.1?JDK自带的RPC——RMI
6.2.2?Hessian
6.2.3?Thrift
6.2.4?Dubbo
6.2.5?数据的序列化机制
6.2.6?使用提示
6.3?消息中间件
6.3.1?简单消息中间件——ActiveMQ
6.3.2?通用消息中间件——RabbitMQ
6.3.3?日志消息中间件——Kafka
6.3.4?本地消息队列
第7章 Java编程进阶
7.1?Java内存管理
7.1.1?JVM虚拟机内存
7.1.2?垃圾回收理论
7.1.3?常用垃圾回收器
7.2?Java网络编程
7.2.1?常见网络I/O模型
7.2.2?Java网络编程模型
7.3?Java并发编程
7.3.1?并发原理
7.3.2?并发思路
7.3.3?并发工具
7.3.4?并发编程建议
7.4?Java开发利器
7.4.1?Apache工具库——Apache Commons
7.4.2?Google工具库——Guava
7.4.3?最好用的时间库——Joda Time
7.4.4?高效JSON处理库——FastJson
7.4.5?高效Bean映射框架——Orika
7.5?Java新版本的特性
7.5.1?Java 7
7.5.2?Java 8
7.5.3?Java 9
7.6?总结
第8章 性能调优
8.1?调优准备
8.1.1?HotSpot虚拟机体系结构
8.1.2?操作系统的性能调优
8.1.3?系统常用诊断工具
8.1.4?JDK常用诊断工具
8.2?性能分析
8.2.1?CPU分析
8.2.2?内存分析
8.2.3?I/O分析
8.2.4?其他分析工具
8.3?性能调优
8.3.1?CPU调优
8.3.2?内存调优
8.3.3?I/O调优
8.3.4?其他优化建议
8.3.5?JVM参数配置
8.3.6?JVM性能增强
第9章 安全技术
9.1?Java加密
9.1.1?单向加密算法
9.1.2?对称加密算法
9.1.3?非对称加密算法
9.2?安全HTTP——HTTPS
9.2.1?安全协议——SSL/TLS
9.2.2?证书中心——CA
9.2.3?请求交互过程
9.2.4?性能优化
9.3?Web安全
9.3.1?跨站点脚本攻击
9.3.2?跨站点请求伪造
9.3.3?SQL注入攻击
9.3.4?基于约束条件的SQL攻击
9.3.5?分布式拒绝服务攻击——DDOS
9.3.6?会话固定攻击——Session fixation
附录A 代码构建常用命令
附录B Git常用命令
附录C MySQL常用命令
附录D MongoDB常用命令
附录E Java调优常用命令

本书勘误

印次
  • 页码:54  •  印次: 1

    “提示”的第一点改为“.gitignore中添加不需要版本管理的文件,如:.DS_Store、logs、target、node_modules等。根据工程的类型不同这里需要加入的文件也不同。”

    杭建 提交于 2018/12/20 15:02:06
    张春雨 确认于 2019/1/23 16:07:28
  • 页码:59  •  印次: 1

    单元测试的代码中“public static void initMethod”和“public static void afterMethod”应该为“public void initMethod”和“public void afterMethod”

    杭建 提交于 2018/12/20 15:01:49
    张春雨 确认于 2019/1/23 16:07:37
  • 页码:67  •  印次: 1

    这里根据笔者自己的一些经验和实践,列出一些最为需要遵循的Java编码规范。”下面的第二点应为“变量和类命名务必具有意义,能让人一眼看出表示的意思。如userList表示用户列表,不要使用list、set、button这种无意义的命名方式。”

    杭建 提交于 2018/12/20 15:02:25
    张春雨 确认于 2019/1/23 16:07:16
  • 页码:69  •  印次: 1

    此页最后一点修改为“程序需要状态,对象不需要状态,如果对象有了状态,就会引发多线程问题。程序的状态应该统一由数据库、缓存、任务队列这些外部容器来容纳,处理时以局部变量的形式在线程内部流转直至被回收。”

    杭建 提交于 2018/12/20 15:02:43
    张春雨 确认于 2019/1/23 16:07:08
  • 页码:86  •  印次: 1

    “3.3日志”这一节,在构造Logger时,由于一些代码片段没有写出所在的类,因此使用了this.getClass()代替了类对象字面量,没有做特殊说明,造成了读者误解。在实际使用时,this.getClass()都应该换成所在类的类对象字面量,如”LoggerTest.class”。

    杭建 提交于 2018/12/20 15:04:23
    张春雨 确认于 2019/1/23 16:06:59

读者评论

  • 不错的总结

    康晓宇发表于 2021/9/10 9:29:19
  • 作者:能发一下你们自己二次开发的jwebap工具吗?

    xmlu发表于 2018/6/1 10:16:11
    • 暂时还未开源

      杭建发表于 2018/6/5 18:07:51
  • 勘误和示例代码见:superhj1987/pragmatic-j**a-engineer

    杭建发表于 2018/5/15 17:50:42
  • 本书示例代码和资源在哪啊,咋看不到

    husheng3921发表于 2018/5/11 23:36:08
  • 1.2节的J**a工程师技能树

    J**a工程师技能树

    杭建发表于 2018/4/20 0:38:18

电子书版本

  • Epub

相关博文

  • 掌握后端技术的6点学习建议

    掌握后端技术的6点学习建议

    管理员账号 2018-05-25

    程序员是一个金字塔结构的职业体系,越往上,人越少也越难达到。走到金字塔顶部需要不断的学习和进步,包括正确的态度、正确的方法以及持续的努力。本文整理了6点学习后端技术的建议,并在最后给出了学习新技术的方法论,希望帮你早日走上金字塔的顶端...

    管理员账号 2018-05-25
    1335 1 0 0

相关图书

Python一行流:像专家一样写代码

Christian Mayer (作者) 苏丹 (译者)

本书专注于从初学迈向进阶的Python编码技术:如何像专家一样写出优雅、准确、简洁高效的Python 单行代码;阅读任意一行Python 代码时,如何系统性地对...

¥89.00

剑指Offer(专项强化版):数据结构与算法名企面试题精讲

何海涛 (作者)

本书全面、系统地总结了在准备程序员面试过程中必备的数据结构与算法。本书首先详细讨论整数、数组、链表、字符串、哈希表、栈、队列、二叉树、堆和前缀树等常用的数据结构...

¥89.00

C++服务器开发精髓

张远龙 (作者)

本书从操作系统原理角度讲解进行C++服务器开发所需掌握的技术栈。全书总计9章,第1~2章讲解C++ 11/14/17新标准中的常用特性、新增类库,以及C++开发...

 

PHP编程(第4版)

Rasmus Lerdorf(拉斯马斯·勒多夫), Kevin Tatroe(凯文·塔特罗), Peter MacIntyre(彼得·麦金太尔) (作者) 卢涛 (译者)

PHP是一种被广泛使用的Web编程语言,它简单易用,而且与时俱进,不断进化,提升性能。本书基于PHP 7.4,深入介绍 PHP编程技术,涵盖了 PHP 所有基本...

¥109.00

深入理解Spring Cloud与实战

方剑 (作者)

本书共分10章,主要介绍Spring Cloud各个核心组件的设计原理,以及目前流行的Spring Cloud Alibaba和 Netflix组件,并且剖析S...

¥106.00

基于Kotlin的Spring Boot微服务实战

袁康 (作者)

本书介绍了Kotlin在Spring Boot微服务开发中的实践,并使用Kotlin作为开发语言,介绍了函数式编程思想、Kotlin的语法、Kotlin在常用中...

¥69.30