程序员的持续学习之道

原文出处: ShareCore (@Justin_Programer)

 

我其实是一个悲观主义者,从开始成为一名程序员的那一天开始,我就对自己的职业充满着担忧。早期,我担忧的是我刚进入这一行,落后身边从事这一行多年的人太多,跟他们比,我一开始就处于“不公平“的起跑线上;二是当我稍微深入这行后,发现技术的道路充满了歧路和死胡同,稍不留神,就将落入再也跟不上技术进步的节奏,身边也充斥着类似的示例。

好在在这条路上,我找到了一个克服担忧的良方:学习,坚持不懈的学习!

人类最大的恐惧莫过于对未知的恐惧,而学习,是克服未知的一个最有效途径。那作为一个程序员,该如何才能做到坚持不懈的学习呢?我想主要有以下几点:

1. 不抗拒变化,跟踪变化

这里说的变化,更多指的是技术的变化。新技术永远层出不穷,如果你抗拒变化,或惧怕变化,在心里优势上就落后了一大截。很多程序员的技术道路越走越窄,当一门新技术来临时,他们从不去了解或研究,他们要么认为这是”换汤不换药“的”技术幌子“,不值得去研究,要么等着别人去研究,自己被动的接受别人的结论与成果。诚然,等待别人的研究结果也可行,但是,当身边没有人去研究呢?当研究的人不愿意提供给你他的研究结果呢?当别人的结论和结果是错误的呢?

当然,业界的新技术层出不穷,要去跟踪每一项新技术的变化也是不可能的,我的建议是尽量掌握基础的技术,越是基础的技术越是恒定。如计算机的体系架构,TCP,HTTP,各类编程范式,OOP,MVC架构等,都是好多年来没有发生过变化的技术了。许多新技术也是建立在他们上面,当你了解了这些基础的技术,建立在他们之上的新技术也就能很快掌握了,并能迅速而准确地对这些新技术作出“价值判断”。

技术的变化,其实也并不全是指业界的新技术来临,更多指的是,超出自己当前技术能力外,主动研究和选择的“新技术” ,主动丢弃老的套路和技术,不固步自封。见过很多的程序员,他们写了很多年的代码了,技术能力还停留在数据库层写一个Sql(存储过程)+前端调用上。为什么如此呢?因为自开始写代码起,这样简单粗暴的方式就可以解决他们面对的问题了。所以,当碰到新的问题,他们就继续沿用着这种方式,而从不去看看业界是不是有更合适的方案来解决。长此以往,他们的技术能力也就不会有任何的变化,工作十年,只是将第一年所学的技术重复十年而已

2. 书宜杂读,业宜精钻

建筑学家梁思成赴美留学,其父梁启超告诫说:你该挤出一部分时间学些常识性东西,特别是文学或人文科学,稍稍多用点工夫就能有大的收获。我深怕你因所学太专一,把多彩的生活弄得平平淡淡,生活过于单调,则生厌倦心理,厌倦一生即成苦恼之事……书宜杂读,业宜精钻。

学习本身应该是一件很快乐的事情,但如果只是一味地沉浸于专业学习之中,难免会将本来快乐的事情弄成平淡和单调,更可怕的是,由此产生厌倦心理,放弃学习。

所以,可以尽量跟随自己的兴趣,去更广泛地读书。历史,文学,心理学,哲学等等各方面的书都可以尝试去读,它们不仅丰富你的知识,更能让你在阅读中受到感动、教育和启迪。书读的更多更广泛,知道的事也就多,思路更加开阔,解决问题的能力也就能高于常人,从而反过来帮助到你专业能力的提升。

3. 投资团队,积极打造学习型团队

现代社会,难免的一点就是个人必须置身于群体之中,程序员更是如此。从群体心理学的角度来看,在群体里,个人的才智被削弱,异质性被同质性所吞没。由此,如果一个团队不爱学习,那么,其中的成员也很难坚持学习(个性和意志力特别强的人除外)。

如果你爱学习,请想办法让你的团队也变得爱学习,这样,你对学习的坚持将变得更加容易。或许你认为建立学习氛围,是团队领导的事情,跟自己无关。领导当然可以来做也需要来做这样的事情,但要明白的一点,学习这事,如果变成从上向下,就难免“政治化”了,容易失去它本身的意义。而从下往上,更能建立轻松和谐的学习环境。

一些软件设计原则

出自:http://blog.jobbole.com/685/

导读:酷壳网的陈皓给大家介绍了软件设计的一些原则,作者认为一个好的程序员通常由其操作技能、知识水平,经验层力和能力四个方面组成。软件设计的这些原则,每一个程序员都应该了解。相信大家从中能够从中学了解到一些设计原理方面的知识。
文章内容如下:

以前本站向大家介绍过一些软件开发的原则,比如优质代码的十诫和Unix传奇(下篇)中所以说的UNIX的设计原则。相信大家从中能够从中学了解到 一些设计原理方面的知识,正如我在《再谈“我是怎么招聘程序员”》中所说的,一个好的程序员通常由其操作技能、知识水平,经验层力和能力四个方面组成。在这 里想和大家说说设计中的一些原则,我认为这些东西属于长期经验总结出来的知识。这些原则,每一个程序员都应该了解。但是请不要教条主义,在使用的时候还是 要多多考虑实际情况。

下面这些原则,不单单只是软件开发,可以推广到其它生产活动中,甚至我们的生活中

Don’t Repeat Yourself(DRY)

DRY是一个最简单的法则,也是最容易被理解的。但它也可能是最难被应用的(因为要做到这样,我们需要在泛型设计上做相当的努力,这并不是一件容易 的事)。它意味着,当我们在两个或多个地方的时候发现一些相似的代码的时候,我们需要把他们的共性抽象出来形一个唯一的新方法,并且改变现有的地方的代码 让他们以一些合适的参数调用这个新的方法。

参考http://en.wikipedia.org/wiki/Don%27t_repeat_yourself

Keep It Simple, Stupid (KISS)

KISS原则在设计上可能最被推崇的,在家装设计,界面设计,操作设计上,复杂的东西越来越被众人所BS了,而简单的东西越来越被人所认可,比如这些UI的设计和我们中国网页(尤其是新浪的网页) 者是负面的例子。“宜家”(IKEA)简约、效率的家居设计、生产思路;“微软”(Microsoft)“所见即所得”的理念;“谷歌”(Google) 简约、直接的商业风格,无一例外的遵循了“kiss”原则,也正是“kiss”原则,成就了这些看似神奇的商业经典。而苹果公司的iPhone/iPad 将这个原则实践到了极至。

把一个事情搞复杂是一件简单的事,但要把一个复杂的事变简单,这是一件复杂的事。

参考http://en.wikipedia.org/wiki/KISS_principle

Program to an interface, not an implementation

这是设计模式中最根本的哲学,注重接口,而不是实现,依赖接口,而不是实现。接口是抽象是稳定的,实现则是多种多样的。以后面我们会面向对象的SOLID原则中会提到我们的依赖倒置原则,就是这个原则的的另一种样子。还有一条原则叫Composition over inheritance(喜欢组合而不是继承),这两条是那23个经典设计模式中的设计原则。

Command-Query Separation (CQS)–命令-查询分离原则

查询:当一个方法返回一个值来回应一个问题的时候,它就具有查询的性质;
命令:当一个方法要改变对象的状态的时候,它就具有命令的性质;

通常,一个方法可能是纯的Command模式或者是纯的Query模式,或者是两者的混合体。在设计接口时,如果可能,应该尽量使接口单一化,保证 方法的行为严格的是命令或者是查询,这样查询方法不会改变对象的状态,没有副作用,而会改变对象的状态的方法不可能有返回值。也就是说:如果我们要问一个 问题,那么就不应该影响到它的答案。实际应用,要视具体情况而定,语义的清晰性和使用的简单性之间需要权衡。将Command和Query功能合并入一个 方法,方便了客户的使用,但是,降低了清晰性,而且,可能不便于基于断言的程序设计并且需要一个变量来保存查询结果。

在系统设计中,很多系统也是以这样原则设计的,查询的功能和命令功能的系统分离,这样有则于系统性能,也有利于系统的安全性。

参考http://en.wikipedia.org/wiki/Command-query_separation

You Ain’t Gonna Need It(YAGNI)

这个原则简而言之为——只考虑和设计必须的功能,避免过度设计。只实现目前需要的功能,在以后您需要更多功能时,可以再进行添加。
如无必要,勿增复杂性。

软件开发先是一场沟通博弈。

以前本站有一篇关于过度重构的文章,这个示例就是这个原则的反例。而,WebSphere的设计者就表示过他过度设计了这个产品。我们的程序员或是架构师在设计系统的时候,会考虑很多扩展性的东西,导致在架构与设计方面使用了大量折衷,最后导致项目失败。这是个令人感到讽刺的教训,因为本来希望尽可能延长项目的生命周期,结果反而缩短了生命周期。

参考http://en.wikipedia.org/wiki/You_Ain%27t_Gonna_Need_It

Law of Demeter–迪米特法则

迪米特法则(Law of Demeter),又称“最少知识原则”(Principle of Least Knowledge),其来源于1987年荷兰大学的一个叫做Demeter的项目。Craig Larman把Law of Demeter又称作“不要和陌生人说话”。在《程序员修炼之道》中讲LoD的那一章叫作“解耦合与迪米特法则”。关于迪米特法则有一些很形象的比喻:

如果你想让你的狗跑的话,你会对狗狗说还是对四条狗腿说?

如果你去店里买东西,你会把钱交给店员,还是会把钱包交给店员让他自己拿?

和狗的四肢说话?让店员自己从钱包里拿钱?这听起来有点荒唐,不过在我们的代码里这几乎是见怪不怪的事情了。

对于LoD,正式的表述如下:
对于对象‘O’中一个方法‘M’,M应该只能够访问以下对象中的方法:

  • 1.对象O;
  • 2.与O直接相关的Component Object;
  • 3.由方法M创建或者实例化的对象;
  • 4.作为方法M的参数的对象。

