编写高性能的.net代码电子版-编写高性能的.net代码pdf下载

编写高性能的.net代码电子版-编写高性能的.net代码pdf下载

编辑点评:

编写高性能的.net代码pdf电子书是关于代码编写的书籍,主要讲述了编写.net的程序,编码和类设计的一般规则,性能计数器建立追求性能的开发团队等等相关的编程内容。

编写高性能的.net代码pdf

电子书内容简介

本书详细介绍了如何编写高性能的.NET程序,在最大化托管代码性能的同时,还能保证.NET的特性优势。

本书循序渐进地深入.NET的各个部分,特别是底层的公共语言运行时(Common Language Runtime,CLR),了解CLR是如何完成内存管理、代码编译、并发处理等工作的。本书还详细介绍了.NET的架构,探讨了编程方式如何影响程序的整体性能,在全书中,还分享了发生在微软的一些趣闻轶事。本书的内容偏重于服务器程序,但几乎所有内容也同样适用于桌面端和移动端应用程序。

本书条理清楚,言简意赅,适合有一定.NET基础的读者和想要提高代码性能的C#程序员学习参考。

电子书作者信息

Ben Watson 从2008年开始就已经是微软的软件工程师了。他在必应(Bing)平台的研发团队工作时,建立了一套世界一流、基于.NET的高性能服务应用,足以应付几千台电脑发起的大容量、低延迟请求,用户数量高达几百万。他在业余时间喜欢参加地理寻宝游戏、阅读各种书籍、欣赏古典音乐,享受与妻子Leticia、女儿Emma的欢聚时刻。他还是《C# 4.0 How-To》一书的作者,该书已由Sams出版。

编写高性能的.net代码pdf在线试读

在设计系统和规划性能评估方案时,有一条经验也许很有用,那就是设想一下理论上的最佳性能。如果你能去掉其他所有开销,比如垃圾回收、JIT、线程中断,以及其他任何你能想到的开销,然后还能剩下什么资源用来干活呢?对于负载、内存占用、CPU占用、内部同步等资源,你能想到的理论极限是多少?这通常依赖于程序所处的硬件和操作系统。比如,有1台16个处理器、64GB内存的服务器,带有2条10GB的网络,你需要估计一下最大并行处理能力、内存中最多能存放多少数据,以及每秒的网络吞吐量是多少。这能帮助你作出规划,假如1台服务器不够用,那到底需要多少台同档次的机器。所有这些信息都是性能评估目标的绝佳来源。

你大概听说过一个说法:“过早的优化是万恶之源”,这是由Donald Knuth首先提出的。这句话仅适用于代码层面的微观优化。在设计阶段时,你需要理解整体架构和约束条件,不然你就会遗漏一些关键点,这将严重制约程序的运行。你必须在设计阶段就把性能目标预先考虑进去。

在软件设计阶段,就得考虑安全性等很多方面的问题。性能问题也一样,不能事后再议,必须从一开始就提出明确的目标。要想从头开始把一个已有的应用程序重新设计一遍,这是不可能的,这比一开始就考虑周全要付出多得多的代价。在项目初始阶段的性能分析,与开发完成即将进入测试阶段的分析是不一样的。在初始阶段必须得保证设计的灵活性,确保技术路线在理论上能完成任务,确保在架构上没有大的问题以免除后患。一旦项目进入测试、部署和维护阶段,就得把更多的精力投入微观优化、具体代码方式的分析、减少内存占用等工作。

最后,你还需要了解阿姆达尔定律(Ahmdals's Law,参见http://www.writinghighperf.net/go/3[PDF]),特别是其应用于顺序执行程序的情况,以便能找到哪部分程序是需要优化的。那些不能明显改善整体性能的微观优化,多半是在浪费时间。为了获得最佳效果,应该优先优化那些效率最低的部分。优化永远不可能面面俱到,得有一个明智的起点。因此,准备好优化目标,再有一套优秀的评估系统,这些都是十分重要的。不然你连从哪儿开始都不知道。

编写高性能的.net代码pdf截图

编写高性能的.net代码电子版-编写高性能的.net代码pdf下载插图(1)编写高性能的.net代码电子版-编写高性能的.net代码pdf下载插图(2)

评分及评论

无用户评分

来评个分数吧

  • 5 分
    0
  • 4 分
    0
  • 3 分
    0
  • 2 分
    0
  • 1 分
    0

Comments