`
Viila
  • 浏览: 15928 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

重构基本概念--->ruby重构有感(一)--未完待续!!!

    博客分类:
  • Ruby
阅读更多
ruby重构有感(一)

最近近半个多月都不断的和重构代码打交道,体会了很多,不敢独享,拿出来和大家分享。
(本来在一开始的时候就想记录过程,由于重构的代码量比较大,中间思路不能中断,故在重构快结束的时候总结下。)


今天与大家分享的是:


重构的基本概念



1.什么是重构

  重构有两重含义,一种是把重构当名词来解释,另一种是把重构当动词来解释。(以下定义摘自《重构ruby版》)

    重构(名词):对软件内部结构的一种修改,在不改变软件外观行为的条件下,使之更易于理解和修改。
    重构(动词):在不改变软件外观行为的条件下,通过运用一系列的重构技术重新组织软件的结构。

2.为什么要重构

    a:重构可以该经软件的设计
   
    b:重构让软件变的易于理解
   
    c:重构可以帮助你发现bug
   
    d:重构可以帮助你更快的编程
   
   
    怎么样看到上边的优点,是不是很有欲望也要把你的代码重构一番?
    那我们因该何时去重构代码呢?

3.重构代码的时机
   
    a:事不过三
    --第一次你想做什么,直接去做就好了。第二次遇到类似的事情,虽然有点犹豫,但是还是可以重复做一次。
    到第三次的时候,你就该重构了。
   
    b:在添加新功能的时候重构
   
    c:在需要修复bug时重构
   
    d:在进行代码复审时重构
   
    e:为了更好的理解代码而重构
分享到:
评论

相关推荐

    重构--Ruby 完整扫描清晰版--中文

    1. **重构的基本原则**:包括为何重构,何时重构,以及重构过程中需要遵循的一些原则,如不要在添加功能时重构,而是单独进行重构操作。 2. **Ruby语言特性对重构的影响**:Ruby的动态特性和灵活的语法可能对重构...

    斗图神器2.0-使用Golang-重构-!!-收集了成千上万的撕逼斗图表情包,在这里你可以快速找到-Dou-figure

    斗图神器2.0__使用Golang_重构_!!_收集了成千上万的撕逼斗图表情包,在这里你可以快速找到_Dou-figure-alfred-workflow.zip

    相空间重构C-C法,含数据

    相空间重构C-C法,含数据 。。

    hw-ruby-intro.zip_SaaS软件工程_hw-ruby-intro_ruby _ruby 中文_saas

    这个压缩包包含了一份名为“hw-ruby-intro”的作业代码,它是针对高级软件工程课程的,特别强调了Ruby语言的学习和实践。以下是对这些知识点的详细说明: 1. **Ruby语言**:Ruby是一种面向对象的、动态类型的编程...

    wpf_RadTreeview_style telerik

    -- 针对无子项的节点样式 --> <Style.Resources> <!-- 选择器样式 --> </Style.Resources> <!-- 针对有子项的节点样式 --> <Style.Resources> <!-- 选择器样式 --> </Style.Resources> </Style> ...

    重构----改善既有代码的设计(完整中文扫描版PDF)

    重构----改善既有代码的设计(完整中文扫描版PDF),精彩不容错过。

    重构----改善既有代码的设计

    重构----改善既有代码的设计 怎么写好一个类,怎么重构已有代码,运用多中重构代码的方法,去改善代码结构。

    Percona pt-archiver重构版--大表数据归档工具.zip

    Percona的`pt-archiver`是一款非常实用的MySQL数据库管理工具,主要用于高效地归档或迁移大数据表中的数据。这个重构版针对大型数据库环境优化了性能和稳定性,确保在处理海量数据时仍然能够保持高效运行。以下是...

    《重构》----学习笔记

    《重构》是一本深入探讨软件开发过程中的代码优化与改进的经典著作。重构,简单来说,是在不改变软件外部行为的前提下,对其内部结构进行改进,以提高代码的可读性、可维护性和可扩展性。这一过程并非依赖于个人天赋...

    应用MATLAB实现连续信号的采样与重构仿真-----有关通信工程的课程设计

    本次课程设计的主要目的是应用 MATLAB 实现连续信号的采样与重构仿真,了解 MATLAB 软件的仿真技术,掌握线性系统的设计方法,培养独立工作能力,并加深理解采样与重构的概念。 二、实验原理 MATLAB 是一款基于...

    ruby重构中文+英文

    #### 一、《重构(Ruby版)》简介 - **书名**:《重构(Ruby版)》 - **出版**:本书为华章IT成立15周年的献礼之作,由互动网首发。 - **语言版本**:中文版前三章与英文版内容。 #### 二、重构的概念 - **定义**...

    重构(1-6).pdf

    - **重构(1-6).pdf 1-6章**:这一描述明确了文档提供了关于重构技术第一章到第六章的具体内容,这六章构成了该书的初期部分,可能包含了重构的基本概念、方法论以及一些实用的重构技巧。 #### 内容概览 文档内容...

    重构----改善既有代码的设计(By Martin Fowler)

    Martin Fowler是重构领域中极具影响力的专家之一,他的著作《重构——改善既有代码的设计》被广泛认为是该领域的经典之作。这本书不仅传授重构的理论知识,还提供了丰富的实际案例和步骤指导,让读者可以将理论应用...

    重构---改善既有代码的设计(中文版)

    重构---改善既有代码的设计。Java程序员必读书籍之一。

    MyEclipse使用手册

    - 在`Window` -> `Preferences` -> `General` -> `Appearance` -> `Colors and Fonts`下,可以调整基本字体、颜色和高亮显示,以适应个人的阅读习惯。 7. **项目结构的层次设置**: - MyEclipse允许用户自定义...

    重构----改善既有代码的设计(完整中文扫描版PDF).pdf

    本书讲述重构,即在不改变软件现有功能的基础上,通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。

    基于相空间重构的GQPSO-WNN 短时交通流预测.pdf

    本文介绍了一种基于相空间重构的GQPSO-WNN 短时交通流预测模型。该模型通过结合遗传算法和小波神经网络,来预测交通流的变化趋势。模型的核心是使用相空间重构技术来重构交通流时序数据,并使用GQPSO-WNN算法来预测...

    C语言重构--Garrido2000

    - **理论基础**:重构的概念最初由Martin Fowler等人提出,并逐渐被软件开发社区广泛接受。 - **工具支持**:各种重构工具的出现极大地降低了重构的技术门槛。 - **实践应用**:众多成功的案例证明了重构的有效性。 ...

    重构与模式-中文扫描版

    重构与模式-中文扫描版http://product.china-pub.com/32561

Global site tag (gtag.js) - Google Analytics