在《Clean Code(代码整洁之道)》一书中,有一段Apache framework中的一段违反了LoD的代码:

final String outputDir = ctxt.getOptions().getScratchDir().getAbsolutePath();

这么长的一串对其它对象的细节,以及细节的细节,细节的细节的细节……的调用,增加了耦合,使得代码结构复杂、僵化,难以扩展和维护。

在《重构》一书中的代码的环味道中有一种叫做“Feature Envy”(依恋情结),形象的描述了一种违反了LoC的情况。Feature Envy就是说一个对象对其它对象的内容更有兴趣,也就是说老是羡慕别的对象的成员、结构或者功能,大老远的调用人家的东西。这样的结构显然是不合理的。 我们的程序应该写得比较“害羞”。不能像前面例子中的那个不把自己当外人的店员一样,拿过客人的钱包自己把钱拿出来。“害羞”的程序只和自己最近的朋友交 谈。这种情况下应该调整程序的结构,让那个对象自己拥有它羡慕的feature,或者使用合理的设计模式(例如Facade和Mediator)。

参考http://en.wikipedia.org/wiki/Principle_of_Least_Knowledge

面向对象的S.O.L.I.D原则

一般来说这是面向对象的五大设计原则,但是,我觉得这些原则可适用于所有的软件开发。

Single Responsibility Principle (SRP)–职责单一原则

关于单一职责原则,其核心的思想是:一个类,只做一件事,并把这件事做好,其只有一个引起它变化的原因。单一职 责原则可以看作是低耦合、高内聚在面向对象原则上的引申,将职责定义为引起变化的原因,以提高内聚性来减少引起变化的原因。职责过多,可能引起它变化的原 因就越多,这将导致职责依赖,相互之间就产生影响,从而极大的损伤其内聚性和耦合度。单一职责,通常意味着单一的功能,因此不要为一个模块实现过多的功能 点,以保证实体只有一个引起它变化的原因。

Unix/Linux是这一原则的完美体现者。各个程序都独立负责一个单一的事。

Windows是这一原则的反面示例。几乎所有的程序都交织耦合在一起。

Open/Closed Principle (OCP)–开闭原则

关于开发封闭原则,其核心的思想是:模块是可扩展的,而不可修改的。也就是说,对扩展是开放的,而对修改是封闭的

对扩展开放,意味着有新的需求或变化时,可以对现有代码进行扩展,以适应新的情况。

对修改封闭,意味着类一旦设计完成,就可以独立完成其工作,而不要对类进行任何修改。

对于面向对象来说,需要你依赖抽象,而不是实现,23个经典设计模式中的“策略模式”就是这个实现。对于非面向对象编程,一些API需要你传入一个 你可以扩展的函数,比如我们的C语言的qsort()允许你提供一个“比较器”,STL中的容器类的内存分配,ACE中的多线程的各种锁。对于软件方面, 浏览器的各种插件属于这个原则的实践。

Liskov substitution principle (LSP)–里氏代换原则

软件工程大师Robert C. Martin把里氏代换原则最终简化为一句话:“Subtypes must be substitutable for their base types”。也就是,子类必须能够替换成它们的基类。即:子类应该可以替换任何基类能够出现的地方,并且经过替换以后,代码还能正常工作。另外,不应该 在代码中出现if/else之类对子类类型进行判断的条件。里氏替换原则LSP是使代码符合开闭原则的一个重要保证。正是由于子类型的可替换性才使得父类 型的模块在无需修改的情况下就可以扩展。

这么说来,似乎有点教条化,我非常建议大家看看这个原则个两个最经典的案例——“正方形不是长方形”和“鸵鸟不是鸟”。通过这两个案例,你会明白 《墨子小取》中说的——“娣,美人也,爱娣,非爱美人也….盗,人也;恶盗,非恶人也。”——妹妹虽然是美人,但喜欢妹妹并不代表喜欢美人。盗贼是人,但 讨厌盗贼也并不代表就讨厌人类。这个原则让你考虑的不是语义上对象的间的关系,而是实际需求的环境

在很多情况下,在设计初期我们类之间的关系不是很明确,LSP则给了我们一个判断和设计类之间关系的基准:需不需要继承,以及怎样设计继承关系。

Interface Segregation Principle (ISP)–接口隔离原则

接口隔离原则意思是把功能实现在接口中,而不是类中,使用多个专门的接口比使用单一的总接口要好。

举个例子,我们对电脑有不同的使用方式,比如:写作,通讯,看电影,打游戏,上网,编程,计算,数据等,如果我们把这些功能都声明在电脑的抽类里 面,那么,我们的上网本,PC机,服务器,笔记本的实现类都要实现所有的这些接口,这就显得太复杂了。所以,我们可以把其这些功能接口隔离开来,比如:工 作学习接口,编程开发接口,上网娱乐接口,计算和数据服务接口,这样,我们的不同功能的电脑就可以有所选择地继承这些接口。

这个原则可以提升我们“搭积木式”的软件开发。对于设计来说,Java中的各种Event Listener和Adapter,对于软件开发来说,不同的用户权限有不同的功能,不同的版本有不同的功能,都是这个原则的应用。

Dependency Inversion Principle(DIP)–依赖倒置原则

高层模块不应该依赖于低层模块的实现,而是依赖于高层抽象。

举个例子,墙面的开关不应该依赖于电灯的开关实现,而是应该依赖于一个抽象的开关的标准接口,这样,当我们扩展程序的时候,我们的开关同样可以控制 其它不同的灯,甚至不同的电器。也就是说,电灯和其它电器继承并实现我们的标准开关接口,而我们的开关产商就可不需要关于其要控制什么样的设备,只需要关 心那个标准的开关标准。这就是依赖倒置原则。

这就好像浏览器并不依赖于后面的web服务器,其只依赖于HTTP协议。这个原则实在是太重要了,社会的分工化,标准化都是这个设计原则的体现。

参考http://en.wikipedia.org/wiki/Solid_(object-oriented_design)

Common Closure Principle(CCP)–共同封闭原则

一个包中所有的类应该对同一种类型的变化关闭。一个变化影响一个包,便影响了包中所有的类。一个更简短的说法是:一起修改的类,应该组合在一起(同 一个包里)。如果必须修改应用程序里的代码,我们希望所有的修改都发生在一个包里(修改关闭),而不是遍布在很多包里。CCP原则就是把因为某个同样的原 因而需要修改的所有类组合进一个包里。如果2个类从物理上或者从概念上联系得非常紧密,它们通常一起发生改变,那么它们应该属于同一个包。

CCP延伸了开闭原则(OCP)的“关闭”概念,当因为某个原因需要修改时,把需要修改的范围限制在一个最小范围内的包里。

参考http://c2.com/cgi/wiki?CommonClosurePrinciple

Common Reuse Principle (CRP)–共同重用原则

包的所有类被一起重用。如果你重用了其中的一个类,就重用全部。换个说法是,没有被一起重用的类不应该被组合在一起。CRP原则帮助我们决定哪些类 应该被放到同一个包里。依赖一个包就是依赖这个包所包含的一切。当一个包发生了改变,并发布新的版本,使用这个包的所有用户都必须在新的包环境下验证他们 的工作,即使被他们使用的部分没有发生任何改变。因为如果包中包含有未被使用的类,即使用户不关心该类是否改变,但用户还是不得不升级该包并对原来的功能 加以重新测试。

CCP则让系统的维护者受益。CCP让包尽可能大(CCP原则加入功能相关的类),CRP则让包尽可能小(CRP原则剔除不使用的类)。它们的出发点不一样,但不相互冲突。

参考http://c2.com/cgi/wiki?CommonReusePrinciple

Hollywood Principle–好莱坞原则

好莱坞原则就是一句话——“don’t call us,we’ll call you.”。意思是,好莱坞的经纪人们不希望你去联系他们,而是他们会在需要的时候来联系你。也就是说,所有的组件都是被动的,所有的组件初始化和调用都 由容器负责。组件处在一个容器当中,由容器负责管理。

简单的来讲,就是由容器控制程序之间的关系,而非传统实现中,由程序代码直接操控。这也就是所谓“控制反转”的概念所在:

  • 1.不创建对象,而是描述创建对象的方式。
  • 2.在代码中,对象与服务没有直接联系,而是容器负责将这些联系在一起。

控制权由应用代码中转到了外部容器,控制权的转移,是所谓反转。

好莱坞原则就是IoC(Inversion of Control)或DI(Dependency Injection)的基础原则。这个原则很像依赖倒置原则,依赖接口,而不是实例,但是这个原则要解决的是怎么把这个实例传入调用类中?你可能把其声明 成成员,你可以通过构造函数,你可以通过函数参数。但是IoC可以让你通过配置文件,一个由Service Container 读取的配置文件来产生实际配置的类。但是程序也有可能变得不易读了,程序的性能也有可能还会下降。

参考
http://en.wikipedia.org/wiki/Hollywood_Principle
http://en.wikipedia.org/wiki/Inversion_of_Control

High Cohesion & Low/Loose coupling & –高内聚,低耦合

这个原则是UNIX操作系统设计的经典原则,把模块间的耦合降到最低,而努力让一个模块做到精益求精。

  • 内聚:一个模块内各个元素彼此结合的紧密程度
  • 耦合:一个软件结构内不同模块之间互连程度的度量

内聚意味着重用和独立,耦合意味着多米诺效应牵一发动全身。

参考
http://en.wikipedia.org/wiki/Coupling_(computer_science)
http://en.wikipedia.org/wiki/Cohesion_(computer_science)

Convention over Configuration(CoC)–惯例优于配置原则

简单点说,就是将一些公认的配置方式和信息作为内部缺省的规则来使用。例如,Hibernate的映射文件,如果约定字段名和类属性一致的话,基本 上就可以不要这个配置文件了。你的应用只需要指定不convention的信息即可,从而减少了大量convention而又不得不花时间和精力啰里啰嗦 的东东。配置文件很多时候相当的影响开发效率。

