《代码大全》读后笔记

  昨天终于把这本大部头书看完了,全书正文共有862页,加上前言和附录有接近1000页的样子,说实话,虽然书很厚,但看起来很轻松,而且一点儿不觉得枯燥。我相信只要你开始看这本书,就会被书里的内容所吸引,并引导你坚持看下去。

  用一种简单的计数技巧来使括号对称,这个方法自我从书里看到后,就一直在使用,所以,这里我介绍一下:如果你不知道所用的括号用得是不是配对,那么下面的简单计数技巧会很有用,开始的时候说“0”,然后从左到右扫描该表达式。当遇到一个左括号的时候说“1”,并且每次遇到一个左括号的时候就把这一数字加1。每次遇到一个右括号的时候把这个数字减1。如果到表达式最后的时候所得结果为0,那么你用的括号就是配对的。

  Java示例: 配对的括号

Java示例: 配对的括号
if ( ( ( a < b ) == ( c ==d ) ) && !done ) ...
   | | |       |    |      |  |           |
0  1 2 3       2    3      2  1           0

  在代码大全这本书里,作者提到了软件开发的几百本书籍(或文章),最后,作者给出了一个推荐清单,我们来看一下:

  关于软件构建的信息:

  作者写这本书的最初原因是当时还没有一本透彻讨论软件构建的书。自从发表了第一版后,市面上有了一些好书。

  《Pragmatic Programmer》(《实用主义程序员》)(Hunt and Thomas 2000) ,着眼于与编码紧密相关的活动,测试、调试、断言的用法。

  《Programming Pearls》,2d ed. Jon Bentley以小程序为背景讨论了软件设计的艺术和科学,由许多短文组成。

  《Extreme Programming Explained: Embrace Change》 Kent Beck, 对软件开发提出了以构建为中心的方法。

  《Writing Solid Code - Microsoft‘s Techniques for Developing Bug-Free C Software》 Steve Maguire 是一本较专门的书籍。注重商用级应用软件的生产实践,大部分基于作者开发Office软件的专业知识。

  《The Practice of Programming》 Brian Kernighan 和Rob Pike合著。另一本较专门的书籍,着重于编程的本质和实践方面。

  《Programmers at Work》 Susan Lammers,书中有对业界最顶尖的程序员的采访记录。

  构建之外的话题

  下列书籍从各种角度给出了软件开发的总体说明。

  《Facts and Fallacies of Software Engineering》 Robert L. Glass 介绍传统软件开发的规则与戒律。

  《Professional Software Development》 作者自己的,探讨了软件开发领域的现状。

  《Swebok: Guide to the Software Engineering Body of Knowledge》 Abran,详细分析了软件工程的知识。

  《程序开发心理学》

  《人月神话》

  《Software Creativity》(Glass 1995)

  《人件》

  最后四本,我想大家都听说过了,其知名度就不用详细介绍了。

  软件工程概述

  《Software Engineering: A Practitioner‘s Approach》,6th ed , Roger S. Pressman,恰当处理了软件需求/设计/质量验证/和管理方面。

  《Software Engineering》第6版 (Sommerville 2000)。

关于代码大全书的内容,就不在这里介绍了,推荐大家看一下,毕竟900页的书也不是一篇博客能够概括的。

  

  

时间: 2024-10-13 03:09:01

《代码大全》读后笔记的相关文章

《Tuning I/O Performance》读后笔记

<Tuning I/O Performance>,文章地址:http://doc.opensuse.org/products/draft/SLES/SLES-tuning_sd_draft/cha.tuning.io.html 大家在读了原文后若有更好的见解,请不吝赐教,谢谢! 文章以SUSE Linux Enterprise Server为例讲解了Linux系统的IO调度策略及调优,可适应于其他Linux操作系统,如CentOS.UBUNTU等. 1.查看当前IO调度策略(大多数Linux发

Performance Tuning guide 翻译 || Performance Tuning Guide 11G中新增特性

Performance Tuning Guide 11G中新增特性 本章描述了Oracle11g Release2(11.2)中增加了哪些新的性能调整 特性,以及指向这些增加信息. 本章节描述的特性以及增强,包含了优化数据库性能的各个方面. 关于Oracle11gR2的所有新特性汇总,可以查看Oracle Database New Features Guide. 11.2.0.2中新增的新特性(关于性能调优) 新增的以及更新过的性能调整特性包括: 注:Resource Manager(资源管理器

High Performance Browser Networking

Table of Contents Foreword Preface About This Book Conventions Used in This Book Safari? Books Online How to Contact Us Content Updates May 23, 2014 I. Networking 101 1. Primer on Latency and Bandwidth Speed Is a Feature The Many Components of Latenc

使用Nginx、Nginx Plus抵御DDOS攻击

原创 2015-10-16 陈洋 运维帮 DDOS是一种通过大流量的请求对目标进行轰炸式访问,导致提供服务的服务器资源耗尽进而无法继续提供服务的攻击手段. 一般情况下,攻击者通过大量请求与连接使服务器处于饱和状态,以至于无法接受新的请求或变得很慢. 应用层DDOS攻击的特征 应用层(七层/HTTP层)DDOS攻击通常由木马程序发起,其可以通过设计更好的利用目标系统的脆弱点.例如,对于无法处理大量并发请求的系统,仅仅通过建立大量的连接,并周期性的发出少量数据包来保持会话就可以耗尽系统的资源,使其无

Nginx 性能调优

原文地址:http://nginx.com/blog/tuning-nginx/ Tuning NGINX for Performance NGINX is well known as a high performance load balancer, cache and web server, powering over 40% of the busiest websites in the world.  Most of the default NGINX and Linux settings

Java性能提示(全)

http://www.onjava.com/pub/a/onjava/2001/05/30/optimization.htmlComparing the performance of LinkedLists and ArrayLists (and Vectors) (Page last updated May 2001, Added 2001-06-18, Author Jack Shirazi, Publisher OnJava). Tips: ArrayList is faster than

.Net性能的方方面面(必看官方经典)

更多性能提高相关文章,必看 https://msdn.microsoft.com/en-us/library/hh917314.aspx Chapter 1 - Fundamentals of Engineering for Performance Chapter 2 - Performance Modeling Chapter 3 - Design Guidelines for Application Performance Chapter 4 - Architecture and Desig

PostgreSQL源码安装文档

This document describes the installation of PostgreSQL using the source    code distribution. (If you are installing a pre-packaged distribution,    such as an RPM or Debian package, ignore this document and read the    packager's instructions instea

《ActiveMQ in Action》【PDF】下载

内容介绍TheApache ActiveMQ message broker is an open source implementation ofthe Java Message Service spec. It makes for a reliable hub in anymessage-oriented enterprise application and integrates beautifullywith Java EE containers, ESBs, and other JMSpr

WebSphere Application Server Performance Tuning Toolkit

WebSphere? Application Server Performance Tuning Toolkit 是一款基于 Eclipse 的智能工具,旨在帮助用户通过使用数据收集.数据分析和统计数据推断技术来调优 WebSphere Application Server 的性能.其目的是帮助用户查找瓶颈,并适当调优应用程序. 背景知识 随着基于 Java EE 的企业级多层架构应用程序的大范围部署,出现得越来越多的性能问题,而且难以诊断.多层架构使得性能问题难以定位,而且要花费更多的时间和精