.Net人的自我修养-书目汇总
.Net人的自我修养-书目汇总
2019年来现在的公司开始从事.Net相关的工作。记录一下工作以来看过(或者翻过)和听过还不错打算看相关的技术书籍或资料。
为了方便给大家参考,看(翻)过书目以难度排序。
看过正在看或翻过
入门篇(有那么一小部分看不懂)
《深入理解C#》
可以说算是一本语法书,主要以C#的语言版本顺序一点点介绍,买的时候那版只到C# 5(大概),新出的一版大概到C#7。说是入门但是难度并不那么入门,逆变协变表达式树await等等虽然只介绍托管层但是依旧有一部分让人看不懂了,不过看看语法还不错。
《设计模式》
这本书没啥说的,很多时候写不好都会翻翻书看看有什么可以抄的。谈谈体会,书里的23种3类设计模式很多时候还是需要灵活使用,看用的时候灵性了。
《代码整洁之道》
这本书买的很早,java写的。谈一谈体会,各种准则列的确实很有道理,但是落到实际工作中就不是那么回事了。大白话说就是道理谁都懂(也不见得)。代码要写的好看很大程度还得看框架和灵性了。
《C++ Primer Plus》
一直想深入一点,一直在看一直在忘,可能唯一学会的就是用来写写一部分简单的算法题吧。
《汇编语言》王爽
虽然x86汇编有点难,但是8086汇编不算太难。这本书看的算比较细了,王老师水平不用多说,搜搜网上的评价都知道,不愧哲学家。无奈不知道是不是自己不行,书里提的问题说看到后面章节就能明白的一些问题我看完都没明白,全靠百度才恍然大悟原来是这么回事(特指Dubug时为什么栈底的内容跟着移动的问题)。
《深入浅出WPF》刘铁猛
一本WPF的经典书了。我不理解同事为啥说这本书特别简单,书里涉及了一部分源码,比如是依赖属性的实现等等。看这本书时候就着源码对着书翻也只能说大概好像是这样。可能吃亏在.Net framework的源码虽然开源了但是没法编译和调试吧。
进阶篇 (有相当部分看不懂)
《修炼之道:.NET开发要点精讲》
主要说的是.NET开发的一些知识点,内容没那么难。这本书的作者已经开源了(开源意味着超过了出版社的合约期,内容很老了),作者好像之前在微软工作。虽然内容比较老,但还是有很多值得借鉴的地方。
《用户态程序高效排错》熊力
同样来自微软员工的作品,同样也开源了。主要内容是windows下托管和非托管问题的调试。这本书我大概翻了下没看完,主要是里面的调试工具实在是太老了。不过书里提到的思路还是没问题的,工具只是实现手段,重要的是解决问题的思路(再加上一部分耐心)。
《编写高性能的.NET代码》
还不错的一本,各种.Net开发的知识点汇总,部门买的电子版,结合《.NET高级调试》一起看不错。
《WCF全面解析》上 下 蒋金楠
如果做WCF的话值得一读,可惜WCF已经走向末路,工作中很多也都是基础应用和标准绑定,书里的各种花里胡哨的用法只能说有需求时候值得借鉴。
《.NET高级调试》
这本书很重要。讲了很多CLR的内部原理,包括并不限于各种数据对象在内存的结构是什么样的,GC是如何管理和分配内存,同步和锁如何实现(并没有到Windows如何实现这一步)。虽然书里用很长的篇幅列了一堆SOS命令,但是这些在微软官方文档都有,大概看一下使用的时候直接查就可以了。
《计算机组成与体系结构》
基础书不必多说。这本书翻到大概层次存储结构结束的位置。
《深入理解计算机系统》
这本书也不必多说,我买的第三版,内容很细但是看完很难记住。举个例子,书里面说了各种位左移右移所遵循的规则,无符号和有符号的并不一致,只有在工作中发现错了才发现书里好像是这么说过。
高级篇(有非常多看不懂)
《程序员的自我修养 - 链接编译转载与库》
主要说的是PE文件结构,动态链接静态链接等等。这本书大概是19年刚来公司看的,当时是公司同事的书,后来自己也买了一本。时间太久了,只记得很多看不懂,不过个人觉得很多东西看的太细也记不住有个映像比如PE文件结构等等,到时候可以翻书翻到也不错。
《MSIL权威指南》(上/下)包建强 & 《Expert .NET 2.0 IL Assembler》 Serge Lidin
这本书叫《CLR元数据表解析》更加合适,书里用大段讲了各种元数据表的各种乱七八糟的作用要求关系等等。译者好像是去哪儿的高管,博客里各种和微软的大佬谈笑风生,译本却被骂很惨,我觉的也不至于那么不堪。还是一本不错的了解元数据的书。
《软件调试》张银奎
这套书这两年出了第二版,和第一版的主要差别是加了很多arm的内容。作者是前英特尔的员工,所以有很多硬件相关的内容。个人买的第二版,内容较深,算是国内(乃至国外)软件调试方面写的最详细的书了,他解答了诸如调试断点如何实现,为什么异常捕获一般不能跨线程,Windows如何实现异常分发等等问题。个人能力有限,很多看不懂,但还是觉得非常值得一读。
《WINDOWS.核心编程》(翻过)
这本书主要说的是windows的各种API如何调用,也说了一些windows的一些机制,比如线程/进程/锁等等。很多内容其实《软件调试》里也写了,比如SEH等等。
《Shared Source CLI 2.0 Internals》
.Net已经开源很久了,最新的代码在GIthub上下载下来看看BOTR(Book Of The Runtime)自己也能编译调试。但是BORT过于简略,基本上可以说是除了能编译出来就CLR的源代码啥也看不懂了。《Shared Source CLI 2.0 Internals》这本开源书籍写的是微软很久前的开源版本.Net,除了Jit大部分内容都是一致的,你可以知道什么是
EEClass什么是MethodTable,方法如何调用等等,这些和现在版本的CLR源代码里都是对的上的。
没看过打算看
《计算机组成与设计 硬件软件接口》
《垃圾回收算法手册 自动内存管理的艺术》
《重构改善既有代码的设计》
《NET CLR via C#》
《深入理解Windows操作系统》 第七版
买了未来也许会看的书但是现在完全不会看的书
机器学习等等
安卓相关等等
《应用密码学 协议 算法与C源程序》
QT等等
《格蠹汇编》张银奎
附
提供一个不错的搜书网站 https://xmsoushu.com/#/
.Net人的自我修养-书目汇总的更多相关文章
- 第八周读书笔记(人月神话X月亮与六便士)——到底什么才是一个程序员的自我修养?
写了这么久的读书笔记,涉及到问题大多是一些如何把软件工程做好,如何把自己的职业生涯做好.但总感觉逻辑链上缺了一环,亦即:我们为什么要把软件工程做好,我们成为一名优秀的职业生涯的意义到底在于什么?我觉得 ...
- 程序员的自我修养(2)——计算机网络(转) good
相关文章:程序员的自我修养——操作系统篇 几乎所有的计算机程序,都会牵涉到网络通信.因此,了解计算机基础网络知识,对每一个程序员来说都是异常重要的. 本文在介绍一些基础网络知识的同时,给出了一些高质量 ...
- IT人的自我导向型学习:学习的4个层次
谈起软件开发一定会想到用什么技术.采用什么框架,然而在盛行的敏捷之下,人的问题逐渐凸显出来.不少企业请人来培训敏捷开发技术,却发现并不能真正运用起来,其中一个主要原因就是大家还没有很好的学习能力.没有 ...
- GIS制图人员的自我修养(2)--制图意识
GIS制图人员的自我修养(2)--制图意识 by 李远祥 上次提及到GIS制图人员的一些制图误区,主要是为GIS制图人员剖析在制图工作中的一些问题.但如何提高制图的自我修养,却是一个非常漫长的过程,这 ...
- GIS制图人员的自我修养(1)--制图误区
GIS制图人员的自我修养 by 李远祥 最近一直坚持写GIS制图的技术专题,并不是为了要介绍有什么好的技术和方法去制图,而是要告诉所有从事这一方向的人员一个铁铮铮的实现--要做好GIS制图,必须加强自 ...
- Hacker的社交礼仪与自我修养【转】
Hacker School是位于纽约的一所特殊的编程“学校”,他们的目标是帮助参与者变成“更好的程序员”,之所以说他们特殊是因为这所“学校”没有老师,没有考试,也不会颁发证书,他们信奉三人行必有我师, ...
- IT技术人员的自我修养
1. 前言 在IT领域摸爬滚打多年,从一个普通程序员到技术主管,到技术经理,再到技术总监,踩过不少坑.加过不少班,也背过不少锅,在提升自身技术能力与管理能力的同时,也一直在思考,作为IT ...
- IT技术管理者的自我修养
1. 前言 本来写<IT技术管理者的自我修养>与<IT技术人员的自我修养>是一开始就有的想法.但发表<IT技术人员的自我修养>后,收到了不少良好的反馈,博客园的编辑 ...
- 东站七雄保C位!论三线楼市网红板块的自我修养
不对!东站板块才是伍家岗的C位.这里有东站七雄! 前些天发了一篇城东C位之路的文章,居然引发了诸葛说房聊天群内大佬的激烈纷争.公说公有理婆说婆有理,一时争的是不可开交,大有约架之势.所以我决定提前写& ...
- Java程序员的自我修养
一.自我修养路线图 如图,这是笔者所走的路.且不论这路走的对不对,这个过程中行业环境会影响到你,大可不必钻牛角尖.附上这张图的目的是为了说,如果你想成为一个优秀的程序员,那么你一定要有规划.当然,别想 ...
随机推荐
- Redis系列之——API的使用
文章目录 一 通用命令 1.1 通用命令 1.2 数据结构和内部编码 1.3 单线程架构 1.3.1 单线程架构, 1.3.2 单线程为什么这么快 1.3.3 注意 二 字符串类型 2.1 字符串键值 ...
- FragmentStatePagerAdapter
public abstract class FragmentStatePagerAdapter extends PagerAdapter java.lang.Object ↳ android.s ...
- mysql查看索引利用率
-- mysql查看索引利用率 -- 如果很慢把排序去掉,加上limit 并且在where条件中限定表名. -- cardinality越接近0,利用率越低 SELECT t.TABLE_SCHEMA ...
- MacOS X终端里SSH会话管理
http://codelife.me/blog/2012/09/01/ssh-session-profile-management-in-terminal-of-macos-x/ 本文介绍如何在终端里 ...
- Transformers 中原生支持的量化方案概述
本文旨在对 transformers 支持的各种量化方案及其优缺点作一个清晰的概述,以助于读者进行方案选择. 目前,量化模型有两个主要的用途: 在较小的设备上进行大模型推理 对量化模型进行适配器微调 ...
- Net 高级调试之九:SOSEX 扩展命令介绍
一.介绍 今天是<Net 高级调试>的第九篇文章.这篇文章设计的内容挺多的,比如:扩展的断点支持,如何查找元数据,栈回溯,对象检查,死锁检测等等,内容挺多的.功能特别强大,使用特别方便,但 ...
- 手撕Vue-Router-初始化路由信息
前言 经过上一节课的学习,我们已经完成了提取我们想要的路由信息数据格式,提取完毕了之后,接下来我们该干什么,接下来需要做的步骤就是监听路由的变化,保存当前的路由. 那么就会遇到几个问题,就是怎么监听, ...
- 华为云WebAssembly代码静态符号执行技术实现新突破
本文分享自华为云社区<华为云WebAssembly代码静态符号执行技术实现新突破,相关论文被软件工程顶会ISSTA2023接收并荣获杰出论文奖>,作者:华为云软件分析Lab . WebAs ...
- 使用reposync工具将yum安装包保存到本地的方法
使用reposync工具将yum安装包保存到本地的方法 版权声明:原创作品,谢绝转载!否则将追究法律责任. ----- 作者:kirin Anolis7/centos7 1.reposync 1.1. ...
- 【uniapp】【外包杯】学习笔记day07 | 微信小程序轮播图、分类导航、楼层图的开发与实现
1.创建home分支 2.配置网络请求 由于平台的限制,现需要建立uni-app中使用第三方包请求网络数据请求 在 uni-app 项目中使用 @escook/request-miniprogram ...