Rails中很少有配置文件(但不是没有,数据库连接就是一个配置文件),Rails的fans号称期开发效率是java开发的10倍,估计就是这 个原因。Maven也使用了CoC原则,当你执行mvn -compile命令的时候,不需要指源文件放在什么地方,而编译以后的class文件放置在什么地方也没有指定,这就是CoC原则。

参考http://en.wikipedia.org/wiki/Convention_over_Configuration

Separation of Concerns (SoC)–关注点分离

SoC是计算机科学中最重要的努力目标之一。这个原则,就是在软件开发中,通过各种手段,将问题的各个关注点分开。如果一个问题能分解为独立且较小 的问题,就是相对较易解决的。问题太过于复杂,要解决问题需要关注的点太多,而程序员的能力是有限的,不能同时关注于问题的各个方面。正如程序员的记忆力 相对于计算机知识来说那么有限一样,程序员解决问题的能力相对于要解决的问题的复杂性也是一样的非常有限。在我们分析问题的时候,如果我们把所有的东西混 在一起讨论,那么就只会有一个结果——乱。

我记得在上一家公司有一个项目,讨论就讨论了1年多,项目本来不复杂,但是没有使用SoC,全部的东西混为一谈,再加上一堆程序员注入了各种不同的观点和想法,整个项目一下子就失控了。最后,本来一个1年的项目做了3年。

实现关注点分离的方法主要有两种,一种是标准化,另一种是抽象与包装。标准化就是制定一套标准,让使用者都遵守它,将人们的行为统一起来,这样使用 标准的人就不用担心别人会有很多种不同的实现,使自己的程序不能和别人的配合。Java EE就是一个标准的大集合。每个开发者只需要关注于标准本身和他所在做的事情就行了。就像是开发镙丝钉的人只专注于开发镙丝钉就行了,而不用关注镙帽是怎 么生产的,反正镙帽和镙丝钉按标来就一定能合得上。不断地把程序的某些部分抽像差包装起来,也是实现关注点分离的好方法。一旦一个函数被抽像出来并实现 了,那么使用函数的人就不用关心这个函数是如何实现的,同样的,一旦一个类被抽像并实现了,类的使用者也不用再关注于这个类的内部是如何实现的。诸如组 件,分层,面向服务,等等这些概念都是在不同的层次上做抽像和包装,以使得使用者不用关心它的内部实现细节。
说白了还是“高内聚,低耦合”。

参考http://sulong.me/archives/99

Design by Contract (DbC)–契约式设计

DbC的核心思想是对软件系统中的元素之间相互合作以及“责任”与“义务”的比喻。这种比喻从商业活动中“客户”与“供应商”达成“契约”而得来。例如:
供应商必须提供某种产品(责任),并且他有权期望客户已经付款(权利)。
客户必须付款(责任),并且有权得到产品(权利)。

契约双方必须履行那些对所有契约都有效的责任,如法律和规定等。

同样的,如果在程序设计中一个模块提供了某种功能,那么它要:
期望所有调用它的客户模块都保证一定的进入条件:这就是模块的先验条件(客户的义务和供应商的权利,这样它就不用去处理不满足先验条件的情况)。

保证退出时给出特定的属性:这就是模块的后验条件——(供应商的义务,显然也是客户的权利)。

在进入时假定,并在退出时保持一些特定的属性:不变式。

契约就是这些权利和义务的正式形式。我们可以用“三个问题”来总结DbC,并且作为设计者要经常问:

  • 它期望的是什么?
  • 它要保证的是什么?
  • 它要保持的是什么?

根据Bertrand Meyer氏提出的DBC概念的描述,对于类的一个方法,都有一个前提条件以及一个后续条件,前提条件说明方法接受什么样的参数数据等,只有前提条件得到 满足时,这个方法才能被调用;同时后续条件用来说明这个方法完成时的状态,如果一个方法的执行会导致这个方法的后续条件不成立,那么这个方法也不应该正常 返回。

现在把前提条件以及后续条件应用到继承子类中,子类方法应该满足:

  • 1.前提条件不强于基类.
  • 2.后续条件不弱于基类.

换句话说,通过基类的接口调用一个对象时,用户只知道基类前提条件以及后续条件。因此继承类不得要求用户提供比基类方法要求的更强的前提条件,亦 即,继承类方法必须接受任何基类方法能接受的任何条件(参数)。同样,继承类必须顺从基类的所有后续条件,亦即,继承类方法的行为和输出不得违反由基类建 立起来的任何约束,不能让用户对继承类方法的输出感到困惑。

这样,我们就有了基于契约的LSP,基于契约的LSP是LSP的一种强化。

参考http://en.wikipedia.org/wiki/Design_by_contract

Acyclic Dependencies Principle (ADP)–无环依赖原则

包之间的依赖结构必须是一个直接的无环图形,也就是说,在依赖结构中不允许出现环(循环依赖)。如果包的依赖形成了环状结构,怎么样打破这种循环依 赖呢?有2种方法可以打破这种循环依赖关系:第一种方法是创建新的包,如果A、B、C形成环路依赖,那么把这些共同类抽出来放在一个新的包D里。这样就把 C依赖A变成了C依赖D以及A依赖D,从而打破了循环依赖关系。第二种方法是使用DIP(依赖倒置原则)和ISP(接口分隔原则)设计原则。

无环依赖原则(ADP)为我们解决包之间的关系耦合问题。在设计模块时,不能有循环依赖。

参考http://c2.com/cgi/wiki?AcyclicDependenciesPrinciple

上面这些原则可能有些学院派,也可能太为理论,我在这里说的也比较模糊和简单,这里只是给大家一个概貌,如果想要了解更多的东西,大家可以多google一下。

不过这些原则看上去都不难,但是要用好却并不那么容易。要能把这些原则用得好用得精,而不教条,我的经验如下:(我以为这是一个理论到应用的过程)

  • 1.你可以先粗浅或是表面地知道这些原则。
  • 2.但不要急着马上就使用。
  • 3.在工作学习中观察和总结别人或自己的设计。
  • 4.再回过头来了回顾一下这些原则,相信你会有一些自己的心得。
  • 5.有适度地去实践一下。
  • 6.Goto第 3步。

好的程序设计原则

好的编程原则跟好的系统设计原则和技术实施原则有着密切的联系。下面的这些编程原则在过去的这些年里让我成为了一名优秀的程序员,我相信,这些原则对任何一个开发人员来说,都能让他的编程能力大幅度的提高,能让他开发出可维护性更强、缺陷更少的程序。

我不要自我重复 — 这也许是在编程开发这最最基本的一个信条,就是要告诉你不要出现重复的代码。我们很多的编程结构之所以存在,就是为了帮助我们消除重复(例如,循环语句,函数,类,等等)。一旦程序里开始有重复现象的出现(例如很长的表达式、一大堆的语句,但都是为了表达相同的概念),你就需要对代码进行一次新的提炼,抽象。
http://en.wikipedia.org/wiki/Don%27t_repeat_yourself

提炼原则 — 跟“不要自我重复原则”相关,这一原则是说“程序中任何一段具有功能性的代码在源代码文件中应该唯一的存在。”
http://en.wikipedia.org/wiki/Abstraction_principle_(programming)

保持简单 — 简单化(避免复杂)永远都应该是你的头等目标。简单的程序让你写起来容易,产生的bug更少,更容易维护修改。
http://en.wikipedia.org/wiki/KISS_principle

不要开发你目前用不到的功能 — 除非你真正需要用到它,否则不要轻易加上那些乱七八糟用不到的功能。
http://en.wikipedia.org/wiki/YAGNI

用最简单的方法让程序跑起来 — 在开发时有个非常好的问题你需要问问自己,“怎样才能最简单的让程序跑起来?”这能帮助我们在设计时让程序保持简单。
http://c2.com/xp/DoTheSimplestThingThatCouldPossiblyWork.html

不要让我动脑子 — 这实际上是Steve Krug 关于web界面操作的一本书的书名,但也适用于编程。主旨是,程序代码应该让人们花最小的努力就能读懂和理解。如果一段程序对于阅读者来说需要花费太多的努力才能理解,那它很可能需要进一步简化。
http://www.sensible.com/dmmt.html

开放/封闭原则 — 程序里的实体项(类,模块,函数等)应该对扩展行为开放,对修改行为关闭。换句话说,不要写允许别人修改的类,应该写能让人们扩展的类。
http://en.wikipedia.org/wiki/Open_Closed_Principle

为维护者写程序 — 任何值得你编写的程序在将来都是值得你去维护的,也许由你维护,也许由他人。在将来,当你不得不维护这些程序时,你对这些代码的记忆会基本上跟一个陌生人一样,所以,你最好还是当成一直在给别人写程序。一个有助于你记住这个原则的办法是“写程序时时刻记着,这个将来要维护你写的程序的人是一个有严重暴力倾向,并且知道你住在哪里的精神变态者”。
http://c2.com/cgi/wiki?CodeForTheMaintainer

最少意外原则 — 最少意外原则通常是使用在用户界面设计上,但这个原则同样适用于编写程序。程序代码应尽可能的不要让阅读者感到意外。也就是说应该遵循编码规范和常见习惯,按照公认的习惯方式进行组织和命名,不符常规的编程动作应该尽可能的避免。
http://en.wikipedia.org/wiki/Principle_of_least_astonishment

单一职责原则 — 一个代码组件(例如类或函数)应该只执行单一的预设的任务。
http://en.wikipedia.org/wiki/Single_responsibility_principle

最小化耦合关系 — 一个代码片段(代码块,函数,类等)应该最小化它对其它代码的依赖。这个目标通过尽可能少的使用共享变量来实现。“低耦合是一个计算机系统结构合理、设计优秀的标志,把它与高聚合特征联合起来,会对可读性和可维护性等重要目标的实现具有重要的意义。”
http://en.wikipedia.org/wiki/Coupling_(computer_programming)

