ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

javascript – 如何用动态类型语言描述函数参数?

2019-06-30 05:52:59  阅读:241  来源: 互联网

标签:python javascript arguments dynamic-typing code-documentation


我的问题更倾向于Python,但也可能是关于JavaScript或其他脚本语言.

我通常使用静态类型语言(Java,C,ActionScript,…)进行开发.

我喜欢不时使用Python,我还需要有时使用JavaScript.这些是动态类型语言.这没有什么不对,但我通常有很多麻烦来理解函数或方法中需要哪些参数.它发生即使它是我自己的代码与一些docstrings!也许是因为眼睛必须在其他地方寻找而不是在函数的定义中.

当然,答案应该在文档中.但有时它根本不清楚,或者因为使用鸭子打字,文档可能本身很难编写(“第一个参数是一个必须有quack()方法的函数和一个羽毛(arg)方法,其中arg是一个字符串“).我非常喜欢的是语言本身内部的一种参数描述(即使它是可选的,就像在ActionScript中一样).

明确描述函数/方法的参数有哪些最佳实践?

如何创建一个特殊的装饰器(如果使用Python),其目的是在我们使用它时检查数据的类型(但是因为它将在运行时而不是在写入时使用,无论如何都会有什么意义)?

你认为这应该不是问题吗?那不仅仅是当前的文档字符串会让开发人员感到困惑,或者说我的思维过于依赖于静态类型?

解决方法:

我不知道Javascript,但Python从版本3开始有可选的函数注释,如下所示:

def haul(item: Haulable, *vargs: PackAnimal) -> Distance:

要么:

def compile(source: "something compilable",
            filename: "where the compilable thing comes from",
            mode: "is this a single statement or a suite?"):

有关更多信息,请参阅the PEP.

它们在运行时可访问,甚至可用于类型检查.

标签:python,javascript,arguments,dynamic-typing,code-documentation
来源: https://codeday.me/bug/20190630/1333894.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有