V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
smallpython
V2EX  ›  程序员

判断是否是正在运动的状态, 这个函数的函数名你们一般都怎么起?

  •  
  •   smallpython · 2020-02-14 09:28:01 +08:00 · 3986 次点击
    这是一个创建于 1525 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我的话就是 def check_is_moving_status():pass

    是不是不太好?
    31 条回复    2020-02-15 00:23:57 +08:00
    cgpiao
        1
    cgpiao  
       2020-02-14 09:29:22 +08:00
    somethingIsDoing
    GavinFlying
        2
    GavinFlying  
       2020-02-14 09:37:57 +08:00
    def moving?(xxx), do: xxx
    GavinFlying
        3
    GavinFlying  
       2020-02-14 09:38:14 +08:00   ❤️ 1
    func IsMoving(xxx) { xxx }
    icylogic
        4
    icylogic  
       2020-02-14 09:41:34 +08:00 via iPhone
    if car.is_moving:

    用 property 不就行了……外部又不关心你这是个函数还是值……
    coderluan
        5
    coderluan  
       2020-02-14 09:47:40 +08:00
    楼主你起名法不是不好,而是错误,翻译一下就知道了:“检查是否运行状态”,明显的语法问题,正常的应该是”检查是否运行“和”检查运行状态“,至于用哪个,个人习惯是看有没有对象:xx.isMoving()和 checkMovingStatus(xx)。
    yamedie
        6
    yamedie  
       2020-02-14 10:07:42 +08:00
    function checkIfMoving() {
    // ...
    }
    raysonx
        7
    raysonx  
       2020-02-14 10:10:43 +08:00 via iPad
    moving 或 isMoving
    laoyur
        8
    laoyur  
       2020-02-14 10:14:23 +08:00   ❤️ 9
    楼主的不太好,
    如果是返回 Bool,那直接用 is_开头;
    如果是返回 status,就不要带 moving,moving 本来就属于 status 的具体一种 case ;


    def check_status:
    return 'moving'

    def is_moving:
    return True
    lemon6
        9
    lemon6  
       2020-02-14 10:19:10 +08:00
    const isMoving
    pomelotea2009
        10
    pomelotea2009  
       2020-02-14 10:21:57 +08:00 via Android
    java 就 isMoving,python 就 is_moving
    liufish
        11
    liufish  
       2020-02-14 10:23:32 +08:00
    isMoving
    movingForward
    movingBack
    movingLeft
    movingRight
    bitdepth
        12
    bitdepth  
       2020-02-14 10:30:01 +08:00 via iPad
    motion, forward, toward 這麼多詞都可以
    xiri
        13
    xiri  
       2020-02-14 10:35:16 +08:00 via Android
    一般判断是否怎么样我都是 is_xxx
    imycc
        14
    imycc  
       2020-02-14 10:50:15 +08:00
    同意#8 老哥的

    is_某种状态() -> 返回 bool
    check_status() -> 返回状态码
    JerryCha
        15
    JerryCha  
       2020-02-14 11:04:15 +08:00
    isStatic
    chen1164162915
        16
    chen1164162915  
       2020-02-14 13:11:15 +08:00   ❤️ 1
    function Sfzzyd(){
    ......
    }
    Mohanson
        17
    Mohanson  
       2020-02-14 13:16:54 +08:00
    我的习惯是

    ```
    enum Status {
    Running,
    Stop,
    }

    if A.status == Status.Running {
    }
    ```

    扩展性好, 万一以后加个检测是否在跳的需求, 不用加个 is_jump 函数...
    dangyuluo
        18
    dangyuluo  
       2020-02-14 13:29:05 +08:00
    is_moving
    Chingim
        19
    Chingim  
       2020-02-14 13:37:30 +08:00
    Methods should have verb or verb phrase names like postPayment, deletePage, or save.

    checkMovingStatus() -> bool
    Chingim
        20
    Chingim  
       2020-02-14 13:37:55 +08:00
    如果是变量名, 那就用 isMoving
    optional
        21
    optional  
       2020-02-14 13:39:23 +08:00
    @Mohanson 如果跳着移动。。。
    j140z1
        22
    j140z1  
       2020-02-14 13:58:10 +08:00
    isMoving or isInMotion
    alya
        23
    alya  
       2020-02-14 14:04:33 +08:00
    is_run()
    crella
        24
    crella  
       2020-02-14 14:08:13 +08:00 via Android
    def status_moving?

    end
    visitant
        25
    visitant  
       2020-02-14 14:31:57 +08:00
    @laoyur 返回 bool 变量最好不要用 is 开头吧,做一些复杂逻辑判断时理解成本会很高
    hxtheone
        26
    hxtheone  
       2020-02-14 14:38:47 +08:00
    @GavinFlying #2 换到别的语言特别怀念 ruby 函数名里可以用 ? 和 !
    w1573007
        27
    w1573007  
       2020-02-14 15:14:22 +08:00 via Android
    def shifozhengzaiyundong
    LancerEvo
        28
    LancerEvo  
       2020-02-14 16:17:40 +08:00 via iPhone
    正解是 is moving

    命名含 if 的没有考虑调用的地方: if checkIfMoving... 不冗余?

    命名含 check 的已经冗余了 if checkIsMoving... 这个 check 完全没必要

    这点道理想不明白的我是不会招来当队友的
    lastisee
        29
    lastisee  
       2020-02-14 16:42:03 +08:00
    @GavinFlying 加一
    hanhuoer
        30
    hanhuoer  
       2020-02-14 18:50:50 +08:00
    function isMoving() {...}
    arjen
        31
    arjen  
       2020-02-15 00:23:57 +08:00
    boolean isMoving();

    所有返回类型是布尔值的我都用 is 开头
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3376 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 11:41 · PVG 19:41 · LAX 04:41 · JFK 07:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.