最大化内聚性 — 具有相似功能的代码应该放在同一个代码组件里。
http://en.wikipedia.org/wiki/Cohesion_(computer_science)

隐藏实现细节 — 隐藏实现细节能最小化你在修改程序组件时产生的对那些使用这个组件的其它程序模块的影响。
http://en.wikipedia.org/wiki/Information_Hiding

笛米特法则(Law of Demeter) — 程序组件应该只跟它的直系亲属有关系(例如继承类,内包含的对象,通过参数入口传入的对象等。)
http://en.wikipedia.org/wiki/Law_of_Demeter

避免过早优化 — 只有当你的程序没有其它问题,只是比你预期的要慢时,你才能去考虑优化工作。只有当其它工作都做完后,你才能考虑优化问题,而且你只应该依据经验做法来优化。“对于小幅度的性能改进都不该考虑,要优化就应该是97%的性能提升:过早优化是一切罪恶的根源”—Donald Knuth。
http://en.wikipedia.org/wiki/Program_optimization

代码复用 — 这不是非常核心的原则,但它跟其它原则一样非常有价值。代码复用能提高程序的可靠性,节省你的开发时间。
http://en.wikipedia.org/wiki/Code_reuse

职责分离 — 不同领域的功能应该由完全不同的代码模块来管理,尽量减少这样的模块之间的重叠。 http://en.wikipedia.org/wiki/Separation_of_concerns

拥抱变化 — 这是Kent Beck的一本书的副标题,它也是极限编程和敏捷开发方法的基本信条之一。很多的其它原则都基于此观念:面对变化,欢迎变化。事实上,一些经典的软件工程原则,例如最小化耦合,就是为了让程序更容易面对变化。不论你是否采用了极限编程方法,这个原则对你的程序开发都有重要意义。http://www.amazon.com/gp/product/0321278658

[英文原文:The Principles of Good Programming ]
这和《代码大全》上的总结基本一致

伯特兰·罗素的哲学语录

罗素的伦理

美好人生中,爱和知识是必须的。在某种程度上爱更为重要。爱将激励我们去寻求知识,从而更清楚地知道如何使我们所爱的人获益。   如果没有知识,我们可能相信道听途说,好心做了坏事。   最完美的爱是欢喜和美好愿望不可分割的统一。没有美好愿望的欢喜可能是残酷的和自私的;而没有欢喜的美好愿望又可能会是冷漠和高傲。   爱能使人的欲望变得协调,而非冲突。两个相爱的人可以成败与共,而相恨的人,一方的失败则是另一方的成功。

欲望

蟒蛇嘱饱之后就会开始睡眠,除非到了需要另外一餐之后,决不会醒来。而人则不一样。人吃饱之后,绝不会就由此满足,反而更为欲望丛生,生机勃勃。   人的欲望有四大种:贪婪、竞争、虚荣、权力。   贪婪是一种巨大的动机,希望有尽可能多的财富或财富的控制权。无论你拥有多少,你总是希望得到更多,永远不会满足。   如果说贪婪是渴求比原有的多得多,而竞争则是比别人的多得多。如果竞争比贪婪更为强烈,得不到有效的控制与管理,那么这个世界将成为最不幸的地方。   虚荣是一种有巨大潜力的动机,它是人们内心深处一种最重要的欲望,它的表现形式多样。虚荣带来的重要问题之一就是自我不断地膨胀。   权力欲近似于虚荣,但有所不同。满足虚荣心的是荣誉。拥有荣誉却不拥有权力较之拥有权力而不拥 有荣誉是件容易的事。拥有权力的人可以管制仅有荣誉的人,而仅有荣誉的人却不能管制有权力的人。所以对于有野心的人,权力欲更为强烈。在权力欲的驱使下, 人更热衷于施加痛苦而不是使人快乐。拥有权力的人在对别人说“不“的过程中比同意会得到更大的满足。正因如此,权力欲成为一种危险的动机。

金钱崇拜

金钱崇拜指的是一种信仰,即认为一切价值都要用金钱来衡量,金钱是人成功与否的惟一尺度。   这种错误的成功理念引导人们残害了自己的本性,降低了人生的快乐,增加了紧张的感受,使整个社会变得消极、厌倦、缺乏幻想。使人心中一切伟大愿望陷于沉寂。   由于惧怕失去金钱,从而使人有了更多的忧虑和烦恼,使人把获得幸福的能力消耗殆尽。

罗素——自由思想十诫

1.凡事不要抱绝对肯定的态度;

2.不要试图隐瞒证据,因为证据最终会被暴露;

3.不要害怕思考,因为思考总能让人有所补益;

4.有人与你意见相左时,即使这些意见来自你的丈夫或孩子,也应该用争论去说服他们,而不是用权威去征服,因为靠权威取得的胜利是虚幻而自欺欺人的;

5.不用盲目地崇拜任何权威,因为你总能找到相反的权威;

6.不要用权力去压制你认为有害的意见,因为如果你采取压制,其实 只说明你自己受到了这些意见的压制;

7.不要为自己持独特看法而感到害怕,因为我们现在所接受的常识都 曾是独特看法;

8.与其被动地同意别人的看法,不如理智地表示反对,因为如果你信自己的智慧,那么你的异议正表明了更多的赞同;

9.即使真相并不令人愉快,也一定要做到诚实,因为掩盖真相往往要费更大力气;

10.不要嫉妒那些在蠢人的天堂里享受幸福的人,因为只有蠢人才以为那是幸福。

罗素的名言语录

生活中不是没有美,而是缺少发现美的眼睛。

Do not fear to be eccentric in opinion, for every opinion now accepted was once eccentric.
不要害怕怀有怪念头,因为现在人们接受的所有的观念都曾经是怪念头。

Democracy is the process by which people choose the man who’ll get the blame.
民主,就是挑选那个受批评的人的过程。

Drunkenness is temporary suicide.
喝醉是暂时性的自杀。

I say quite deliberately that the Christian religion, as organized in its Churches, has been and still is the principal enemy of moral progress in the world.
我明确的说,由教会所组织的基督教是道德进步的最大敌人,过去如此,现在依然如此。

A process which led from the amoeba to man appeared to the philosophers to be obviously a progress though whether the amoeba would agree with this opinion is not known.
从阿米巴变形虫到人类的这一过程对哲学家来说,很明显是个进步。但是变形虫怎么想我们就不知道了。

I would never die for my beliefs because I might be wrong.
我永远不会为信仰而死,因为我的信仰可能是错的。

In America everybody is of the opinion that he has no social superiors, since all men are equal, but he does not admit that he has no social inferiors.
在美国,所有人都认为没有什么人比他的社会地位高,因为人人生而平等。但是,他可不承认没有人比他社会地位低。

It has been said that man is a rational animal. All my life I have been searching for evidence which could support this.
据说人是一种理性动物。穷我自己一生,我都在寻找这观点的证据。

Man is a credulous animal, and must believe something; in the absence of good grounds for belief, he will be satisfied with bad ones.
人是轻信的动物,必须得相信点什么。如果这种信仰没有什么好的依据,糟糕的依据也能对付。

Many a man will have the courage to die gallantly, but will not have the courage to say, or even to think, that the cause for which he is asked to die is an unworthy one.
很多人可以勇敢的死去,但是却没有勇气说他为之而死的原因没有意义,甚至连这样想一想的勇气也没有。

Many people when they fall in love look for a little haven of refuge from the world, where they can be sure of being admired when they are not admirable, and praised when they are not praiseworthy.
很多人陷入爱情是为了寻找一个遁世的避难所。在这个避难所里,当他们不值得爱慕的时候,依然有人爱慕他们,当他们不值得赞扬的时候,依然有人赞扬他们。

Many people would sooner die than think; in fact, they do so.
有很多人,让他们思考一下还不如让他们去死。事实上,很多人还没思考过就已经死了。

Men are born ignorant, not stupid. They are made stupid by education.
人生而无知,但还不愚蠢。教育才把他们变蠢。

Conventional people are roused to fury by departure from convention, largely because they regard such departure as a criticism of themselves.
传统的人看到背离传统的行为就大发雷霆,主要是因为他们把这种背离当作对他们的批评。

A hallucination is a fact, not an error; what is erroneous is a judgment based upon it.
幻觉不是你的错,在幻觉中做决定,这就是你的不对了。

A life without adventure is likely to be unsatisfying, but a life in which adventure is allowed to take whatever form it will is sure to be short.
生活中完全没有冒险,这可能是没什么意思的。但是生活中如果不管什么种类的探险都有,那肯定是短暂的。

Against my will, in the course of my travels, the belief that everything worth knowing was known at Cambridge gradually wore off. In this respect my travels were very useful to me.
我曾相信,所有值得知道之事,我在剑桥都知道了。在我旅行的过程之中,这一想法逐渐消失了。这与我本意相反,但是却对我非常有益。

Aristotle maintained that women have fewer teeth than men; although he was twice married, it never occurred to him to verify this statement by examining his wives’ mouths.
亚里士多德说女人比男人的牙齿要少。尽管他结了两次婚,但是他都没想过要检查一下他老婆的牙。

Contempt for happiness is usually contempt for other people’s happiness, and is an elegant disguise for hatred of the human race.
对幸福的轻蔑通常是对其他人幸福的轻蔑,在精巧的伪装之下是对人类的仇恨。

For most people, the real life is long, is the ideal and may compromise between continuous compromise.
对绝大多数人来说,真正的生活是长期的将就,是理想与可能两者之间不断的妥协。

00001041

1·一部分儿童具有思考的习惯,而教育的目的在于铲除他们的这种习惯。出处:《我的信仰》,1925

2·科学使我们为善或为恶的力量都有所提升。(11月20日名言)   出处;《我的信仰》,1925

3·广义地说,最渴望权力之人就是最可能获得权力之人。   出处:《权力论》,1938

