代码整洁之道精华——第十一章 系统

阅读本文有两种原因:第一,你是个程序员;第二,你想成为更好的程序员。你如果想成为更好的程序员,那就请细细品味文章内容,它绝不会让你失望。
代码整洁之道教给大家如何编写整洁的代码,而不仅仅是能运行的代码,这对于编程者而言很重要。我在读这本书的第一遍时没什么感觉,但在读第二遍时觉得它确实挺不错的,如果有机会的话我会读第三遍。下面是我在读书过程中摘录的精华内容,希望大家认真对待。各位看官如果读完本文觉得书中的精华内容挺合自己的胃口,那就可以抽出时间认真地读一下这本书。

1、将构造与使用分开的方法之一是将全部构造过程搬迁到main或被称之为main的模块中,设计系统的其余部分时,假设所有对象都已正确构造和设置。
2、有一种强大机制可以实现分离构造与使用,那就是依赖注入(Dependency Injection,DI),控制反转(Inversion of Control,IoF)在依赖管理中的一种应用手段。控制反转将第二权责从对象中拿出来,转移到另一个专注于此的对象中,从而遵循了单一职责原则。在依赖管理情境中,对象不应负责实体化对自身的依赖。反之,他应当将这份权责移交给其他“有权力”的机制,从而实现控制反转。因为初始设置是一种全局问题,这种授权机制通常需要main例程,要么是有特定目的的容器。
3、EJB架构处理持久化、安全和事务的方法是“预期”面向方面编程(aspect-oriented programming,AOP),而AOP是一种恢复横贯式关注面模块化的普适手段。
在AOP中,被称为方面(aspect)的模块构造指明了系统中哪些点的行为会以某种一致的方式被修改,从而支持某种特定的场景。这种说明是用某种简洁的声明或编程机制来实现的。以持久化为例,可以声明哪些对象和属性(或其模式)应当被持久化,然后将持久化任务委托给持久化框架。行为的修改由AOP框架以无损方式在目标代码中进行。
4、Java中的三种方面或类似方面的机制:Java代理、纯Java AOP框架、AspectJ。
5、最佳的系统架构由模块化的关注面领域组成,每个关注面均用纯Java(或其他语言)对象实现。不同的领域之间用最不具有侵害性的方面或类方面工具整合起来。这种架构能测试驱动,就像代码一样。

抛开所有细节不谈,代码整洁之道总体来说可以分为以下7点:

  • 运行所有测试
  • 减少重复代码
  • 提高表达力
  • 提早构建简单抽象
  • 类和方法都只做好一件事
  • 尽量减少类和方法的数量
  • 努力,让营地比你来时更干净。努力,让世界比你来时更干净。努力,让代码比你签出时更干净。

你可能感兴趣的:(心得体会,程序员,阅读,编程,代码整洁之道)