学习

  • 【《重构 改善既有代码的设计》学习笔记7】在对象之间搬移特性「建议收藏」

    本篇文章的内容来自《重构 改善既有代码的设计》一书学习笔记整理并且加上自己的浅显的思考总结!在对象之间搬移特性,核心就是: 决定把责任放在哪儿,重点关注责任,也就是尽量一个类之处理一类事情,或者是某个责任和这个类关系不大,就将此责任移动到关系大的类中。本篇内容两两放在一起,互相对比学习。也更方便理解和记忆。1、搬移函数(Move Method)& 搬移字段(Move field…

    2022年2月27日
    36
  • 【《重构 改善既有代码的设计》学习笔记8】重新组织数据

    本篇文章的内容来自《重构 改善既有代码的设计》一书学习笔记整理并且加上自己的浅显的思考总结!本篇介绍几个轻松处理数据的重构手法。1、自封装字段(Self Encapsulate Field)概述你直接访问一个字段,但与字段之间 的耦合关系逐渐变得笨拙。为这个字段建立取值和设值函数,并且通过函数来访问字段。【说白了就是使用get/set方法来访问字段】private int low …

    2022年2月27日
    42
  • 【《重构 改善既有代码的设计》学习笔记6】重新组织函数

    本篇文章的内容来自《重构 改善既有代码的设计》一书学习笔记整理并且加上自己的浅显的思考总结!重构手法中,很大一部分是对函数进行整理,使之更恰当地包装代码。重新组织函数对过长的函数进行拆解,提炼函数,并处理局部变量,使得拆解后的函数更加清晰并且能够更好的工作。1、提炼函数(Extract Method)概要你有一段代码可以被组织在一起并独立起来。 将这段代码放进一个独立函数中,并让函…

    2022年2月27日
    41
  • 【《重构 改善既有代码的设计》学习笔记5】重构列表

    本篇文章的内容来自《重构 改善既有代码的设计》一书学习笔记整理并且加上自己的浅显的思考总结!重构列表,为重构提供一个坚实的起点,支持后面的重构工作!1、重构的记录格式书中说:每个重构手法都有如下五个部分。名称(name),建造一个重构词汇表,名称是很重要的。简单的概要(summary),介绍此重构手法的使用情景,以及它做的事情。动机(motivation),为什么需要这…

    2022年2月27日
    43
  • 【《重构 改善既有代码的设计》学习笔记4】构筑测试体系

    本篇文章的内容来自《重构 改善既有代码的设计》一书学习笔记整理并且加上自己的浅显的思考总结!如果想要进行重构,首要前提是 拥有一个可靠的测试环境。1、 自测代码的价值完成一个功能:设计+开发+调试,认真分析,程序员最多花费的时间不是开发(编码),而是用来调试。调试可能花费无数个小时,甚至通宵达旦。修复错误是快速的,而找出错误却是恶梦一场。当修复好一个错误,总是会有另一个错误的出现。而引…

    2022年2月27日
    46
  • 【《重构 改善既有代码的设计》学习笔记3】代码的坏味道[通俗易懂]

    【《重构 改善既有代码的设计》学习笔记3】代码的坏味道本篇文章的内容来自《重构 改善既有代码的设计》一书学习笔记整理并且加上自己的浅显的思考总结!知道重构的原则和何时进行重构,那本篇就总结一些代码的坏味道,知道具体从哪些方面来进行重构。kent Beck提出用 味道来形容重构的时机。作者说:何时必须重构没有一个精确的衡量标准,任何量度规矩也比不上一个见识广博者的直觉。如果没有广博的见识…

    2022年2月27日
    37
  • 【《重构 改善既有代码的设计》学习笔记2】重构原则

    【《重构 改善既有代码的设计》学习笔记2】重构原则本篇文章的内容来自《重构 改善既有代码的设计》一书学习笔记整理并且加上自己的浅显的思考总结!上一篇通过一个简单的例子体验了一把重构过程,现在我们需要回过头看一下重构的一些背景、原理和理论。 并思考一下重构的关键原则是什么,以及重构时需要考虑哪一些问题?一、什么是重构1、 重构的定义“重构” 这个词有两种不同的定义!名称形式重…

    2022年2月27日
    43
  • 【《重构 改善既有代码的设计》学习笔记1】重构:第一个案例「建议收藏」

    【《重构 改善既有代码的设计》学习笔记】重构:第一个案例本篇文章的内容来自《重构 改善既有代码的设计》一书学习笔记整理笔记并且加上自己的浅显的思考总结!一、简单的例子一个影片出租店用的程序,计算每一位顾客的消费金额,并打印详单。详单打印 顾客租了哪些影片、租期多长,影片类型 、单个影片费用、总费用 。 除了费用外,还要计算顾客的积分,不同种类租片积分不同。注:影片为为三类:普通片、儿…

    2022年2月27日
    47
  • maven学习系列——(七)Dependency

    Dependency介绍本文转自:Maven简介(六)——Dependency,并加上自己在实际使用中的总结和说明!1、依赖的传递性依赖传递对版本的选择假设A依赖于B和C,然后B依赖于D,D又依赖于E1.0,C直接依赖于E2.0,那么这个时候A依赖的是E1.0还是E2.0,还是这两个都依赖呢?两个都依赖是肯定不行的,因为它们可能会有冲突的地方。这个时候就涉及到Maven中依赖传递对…

    2022年2月27日
    42
  • Sping 源码深度解析——容器的功能扩展 【学习笔记】

    我为什么 看的不够远,因为高度不够!学习和整理总结Spring容器的功能扩展,本文为学习笔记,其中有一些内容是自己的思考总结!一、两种Spring中bean加载的方式第一种# 第一种使用 BeanFactory 以及它默认的实现类 XmlBeanFactoryBeanFactory bf = new XmlBeanFactory(new ClassPathReso…

    2022年2月27日
    38
关注全栈程序员社区公众号