4·中国是一切规则的例外。出处:《怀疑论》,1928

5·爱因斯坦的‘相对论’使人觉得懂得之事变少了。   出处:《现代科学及其将来》

6·乞丐并不会妒忌百万富翁,但是他肯定会妒忌收入更高的乞丐   出处:《幸福之路》,1930

7·青年时期是豁达的时期,应该利用这个时期养成自己豁达的性格。(11月6日名言)

8·许多人宁愿死,也不愿思考,事实上他们也确实至死都没有思考。

9·我的人生正是:使事业成为喜悦,使喜悦成为事业。

10·从每天上学的时间看,中国儿童最有思想。

11·即使真相并不令人愉快,也一定要做到诚实,因为掩盖真相往往要费更大力气。

12·不要为自己持独特看法而感到害怕,因为我们现在所接受的常识都曾是独特看法。

13·不用盲目地崇拜任何权威,因为你总能找到相反的权威。

14·凡事不要抱绝对肯定的态度。

15·这个世界最大的麻烦,就在傻瓜与狂热分子对自我总是如此确定,而智者的内心却总充满疑惑。

16·科学是那些我们已经知道的东西,哲学是那些我们还不知道的东西。哲学是我们可以胡说八道的一种特殊权力。哲学是有道理的猜想。

17·爱国就是为一些很无聊的理由去杀人或被杀。   出处:1914年,第一次世界大战爆发,罗素积极宣传反战思想,鼓吹“CO”(以良心为由拒绝从军);几次反战演讲时,都遭到英国爱国主义民众暴力攻击。剑桥大学要求罗素缴交罚款110英镑或自愿解聘。罗素选择了解聘,并以这句话讽刺爱国主义。

18·美国的民主,没有生命,也无意义,因为人民无法撤换那些真正统治他们的人。   寓意:讽刺美国真正的统治权是在大老板的大公司里“世袭”着,每一个美国总统都必须为这些呼风唤雨的大公司的利益服务。

19.对爱情的渴望,对真理的追求,对人类苦难不可遏制的同情心,这三种简单而又强烈的感情支配了我的一生。

20.不管你是在研究什么事物、还是在思考任何观点,只问自己,事实是什么,以及这些事实所证实的真理是什么。永远不要让自己被自己所更愿意相信的、或者认为人们相信了,会对社会更加有益的东西所影响。只是单单去审视,什么才是事实。

21.The good life is one inspired by love and guided by knowledge.(美好的生活是由爱所激励,由知识所引导)

当一个国家强大得不想去侵略别国,那么,这个国家就叫做中国。

论人性与政治 On Human Nature and Politics

On Human Nature and Politics
On Human Nature and Politics

论人性与政治

伯特兰·罗素

        毫无疑问对食物的渴望曾经是而且仍然是很多大的政治事件的主要原因之一。但是人类与其它动物在一个很重要的方面存在差异,那就是人类有欲望,而且可以说是 无穷无尽、永远无法充分满足的欲望,这些欲望使得他们即便到了天国也无法安静。蟒蛇在一顿饱餐之后就去睡,直到需要另外一顿时才醒来。人类,在很大程度上 则不会如此。阿拉伯人曾一度节俭地过着以几颗枣为生的生活,后来夺取了东罗马帝国的大量财富,住在无法想象的豪华宫殿中,他们没有因此而平静下来。饥饿已 经不再是一个动机,因为他们稍一点头示意,希腊奴隶就会给他们奉上精美食品。但是其它的欲望仍然促使他们十分活跃,尤其是四种欲望,我们称之为占有欲、竞 争欲、虚荣心和权力欲。

占有欲——渴望拥有尽可能多的财产权利。这是一种动机,我想,这种动机来源于恐惧和对生活必需品的渴望的结合。

我 曾经善待来自爱沙尼亚的两个小女孩,她们是从一场饥饿的饥荒中死里逃生的。她们住在我家里,当然有足够多的食物。但她们却一有空就跑到邻近的农场偷土豆并 囤积起来。洛克菲勒在年幼的时候生活十分贫苦,成年后仍以类似的方式生活着。与此类似,阿拉伯酋长坐在他们丝质的拜占庭长沙发椅上仍忘不掉沙漠,他们所囤 积的财富远远超过任何可能的身体需要。无论怎样对占有欲进行心理分析,没有人可以否认它是一种极为强大的动机——尤其是在有权有势的人们之中。因为,如我 前面所说,占有欲是一种无限的动机。不管你已拥有多么多,你仍将渴望占有更多。完全的满足是一个无法实现的梦。

虽然占有欲是资本主义制度的 主要动力来源,但在人们解决了饥饿问题之后,它却无论如何不再是最强烈动机。竞争欲是一个更为强大的动机。在伊斯兰教历史上,很多个王朝都一再惨遭不幸, 这是因为国王的多位妻子的儿子们彼此不和而引发内战,造成全面毁灭。在现代欧洲也发生了类似的事情。当英国政府不很明智地允许德国皇帝参加在 Spithead 举行的一次海军检阅时,他脑中涌现出的想法并不是我们原来的打算,他想到的是,“我一定要拥有一支和英国一样好的舰队”。正是他的这个想法,导致了我们后 来的一系列麻烦,如果占有欲总是强于竞争欲的话,世界也许比现在更美好。但事实上,许多人将愉快地面对贫困,如果他们能以贫困使他们的竞争对手彻底毁灭的 话,这就是现在的税收如此之高的原因。

虚荣心是一个有着极大潜在力的动机,任何一个经常同孩子打交道的人都知道他们常常会做一些滑稽动作并 要求说:“看看我”。“看看我”是人心最基本的欲望之一,这种欲望有多种表现形式,从孩子们的扮小丑到追求死后的名声,文艺复兴时曾有一个意大利小君主, 在临死前当牧师问他是否有何忏悔时,他回答道:“是,有一件事情。有一次国王和教皇同时来看我,我把他们带到塔顶观光,我忘了把他们都推下去,那样我就能 永远名昭于世。”历史没有叙述牧师是否宽恕了他。虚荣心的麻烦之一就是,喂它的东西越多,它就越膨胀,你被谈论的越多,你就越希望被人谈论。让一个被判了 死刑的罪犯看报纸上登的关于他的报道越多,就会对那些报道不充分的报纸越发愤怒,政治家和文人们也是如此。他们越是出名,剪报机构就会发现越难以满足他 们。怎样夸张虚荣心在人的一生中影响都不为过,从三岁孩童到那些眉头一皱世界就会为之一颤的统治者。人类甚至犯了这样的大不敬之罪:将这些欲望归之于神, 认为神总是渴望被不断赞扬。

虽然我们已考虑到了的动机的影响非常强大,还有一种动机比它们更有影响……权欲如同虚荣心,不达无限权力是永远 无法满足权欲的。由于它特别是精力充沛者的恶行,对权力的追求偶尔可能会达到目的,但成功的比例很小。权欲的确是重要人物生活中最强烈的动机。行使权力的 经历会更增加对权力的热爱,这不但适用于无足轻重的小权,也适用于君主手中的权力。在1914年第一次世界大战之前的幸福年代里,当一些富有的主妇拥有一 批侍从后,她们对仆人行使权力的乐趣随着年龄的增加而不断增长。同样地,在任何一个专制制度里,掌权者都会随着权力带来的愉悦而变得越来越暴虐。由于权力 的表现形式就是让人们做他们不愿做的事,被权欲所驱使的人就更倾向于给人们带来痛苦而不是喜悦。如果你因正当理由向你的上级请假,她不同意必同意会使他的 权欲得到更大的满足。如果你想得到建房许可证,有关的官员也会从说“不行”比说“可以”中获得更多乐趣。正是这类事才使得权欲成了一个非常危险的动机。但 是它也有有利的方面。我想对知识的追求主要就是受权欲的驱使。科技的进步也是一样。在政界,一个改革家爱权的程度绝不亚于一个独裁者。如果完全否定权欲这 一动机将是一个极大的错误。权欲这一动机究竟是引导人做出有益的行动还是有害的行动,取决于社会制度以及个人的能力。

现在我来谈谈其它的动 机,尽管在某种意义上这些没有我们已讨论过的动机那么要紧,但仍然有着相当的重要性。其中第一个是追求刺激。人优越于畜生之处表现在他们会感到厌倦,虽说 在观察动物园的猿类时我有时会想它们也许也有着这种讨厌的感情的萌芽。不管怎样,经验表明,几乎所有的人都具有真正强有力的欲望之一就是摆脱厌倦状态。

当 白人刚开始同那些尚未开化的野蛮种族交往时,他们带来了各种好处,从圣经福音的教导到南瓜馅饼。但是,大多数野蛮人都是很冷淡地接受了这一切,我们对此非 常遗憾。在我们带来的众多礼物中,他们最看重的是会令人陶醉的酒。正是这种酒,使他们平生第一次在一小段时间内有一种活着比死好的幻觉。

红 印第安人,在未受到白人影响时,喜欢用烟管抽烟,不是像我们那样平静地抽,而是非常疯狂地、深深地吸,以至于沉浸在一种昏迷的状态。当尼古丁不再满足刺激 需要时,就会有一个爱国的演说者将他们挑动起来攻打邻近的部落。这带给他们的享受,就像我们(依我们的气质)从赛马或大选中得到的享受一样。

对于现代文明人,就像对于原始的红印第安人部落一样,我认为正是对刺激的追求,才使他们为战争的爆发而叫好。这种情绪就像是看一场足球比赛,虽然其结果有时更加严重一点。

