这些年看过的Linux服务端开发的书籍推荐

这些年看过的Linux相关书籍推荐


计算机类图书相对感觉还是比较贵的,但是我是一个比较喜欢买纸质版书籍的人,所以我通常都会在京东618等活动买书,相对会便宜很多。大四开始看计算机相关的书籍,有的时候师弟们让推荐书籍,我就总结在这里了。不管你是大一还是研一,想必都有你需要的书籍吧。

相应的电子版我会总结到文末,哎我就是最亮的仔!!

1 编程语言书籍

想必大部分小伙伴刚进入大学校园,开设的第一门专业课是某某语言程序设计,下面推荐如下书籍

c语言

这三本书可说是c语言中精华了,不过比较遗憾的是很多大学开设的是。。,哎,我就不吐槽了。来说说这三本书吧。第一本《c与指针》,这本书详细介绍了什么是指针,数组的本质,回调函数,转移表等,另外也会带你实现一部分数据结构比如队列,栈,二叉树!第二本《c专家编程>讲述静态链接库,动态链接库,内存泄漏以及引入一部分c++知识。第三本《c陷阱与缺陷》是一些讲述比如"悬挂"else问题一系列比较容易陷入的坑。

  • 《c与指针》作者:Peter Vander Linde / 徐波
  • 《c专家编程》作者:Peter Van Der Linden
  • 《c陷阱与缺陷》作者:安德鲁·凯尼格

c++语言

《C++ primer》(适合有一定基础)


《C++程序设计语言》

《Effective Modern C++ 》

《more effective C++》

《深度探索C++对象模型》

《STL源码剖析》

候老师这本书剖析STL,感觉还是有一定难度,但是可以结合b站它的视频学习。

《effective STL》

python语言

《python编程从入门到实践》

这本书看完感觉真简洁,从基本数据类型到可视化编程,Django网站的建设,覆盖面相对比较完整吧,看完而且跑完上面程序会有一定的成就感的。

2 Linux

《鸟哥的Linux私房菜》

Linux入门书籍,从系统安装,基本命令,shell脚本学习多个方面补充基础知识。最好当做字典查阅。

2 系统编程

《Linux高级程序设计》

这本书是刚上研一的时候看的,说高级有点夸大,但是通过这本书的学习你可以知道Linux中的系统编程大概能做什么,其中也涉及到了Makefile,gdb的调试等技术,结合下面几本书看是不错的。

《Unix环境高级编程》

这本书的作者可真是国际著名的专家了,下面的《unix网络编程》《tcp/ip详解》都有它的影子。可谓字典书籍,这本书中应用不算多,但是基本理论是非常非常的清楚了,也详细的能告诉你函数中不同参数的具体功能。

《Linux环境编程从应用到内核》

这本书作者对系统编程,内核非常的了解,提交了很多patch。哈哈哈哈有幸聊过一次天,学习的好榜样。

3 网络编程

《计算机网络第五版》

教材书籍,了解计算机网络的全貌,基本概念。

《tcp/ip详解》

《Unix网络编程》

《Linux高性能服务器编程》

这本书实战型还是很强的,也有很多高频的面试题解析。比如select,epoll,另外也介绍了几个debug和性能故障查看的工具。

《Linux多线程服务端编程;使用muduo C++网络库》

陈硕老师这本书总结和对比了几种网络模型并给出自己的开源库muduo。

4 大数据技术

《hadoop权威指南》

《大数据技术原理与应用》


《图解spark》


《Flink原理,实战与性能优化》

通过《hadoop权威指南》你可以知道从谷歌三篇论文到mapreduce应用开发,不同调度平台的理解学习。第二本类似教材书,可以配合厦门大学官网实例学习,加强实践能力。后面过度到spark,最后到flink,嘿嘿,想起当时去参加flink大会获得了签名书籍和马克杯。

5 操作系统

《深入理解操作系统》

其中有一些linux c的例子辅助理解理论知识。

6 算法面试

《剑指offer》

面试宝典,这本书的题目在牛客网也有相应的练习,最好做到手写上面的题目,因为很多时候面试官不会让你用IDE写算法的哟。

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

这本书的代码练习可以在牛客网上练习,也有它相关的视频辅助学习。

7 Linux内核

《Linux内核设计与实现》

这本书的部分例子可以通过Linux内核之旅网址进行相应的学习练习。

8 总结

大部分书籍是看过,而且觉得这些书的确是值得去读一读的,后续还有相应的书籍再补充在这里。

9 结尾

嘿嘿,不知道老铁们有看过这些书籍吗,小贱已经把这些书籍放在了自己的原创公众号[我是程序员小贱],关注我一定不会让你失望!关注后台回复"小天使"领取哈!谢谢老铁的支持!

原文地址:https://www.cnblogs.com/lanjianhappy/p/12179639.html

时间: 2024-10-13 01:04:02

这些年看过的Linux服务端开发的书籍推荐的相关文章

linux服务端的网络编程

常见的Linux服务端的开发模型有多进程.多线程和IO复用,即select.poll和epoll三种方式,其中现在广泛使用的IO模型主要epoll,关于该模型的性能相较于select和poll要好不少,本文也主要讨论该模型而忽略另外两种IO复用模型. 多线程相较于多进程开销比较小,但是要主要主线程往子线程传递数据的时候要注意变量互斥访问来保证线程安全. epoll模型在Linux2.6内核中引入的,改进了select中的一些明显设计上的缺点,具有更高的效率.主要体现在以下几个方面: 1. epo

