美文网首页
代码重构

代码重构

作者: 大锤在学习 | 来源:发表于2018-09-17 22:36 被阅读0次

重构前:

import json

def greet_user():

    """问候用户,并指出其名字"""

    filename = "username.json"

    try:

        with open(filename) as file_obj:

            username = json.load(file_obj)

    except Exception as e:

        username = input("what is your name?")

        with open(filename, 'w') as file_obj:

            json.dump(username, file_obj)

            print("we'll remember you when you come back,"+username)

    else:

        print("welcome back," + username)

greet_user()

第一次重构:

def get_stored_username():

    """如果存储了用户名,就获取它"""

    try:

        filename = "username.json"

        with open(filename,'r') as file_obj:

            username = json.load(file_obj)

        except FileNotFoundError as fnf:

            return None

        else:

            return username

def greet_user():

    """问候用户,并指出其名字"""

    username = get_stored_username()

    if username:

        print("welcome back," + username)

    else:

    username = input("what is your name?")

    with open(filename, 'w') as file_obj:

        json.dump(username, file_obj)

        print("we'll remember you when you come back,"+username)

greet_user()

第二次重构:

import json

def get_stored_username():

    """如果存储了用户名,就获取它"""

    try:

        filename = "username.json"

        with open(filename,'r') as file_obj:

            username = json.load(file_obj)

    except FileNotFoundError as fnf:

        return None

    else:

        return username

def get_new_username()

    """获取新用户"""

    username = input("what is your name?")

    filename = "username.json"

    with open(filename,'w') as file_obj:

        json.dump(username,file_obj)

    return username

def greet_user():

    """问候用户,并指出其名字"""

    username = get_stored_username()

    if username:

        print("welcome back," + username)

    else:

        username = get_new_username()

        print("we'll remember you when you come back,"+username)

greet_user()

相关文章

  • 代码重构专题(转载)

    代码重构(一):函数重构规则代码重构(二):类重构规则代码重构(三):数据重构规则代码重构(四):条件表达式重构规...

  • 《重构》一书总结(二)

    《重构》一书总结(二) 重构的重点,在于对那些代码进行重构,如果重构不当,反而适得其反。 重构代码终结如下 1.D...

  • Mvc分页组件MvcSimplePager代码重构

    Mvc分页组件MvcSimplePager代码重构 Mvc分页组件MvcSimplePager代码重构1.1 In...

  • 编程的方法——重构、测试等

    重构 为什么要重构? 重构代码是保持代码质量的一个极其有效的手段,它可以避免你的代码腐化到无可救药的地步。 重构可...

  • 代码重构利器

    使用重构件(Codemod)加速 JavaScript 开发和重构代码重构利器 —— jscodeshift 对于...

  • 为什么要代码重构?如何重构?常见重构技巧

    关于重构 为什么要重构 代码重构漫画 项目在不断演进过程中,代码不停地在堆砌。如果没有人为代码的质量负责,代码总是...

  • 重构

    重构时,先梳理代码,删除无用的逻辑,进行小的消除重复代码重构,封装小方法重构,等等,目的是让大段大段代码之前的耦合...

  • 重构代码之美

    什么是重构; 为什么要重构; 什么时候重构; 怎样避免重构的现象; 重构的难点在哪里; 如何来实施代码重构; 重构...

  • (14)打鸡儿教你Vue.js

    重构“代码重构” 为什么要进行重构提高代码的可读性和可维护性 代码中存在着重复的代码 存在过大的类或过长的方法 强...

  • 代码重构

    重构前: import jsondef greet_user(): """问候用户,并指出其名字""" filen...

网友评论

      本文标题:代码重构

      本文链接:https://www.haomeiwen.com/subject/eotjnftx.html