要 断定追求刺激这一动机的根本原因绝非易事。我倾向于认为我们的大脑结构适应人们以打猎为生时的状态。那时人们带着原始的武器,花上一整天的时间潜步跟踪一 只鹿,希望用它做晚餐。天黑时,他拖着猎物凯旋回山洞。他躺下来歇息,虽疲惫不堪,却心满意足。他的妻子便开始忙活着洗肉煮肉。他感到困顿,浑身酸痛。肉 的香味充满着他的每一个细胞。吃过晚饭后,他就沉沉睡去。在这样的生活中,人们没有时间也没有精力去感到厌倦。但是当他开始从事农业后,他的妻子被迫干完 田间所有的劳作,他便开始有时间考虑人类的生活名利,创造神话和哲学,并梦想从此以后可以过上在天国里自由驰骋狩猎的生活。

我们的大脑结构 适应繁重的体力劳动。在我年青的时候,经常利用假期进行长途跋涉。我一天会走上25里路。在夜晚降临时,我根本不需要任何东西帮我摆脱厌倦,因为能好好地 坐下来的喜悦已让我心满意足。但是现代生活不可能遵循这样靠体力劳动的原则。大量的工作是坐着完成,而大部分的体力劳动只运动几块专门的肌肉。很多伦敦人 聚众于特拉发格广场,疯狂的为政府宣布将他们处死的宣言而欢呼(指宣战)如果那天他们徒步走了25里路的话,他们就不会再这样欢呼了。但用这种方式医治人 们的好斗性是不现实的。如果人们想生存下去——这也许并不是人们所渴望的——就必须找到其他无害的途径来发泄人们体内那些产生爱和兴奋的剩余体力。

但 这个问题道德学家和社会改革家极少考虑过。社会改革家认为他们有更重要的事情去考虑。而另一方面,道德学家则为允许人们发泄激情的方式担忧,在他们看来, 其严重程度就等同于罪恶。舞厅、电影院和本世纪的爵士乐(如同我们听信的道德学家们所说的话),全都是地狱之门。所以,我们最好整日呆在家里,认真反思我 们的罪过对于那些严肃的人发出的这些警告,我不敢完全苟同。魔鬼有许多种形式,有的是专门用来诱骗年轻人寻欢作乐,难道不也正是同一个恶魔劝说老年人去诅 咒这一种享乐的吗?对老年人来说诅咒难道不是一种更适宜于他们的刺激吗?诅咒或许是一种药,如鸦片一样,只有不断加大剂量才能达到预期的效果?开始时我们 只是攻击电影院的罪恶,渐渐地则被引向诅咒反对党,南欧移民,亚洲移民,总之,除了我们圈子之外的所有人我们都咒,又难道不可怕吗?正是这种诅咒,漫延开 来便导致战争。我却从未听说过从舞厅引发的战争。

激情的可怕之处就在于它的许多形式都具有破坏性。对那些不能自控而过度酗酒或赌博者是有害 的,以民众暴乱的形式寻求刺激也是有害的。最具破坏性的就是它导致战争。而人们追求刺激又是一种根深蒂固的需要,所以除非有现成的无害的发泄方式,人们就 将采用诸如此类的有害的方式。只要控制在法律限制之内,这种无害方式在现在的体育以及政治活动中都有。但这些并不够,尤其是由于有些最刺激的政治活动本身 就最具破坏性。

文明生活已变得平淡无奇,如果要使其稳定,就必须找出无害的方式让人们发泄冲动,我们的老祖先可以通过打猎来满足这种冲动的 发泄。在澳大利亚,那里人少兔子多,我发现人们通过很熟练地屠宰成千上百的兔子这种原始的方式来满足他们的原始冲动。但在伦敦或纽约,这里人多兔子少,所 以必须找到其他方式。我想每一个大城市都应该有人造瀑布,人们可以乘着不堪一击的木船顺流而下。瀑布的下方应该有浴池,里面放满了机械鲨鱼。任何鼓吹防御 性战争的人都应被法统这些制作精巧的怪物每天在一起呆上两个小时。

—————————————————————————–

On Human Nature and Politics

Bertrand Russell

        Undoubtedly the desire for food has been, and still is, one of the main causes of great political events. But man differs from other animals in one very important respect, and that is that he has desires which are, so to speak, intimate, which can never be fully gratified, and which should keep him restless even in Paradise. The boa constrictor, when he had an adequate meal, goes to sleep, and does not wake until he needs another meal. Human beings, for the most not part are not like this. When the Arabs, who had been used to living sparingly on a few dates, acquired the riches of the Eastern Roman Empire and dwelt in palaces of almost unbelievable luxury, they did not, on that account, become inactive. Hunger could no longer be a motive, for Greek slaves supplied them with exquisite viands at the slightest nod. But other desires kept them active; four in particular, which we can label acquisitiveness, rivalry, vanity and love of power.

  Acquisitiveness-the wish to possess as much as possible of goods, or the title to goods-is a motive which, I suppose, has its origin in a combination of fear with the desire for necessaries.

  I once befriended two little girls from Esthonia, who had narrowly escaped death from starvation in a famine. They lived in my family, and of course had plenty to eat. But they spent all their leisure visiting neighbouring farms and stealing potatoes, which they hoarded. Rockefeller, who in his infancy had experienced great poverty, spent his adult life in a similar manner. Similarly the Arab chieftains on their silken Byzantine divans could not forget the desert, and hoarded riches far beyond any possible physical need. But whatever the psychoanalysis of acquisitiveness, no one can deny that it is one of the great motives -especially among the more powerful, for ,as I said before, it is one of the infinite motives .However much you may acquire you will always wish to acquire more ;satiety is a dream which will always elude you.

But acquisitiveness, although it is the mainspring of the capitalist system, is by no means the most powerful of the motives that survive the conquest of hunger .Rivalry is a much stronger motive. Over and over again in Muhammadan history, dynasties have come to grief because the sons of a sultan by different mothers could not agree, and in the resulting civil war universal ruin resulted. The same sort of thing happens in modern Europe When the British Government very unwisely allowed the Kaiser to be present at a naval review at Spithead, the thought which arose in his mind was not the one which we had intended. What he thought was.” I must have a Navy as good as Grandmamma’s.”And from this thought pier place than it is if acquisitiveness were always stronger than rivalry. But in fact ,a great many men will cheerfully face impoverishment if they can thereby secure complete ruin for their rivals, Hence the present level of taxation.

        Vanity is a motive of immense potency. Anyone who has much to do with children knows how they are constantly performing some antic and saying “Look at me”. “Look at me “is one of the most fundamental desires of the human heart. It can take innumerable forms, from buffoonery to the pursuit of posthumous fame. There was a Renaissance Italian princeling who was asked by the priest on his deathbed if he had anything to repent of “Yes,” he said “There is one thing. On one occasion I had a visit from the Emperor and the Pope simultaneously .I too tem to the top of my tower to see the view, and I neglected the opportunity to throw them both down .which would have given me immortal fame.” history does not relate whether the priest gave him absolution. One of the troubles about vanity is that it grows with what it feeds on .The talked about. The condemned murderer who is allowed to see the account of his trial in the Press is indignant if he finds a newspaper which has reported it inadequately. And the more he finds about himself in other newspapers, the more indignant he will be with those whose reports are meager. Politicians and literary men are in the same case. And the more famous they become, the more difficult the press cutting agency finds it to satisfy them .It is scarcely possible to exaggerate the influence of vanity throughout the range of human life, from the child of three to the potentate at whose frown the world trembles. Mankind have even committed the impiety of attributing similar desires to the deity, whom they imaging avid for continual praise.

But great as is the influence of the motives we have been considering, there is one which out weighs these all……Power, like vanity, is insatiable. Nothing short of omnipotence could satisfy it completely. And as it is especially the vice of energetic men, the casual efficacy of love of power is out of all proportion to its frequency. It is ,indeed, by far the strongest motive in the lives of important men .Love of power is greatly increased by the experience of power ,and this applies to petty power as well as to that of potentates ,In the happy days before 1914,when well-to -do ladies could acquire a host of servants, their pleasure in exercising power over the domestics steadily increased with age .Similarly, in any autocratic regime, the holders of power become increasingly, tyrannical with experience of the delights that power can afford. Since power over human beings is shown in making them do what they would rather not do, the man who is actuated by love of power is more apt to inflict pain than to permit pleasure .If you ask your boss for leave lf absence from the office on some legitimate occasion, his love of power will derive more satisfaction from refusal than from consent .If you require a building permit, the petty official concerned will obviously get more pleasure from saying “No” than from saying “Yes”. It is this sort of thing which makes the love of power such a dangerous motive ,But it has other sides which are more desirable .The pursuit of knowledge is ,I think ,mainly actuated by love lf power ,And so are all advances in scientific technique ,In politics also ,a reformer may have just as strong a love of power as a despot .It would be a complete mistake to decry love of power altogether as a motive ,Whether you will be led by this motive to actions which are useful ,or to actions which are pernicious ,depends upon the social system ,and upon your capacities .

I come now to other motives which ,though in a sense less fundamental than those we have been considering ,are still of considerable importuned ,The first of these is love of excitement .Human beings show their superiority to the brutes by their capacity for boredom ,though I have sometimes thought ,in Examining the apes at the Zoo, that they ,perhaps ,have the rudiments of this tiresome emotion .However that may be, experience shows that escape from boredom is one of the really powerful desires of almost all human beings.

  When white men first effect contact with some unspoilt race of savages, they offer them all kinds of benefits, from the light of the Gospel to pumpkin pie. These, however, much as we may regret it, most savages receive with indifference. What they really value among the gifts that we bring to them is intoxicating liquor ,which enables them .for the first time in their lives ,to have the illusion, for a few brief moments ,that it is better to be alive than dead.
Red Indians ,while they were still unaffected by white men ,would smoke their pipes .not calmly as we do ,but orgiastically ,in haling so deeply that they sank into a faint ,And when excitement by means of nicotine failed ,a patriotic orator would stir them up to attack a neighbouring tribe ,which would give them all the enjoyment that we (according to our temperament ) derive from a horse race of a General Election.

  With civilized men, as with primitive Red Indian tribes, it is, I think, chiefly love of excitement which makes the populace applaud when war breaks out; the emotion is exactly the same as at a football match, although the results are sometimes somewhat more serious.