从架构师视角看是否该用Kotlin做服务端开发?

前言 自从Oracle收购Sun之后,对Java收费或加强控制的尝试从未间断,谷歌与Oracle围绕Java API的官司也跌宕起伏.虽然Oracle只是针对Oracle JDK8的升级收费,并释放了OpenJDK一直开源这份善意,但是如果没有各个大非Oracle的JVM.JDK和众多其它基于JVM的语言,Oracle这份善意能维持到什么时候可不好说. 大厂要从JVM和JDK的层面早做打算,而广大中小企业,就只能先从Java语言的层面,先找到Oracle以外的备胎.自从被谷歌钦定为Android

不要害怕服务端开发(一)

经历了前端技术的变更,发现我再也不想去追前端技术了,同学们做java的现在还是做java,我之前做flash的现在没饭吃了,去年改做h5,行业不好混啊,java稳如狗. 之前一直想学服务端开发,现在改变了工作环境,稍微有点时间了,加上最近上班的工作实在是闲,上头布置的游戏前端demo,用3d写了一个,然后用2d写了一个,后面又用h5写了一个. 也找不到好的形容词去形容现在的状态,因为还在试用期,所以不敢太冒进,一直停留在写demo的进度上. 昨天开始,学着用nodejs写来静态服务器. 然后今天

.NET服务端开发—多线程使用小结(多线程使用常识)

有一段时间没有更新博客了,最近半年都在着写书<.NET框架设计-大型企业级框架设计艺术>,很高兴这本书将于今年的10月份由图灵出版社出版,有关本书的具体介绍等书要出版的时候我在另写一篇文行做介绍.可以先透露一下,本书是博主多年来对应用框架学习的总结,里面包含了十几个重量级框架模式,这些模式都是我们目前所经常使用到的,对于学习框架和框架开发来说是很好的参考资料,大家敬请期待. 好了,进入文章主题. 最近几个月本人一直从事着SOA服务开发工作,简单点讲就是提供服务接口的:从提供前端接口WEBAPI

现代Java服务端开发核心技术之开发工具箱

现代Java服务端开发核心技术之开发工具箱 现代Java服务端开发核心技术 2.1 开发工具概述 俗话说,工欲善其事必先利其器,掌握一些日常开中常用的工具软件能够大大提开发效率,工具本身的目的也是解放生产力.在安装各种软件时注意如果没有特殊需要不必使用最新版本,尤其是操作系统,例如当前(2018/10/12)最新版的macOS是10.14,但是运行在macOS之上的其他应用软件可能还没有及时做兼容新系统的版本,可能在系统升级之后无法正常使用,因此推荐在新系统正式推出半年后再升级最为稳妥. 而且软

现代Java服务端开发核心技术之分布式数据库中间件MyCAT入门

现代Java服务端开发核心技术之分布式数据库中间件MyCAT入门 现代Java服务端开发核心技术 MyCAT系统环境搭建 如下列表展示了搭建MyCAT运行时环境所需要的软件及其版本说明. 软件名称 软件版本 os centos7.5 JDK JDK1.8u191 MySQL MySQL5.7 Mycat Mycat1.6.5 Navicat Navicat12.08 在非集群的环境下,MyCAT仅仅依赖JDK就可以良好的运行在Windows,Linux,macOS等操作系统之上. CentOS7

现代Java服务端开发核心技术之数据库中间件MyCAT入门

现代Java服务端开发核心技术之数据库中间件MyCAT入门 现代Java服务端开发核心技术 MyCAT系统环境搭建 如下列表展示了搭建MyCAT运行时环境所需要的软件及其版本说明. 软件名称 软件版本 os centos7.5 JDK JDK1.8u191 MySQL MySQL5.7 Mycat Mycat1.6.5 Navicat Navicat12.08 SecureCRT Linux客户端 在非集群的环境下,MyCAT仅仅依赖JDK就可以良好的运行在Windows,Linux,macOS

如何进行SuperMap iServer服务端开发

有时候在进行地图应用开发时,可能单纯的客户端无法满足要求(如功能和性能等因素),这时就需要进行iServer的服务端开发.SuperMap iServer 6R/7c的服务端开发步骤如下: 一.在Eclipse中新建一个Dynamic Web Project 此过程截图略去 二.引用iServer所需的各类jar包 经测试后发现,必须引用iServer/WEB-INF/lib下的所有jar包,否则运行时会出现一些奇怪的错误.这些jar包所在的位置为[iServer安装目录]\webapps\is

在线教学、视频会议软件 Webus Fox(2) 服务端开发手册

上次在<在线教学.视频会议软件 Webus Fox(1)文本.语音.视频聊天及电子白板基本用法>里介绍了软件的基本用法.本文主要介绍服务器端如何配置.开发. 1配置 1.1 IIS配置 Fox支持最基本的.net Framework4.0和IIS6/IIS7. 在IIS7中,对应应用程序池,需要配置为经典模式,支持.net4.0 1.2 web.config配置 Fox服务器端是暂时是host在IIS上,将来将Host在Windows Service上.对于IIS的配置,web.config是