It is not altogether easy to decide what is the root cause of the love of excitement. I incline to think that our mental make-up is adapted to the stage when men lived by hunting .When a man spent a long day with very primitive weapons in stalking a deer with the hope of dinner and when ,at the end of the day ,he dragged the carcase triumphantly to his cave ,he sank down in contented weariness, while his wife dressed and cooked the meat ,He was sleepy ,and his bones ached ,and the smell of cooking filled every nook and cranny of his consciousness. At last after eating, he sank into deep sleep. In such a life there was neither time nor energy for boredom. But when he took to agriculture, and made his wife do all the heavy work in the fields, he had time to reflect upon the vanity of human life, to invent mythologies and systems of philosophy, and to dream of the life hereafter in which he would perpetually hunt the wild boar of Valhalla.

Our mental make-up is suited to a life of very severe physical labour , I used ,when I was younger ,to take my holidays walking ,I would cover 25 miles a day ,and when the evening came I had no need of anything to keep me from boredom ,since the delight of sitting amply sufficed .But modern lift cannot be conducted on these physically strenuous principles ,A great deal of work is sedentary and most manual work exercises only a few specialized muscles. When London crowds assemble in Trafalgar Square to cheer to the echo an announcement that the government has decided to have them killed ,they would not do so if they had walked 25 miles that day .This cure for bellicosity is ,however ,impracticable and if the human race is to survive – a thing which is ,perhaps ,undesirable -other means must be found for securing an innocent outlet for the unused physical energy that produces love of excitement.

  This is a matter which has been too little considered, both by moralists and by social reformers .The social reformers are of the opinion that they have more serious things to consider , The moralists ,on the other hand ,are immensely impressed with the seriousness of all the permitted outlets of the love of excitement; the seriousness ,however ,in their minds is that of Sin ,Dance halls ,cinemas ,this age of jazz are all ,if we may believe our ears gateways to Hell, and we should be better employed sitting at home contemplating our sins. I find myself unable to be in entire agreement with the grave men who utter these warnings. The devil has many forms, some designed to deceive the young ,some designed to deceive the old and serious .If it is the devil that tempts the young to enjoy themselves ,is it not ,perhaps ,the same personage that persuades the old to condemn their enjoyment? And is not condemnation perhaps merely a form of excitement appropriate to old age? And is it not , perhaps ,a drug which -like opium -has to be taken in continually stronger doses to produce the desired effect? Is it not to be feared that ,beginning with the wickedness of the cinema, we should be led step by step to condemn the opposite political party ,dagoes ,wops, Asiatics ,and ,in short, everybody except the fellow members of our club? And it is from just such condemnations, when widespread, that wars proceed. I never heard of a war that proceeded from dance halls.
What is serious about excitement is that so many of its forms are destructive. It is destructive in those who cannot resist excess in alcohol or gambling. It is destructive when it takes the form of mob violence. And above all it is destructive when it leads to war. It is so deep a need that is will find harmful outlets of this kind unless innocent outlets are at hand. There are such innocent outlets at present in sport, and in politics so long as it is kept in constitutional bounds. But these are not sufficient, especially as the kind of politics that is most exciting is also the kind that does most harm.

Civilized life has grown altogether too tame, and, if it is to be stable, it must provide harmless outlets for the impulses which our remote ancestors satisfied in hunting. In Australia ,where people are few and rabbits are many ,I watched a whole populace satisfying the primitive impulse in the primitive manner by the skilful slaughter of many thousands of rabbits ,But in London or New York, where people are many and rabbits are few ,some other means must be found to gratify primitive impulse ,I think every big town should contain artificial waterfalls that people could descend in very fragile canoes ,and they should contain bathing pools full of mechanical sharks ,Any persons found advocating a preventive war should be condemned to two hours a day with these ingenious monsters.

孟子 – 告子上

(迁移自:MSN Spaces-个人日记 – 2005-4-26 23:37)

告子上

告子曰:“性犹杞柳也,义犹杯锩也。以人性为仁义,犹以杞柳为杯锩。”孟子曰:“人能顺杞柳之性而以为杯锩乎?将戕贼杞柳而后以为杯锩也?将戕贼杞柳而以为杯锩,则亦将戕贼人性而以为仁义与。率天下之人而祸仁义者,必子之言夫!”

告子曰:“性犹湍水也,决诸东方则东流,决诸西方则西流。人性之无分于善不善也,犹水之无分于东西也。”孟子曰:“水信无分于东西,无分于上下乎?人性之善也,犹水之就下也。人无有不善,水无有不下。今夫水,博而跃之,可使过颡,激而行之,可使在山。是岂水之性哉?其势则然也。人之可使为不善,其性亦犹是也。”

告子曰:“生之谓性。”孟子曰:“生之谓性,犹白之谓白与?然白羽之白也,犹白雪之白,白雪之白,犹白玉之白与?”曰:“然。”曰:“然则犬之性犹牛之性,牛之性犹人之性与?”

告子曰:“食色,性也。仁,内也,非外也;义,外也,非内也。”孟子曰:“何以谓仁内义外也?”曰:“彼长而我长之,非有长于我也。犹彼白而我白之,从其白于外也。故谓之外也。”曰:“异于白马之白也,无以异于白人之白也。不识长马之长也,无以异于长人之长与?且谓长者义乎?长之者义乎?”曰:“吾弟则爱之,秦人之弟则不爱也。是以我为悦者也,故谓之内。长楚人之长,亦长吾之长,是以长为悦者也,故谓之外也。”曰:“嗜秦人之炙,无以异于嗜吾炙。夫物则亦有然者也。然则嗜炙亦有外与?

孟季子问公都子曰:“何以谓义内也?”曰:“行吾敬,故谓之内也。”“乡人长于伯兄一岁,则谁敬?”曰:“敬兄。”“酌则谁先?”曰:“先酌乡人。”“所敬在此,所长在彼,果在外,非由内也。”公都子不能答,以告孟子,孟子曰:“敬叔父乎,敬弟乎?彼将曰敬叔父。曰弟为尸,则谁敬?彼将曰敬弟。子曰恶在其敬叔父也?彼将曰在位故也。子亦曰在位故也,庸敬在兄,斯须之敬在乡人。”季子闻之曰:“敬叔父则敬,敬弟则敬,果在外,非由内也。”公都子曰:“冬日则饮汤,夏日则饮水,然则饮食亦在外也?”

公都子曰:“告子曰性无善无不善也;或曰性可以为善,可以为不善,是故文武兴则民好善,幽厉兴则民好暴;或曰有性善,有性不善,是故以尧为君而有象,以瞽瞍为父而有舜,以纣为兄之子且以为君,而有微子启王子比干。今曰性善,然则彼皆非与?”孟子曰:“乃若其情,则可以为善矣,乃所谓善也。若夫为不善,非才之罪也。恻隐之心,人皆有之;羞恶之心,人皆有之;恭敬之心,人皆有之;是非之心,人皆有之。恻隐之心,仁也;羞恶之心,义也;恭敬之心,礼也;是非之心,智也。仁义礼智,非由外铄我也,我固有之也,弗思耳矣。故曰:求则得之,舍则失之。或相倍蓰而无算者,不能尽其才者也。诗曰:天生蒸民,有物有则,民之秉夷,好是懿德。孔子曰:’为此诗者,其知道乎?’故有物必有则,民之秉夷也,故好是懿德。

孟子曰:“富岁子弟多赖,凶岁子弟多暴,非天之降才尔殊也,其所以陷溺其心者然也。今夫侔麦,播种而莸之,其地同,树之时又同,孛然而生至于日至之时,皆熟矣,虽有不同,则地有肥侥,雨露之养,人事之不齐也。故凡同类者,举相似也,何独至于人而疑之?圣人与我同类者。故龙子曰:不知足而为履,我知其不为蒉也,履之相似,天下之足同也。口之于味,有同嗜也,易牙先得我口之所嗜者也。如使口之于味也,其性与人殊,若犬马之与我不同类也,则天下何嗜皆从易牙之于味也?至于味,天下期于易牙,是天下之口相似也。惟耳亦然,至于声,天下期于师旷,是天下之耳相似也。惟目亦然,至于子都,天下莫不知其姣也,不知子都之姣者,无目者也。故曰,口之于味也,有同嗜焉;耳之于声也,有同听焉,目之于色也,有同美焉。至于心,独无所同然乎?心之所同然者,何也?谓理也,义也,圣人先得我心之所同然耳。故理义之悦我心,犹刍豢之悦我口。”

孟子曰:“牛山之木尝美矣,以其郊于大国也,斧斤伐之,可以为美乎?是其日夜之所息,雨露之所润,非无萌蘖之生焉,牛羊又从而牧之,是以若彼濯濯也。人见其濯濯也,以为未尝有材焉,此岂山之性也哉?虽存乎人者,岂无仁义之心哉。其所以放其良心者,亦犹斧斤之于木也。旦旦而伐之,可以为美乎?其日夜之所息,平旦之气,其好恶与人相近也者几希,则其旦昼之所为,有梏亡之矣。梏之反复,则其夜气不足以存,夜气不足以存,则其违禽兽不远矣。人见其为禽兽也,而以为未尝有才焉,是岂人之情也哉?故苟得其养,无物不长,苟失其养,无物不消。孔子曰:操则存,舍则亡,出入无时,莫知其向。其惟心之谓与!

孟子曰:“无或乎王之不智也。虽有天下易生之物也,一日曝之,十日寒之,未有能生者也。吾见亦罕矣,吾退而寒之者至矣,吾如有萌焉何哉。今夫弈之为数,小数也,不专心致志,则不得也。弈秋,通国之善弈者也,使弈秋诲二人,其一人专心致志,惟弈秋之为听。一人虽听之,一心以为有鸿鹄

孟子 – 告子下

(迁移自:MSN Spaces-个人日记 – 2005-4-26 23:38)

告子下

任人有问屋庐子曰:“礼与食孰重?”曰:“礼重。”“色与礼孰重?”曰:“礼重。”曰:“以礼食,则饥而死。不以礼食,则得食。必以礼乎?亲迎,则不得妻。不亲迎,则得妻。必亲迎乎?”屋庐子不能对,明日之邹以告孟子。孟子曰:“于答是也何有!不揣其本而齐其末,方寸之木,可使高于岑楼。金重于羽者,岂谓一钩金与一舆羽之谓哉!取食之重者,与礼之轻者而比之,奚翅食重!取色之重者,与礼之轻者而比之,奚翅色重!往应之曰:轸兄之臂而夺之食,则得食,不轸则不得食,则将轸乎?逾东家墙而搂其处子,则得妻,不搂则不得妻,则将搂之乎?”

曹交问曰:“人皆可以为尧舜,有诸?”孟子曰:“然。”“交闻文王十尺,汤九尺,今交九尺四寸以长,食粟而已,如何则可?”曰:“奚有于是,亦为之而已矣。有人于此,力不能胜一匹雏,则为无力人矣。今曰举百钧,则为有力人矣。然则举乌获之任,是亦为乌获而已矣。夫人岂以不胜为患哉?弗为耳。徐行后长者谓之弟,疾行先长者谓之不弟。夫徐行者,岂人所不能哉?所不为也。尧舜之道,孝悌而已矣。子服尧之服,诵尧之言,行尧之行,是尧而已矣。子服桀之服,诵桀之言,行桀之行,是桀而已矣。”曰:“交得见邹君,可以假馆,愿留而受业于门。”曰:“夫道若大路然,岂难知哉?人病不求耳。子归而求之,有余师。”

公孙丑问曰:“高子曰:小弁,小人之诗也。”孟子曰:“何以言之?”曰:“怨。”曰:“固哉高叟之为诗也。有人于此,越人关弓而射之,则己谈笑而道之,无他,疏之也。其兄关弓而射之,则己垂涕泣而道之,无他,戚之也。小弁之怨,亲亲也。亲亲,仁也。固矣夫,高叟之为诗也。”曰:“凯风何以不怨?”曰:“凯风,亲之过小者也。小弁,亲之过大者也。亲之过大而不怨,是愈疏也。亲之过小而怨,是不可矶也。愈疏,不孝也,不可矶,亦不孝也。孔子曰:舜其至孝矣,五十而慕。”

宋迳将之楚,孟子遇于石丘,曰:“先生将何之?”曰:“吾闻秦楚构兵,我将见楚王说而罢之。楚王不悦,我将见秦王说而罢之。二王我将有所遇焉。”曰:“轲也请无闻其详,愿闻其指。说之将何如?”曰:“我将言其不利也。”曰:“先生之志则大矣,先生之号则不可。先生以利说秦楚之王,秦楚之王悦于利,以罢三军之师,是三军之士,乐罢而悦于利也。为人臣者,怀利以事其君,为人子者,怀利以事其父,为人弟者,怀利以事其兄,是君臣父子兄弟,终去仁义,怀利以相接。然而不亡者,未之有也。先生以仁义说秦楚之王,秦楚之王悦于仁义,而能罢三军之师,是三军之士,乐罢而悦于仁义也。为人臣者怀仁义以事其君,为人子者怀仁义以事其父,为人弟者怀仁义以事其兄,是君臣父子兄弟,去利怀仁义也。然而不王者,未之有也。何必曰利。”

孟子居邹,季任为任处守,以币交,受之而不报。处于平陆,储子为相,以币交,受之而不报。他日由邹之任见季子,由平陆之齐不见储子。屋庐子喜曰:“连得间矣。”问曰:“夫子之任见季子,之齐不见储子,为其为相与?”曰:“非也。书曰:享多仪,仪不及物。曰不享,惟不役志于享。为其不成享也。”屋庐子悦,或问之,屋庐子曰:“季子不得之邹,储子得之平陆。”

淳于髡曰:“先名实者为人也,后名实者自为也。夫子在三卿之中,名实未加于上下而去之,仁者固如此乎?”孟子曰:“居下位,不以贤事不肖者,伯夷也。五就汤,五就桀者,伊尹也。不恶污君,不辞小官,柳下惠也。三子者不同道也,其趋一也。一者何也?曰仁也。君子亦仁而已矣,何必同?”曰:“鲁穆公之时,公仪子为政,子柳子思为臣,鲁之削也滋甚。若是乎贤者之无益于国也?”曰:“虞不用百里奚而亡,秦穆公用之而霸。不用贤则亡,削何可得与?”曰:“昔者王豹处于淇,而河西善讴。绵驹处于高唐,而齐右善歌。华周杞梁之妻善哭其夫,而变国俗。有诸内必形诸外,为其事而无其功者,髡未尝睹之也。是故无贤者也,有则髡必识之。”曰:“孔子为鲁司寇,不用,从而祭,燔肉,不至,不税冕而行。不知者以为为肉也,其知者以为为无礼也。乃孔子则欲以微罪行,不欲为苟去,君子之所为,众人固不识也。”

孟子曰:“五霸者,三王之罪人也。今之诸侯,五霸之罪人也。今之大夫,今之诸侯之罪人也。天子适诸侯曰巡狩,诸侯朝于天子曰述职。春省耕而补不足,秋省敛而助不给。入其疆,辟土地,田野治,养老尊贤,俊杰在位,则有庆,庆以地。入其疆,土地荒芜,遗老失贤,掊克在位,则有让。一不朝则贬其爵,二不朝则削其地,三不朝则六师移之。是故天子讨而不伐,诸侯伐而不讨。五霸者,,搂诸侯以伐诸侯者也。故曰五霸者,三王之罪人也。五霸桓公为盛,葵丘之会诸侯,束牲载书而不歃血。初命曰:诛不孝,无易树子,无以妾为妻。再命曰:尊贤育才,以彰有德。三命曰:敬老慈幼,无忘宾旅。四命曰:士无世官,官事无摄,取士必得,无专杀大夫。五命曰:无由防,无遏籴,无有封而不告。曰:凡我同盟之人,既盟之后,言归于好。今之诸侯,皆犯此五禁,故曰今之诸侯,五霸之罪人也。长君之恶其罪小,逢君之恶其罪大。今之大夫,皆逢君之恶,故曰今之大夫,今之诸侯之罪人也。”

鲁欲使慎子为将军,孟子曰:“不教民而用之,谓之殃民。殃民者,不容于尧舜之世。一战胜齐,遂有南阳,然且不可。”慎子勃然不悦曰:“此则滑厘所不识也。”曰:“吾明告子,天子之地方千里,不千里,不足以待诸侯。诸侯之地方百里,不百里,不足以守宗庙这典籍。周公之封于鲁,为方百里也,地非不足,而俭于百里。大公之封于齐也,亦为方百里也。地非不足也,而俭于百里。今鲁方百里者五,子以为有王者作,则鲁在所损乎,在所益乎?徒取诸彼以与此,然且仁者不为,况于杀人以求之乎?君子之事君也,务引其君以当道,志于仁而已。”

孟子曰:“今之事君者曰:我能为君辟土地,充府库。今之所谓良臣,古之所谓民贼也。君不向道,不志于仁,而求富之,是富桀也。我能为君约与国,战必克之。今之所谓良臣,古之所谓民贼也。君不向道,不志于仁,而求为之强战,是辅桀也。由今之道,无变今之俗,虽与之天下,不能一朝居也。”

白圭曰:“吾欲二十而取一,何如?”孟子曰:“子之道,貉道也。万室之国,一人陶,则可乎?”曰:“不可,器不足用也。”曰:“夫貉,五谷不生,惟黍生之。无城郭宫室宗庙祭祀之礼,无诸侯币帛飨飧,无百官有司,故二十取一而足也。今居中国,去人伦,无君子,如之何其可也?陶以寡,且不可以为国,况无君子乎?欲轻之于尧舜之道者,大貉小貉也。欲重之于尧舜之道者,大桀小桀也。”

白圭曰:“丹朱之治水也愈于禹。”孟子曰:“子过矣。禹之治水,水之道也。是故禹以四海为

沟壑。今吾子以邻国为壑。水逆行,谓之洚水。洚水者,洪水也。仁人之所恶也。吾子过矣。”

孟子曰:“君子不亮,恶乎执?”

鲁欲使乐正子为政。孟子曰:“吾闻之,喜而不寐。”公孙丑曰:“乐正子强乎?”曰:“否。”“有知虑乎?”曰: “否。”“多闻识乎?”曰:“否。”“然则奚为喜而不寐?”曰:“其为人也好善。”“好善足乎?”曰:“好善优于天下,而况鲁国乎?夫苟不好善,则人将曰 迤迤。予既已知之矣,迤迤之声音颜色,距人于千里之外。士止于千里之外,则谗谄面谀之人至矣。与谗谄面谀之人居,国欲治,可得乎?”

陈子曰:“古之君子何如则仕?”孟子曰:“所就三,所去三。迎之致敬以有礼,言将行其言也,则就之。礼貌未衰,言 弗行也,则去之。其次,虽未行其言也,迎之致敬以有礼,则就之。礼貌衰,则去之。其下,朝不食,夕不食,饥饿不能出门户,君闻之曰:吾大者不能行其道,又 不能从其言也,使饥饿于我土地,吾耻之。周之,亦可受也。免死而已矣。”

孟子曰:“舜发于畎亩之中,傅说举于版筑之间,胶鬲举于鱼盐之中,管夷吾举于士,孙叔敖举于海,百里奚举于市。故 天将降大任于是人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身,行拂乱其所为,所以动心忍行,增益其所不能。人恒过,然后能改。困于心,衡于虑,而后 作。征于色,发于声,而后喻。入则无法家拂士,出则无敌国外患者,国恒亡。然后知生于忧患而死于安乐也。”

孟子曰:“教亦多术矣。予不屑之教诲也者,是亦教诲之而已矣。”