命名空间

举报
aocfans 发表于 2022/08/25 09:16:44 2022/08/25
【摘要】 在yang文件里,开头都会有一个namespace,这个就是命名空间。 为什么需要命名空间呢?打个比方,我们取名的时候,汉字就那么多,虽然用了不同的组合方式,还是不能避免重名现象。 所以我们在邮寄快递时除了指定姓名,还会写上地址,只在特定区域里搜索这个名字,这样就可以唯一定位到收件人了。 同样地,我们在编写程序时也会定义很多变量,不同人编写的程序、不同项目的程序,出现相同变量的几率太大了,如...

yang文件里,开头都会有一个namespace,这个就是命名空间。

 

为什么需要命名空间呢?打个比方,我们取名的时候,汉字就那么多,虽然用了不同的组合方式,还是不能避免重名现象。 所以我们在邮寄快递时除了指定姓名,还会写上地址,只在特定区域里搜索这个名字,这样就可以唯一定位到收件人了。

 

同样地,我们在编写程序时也会定义很多变量,不同人编写的程序、不同项目的程序,出现相同变量的几率太大了,如果不加以区分,在调用时就会有很大问题,因此就引入了命名空间的概念。

 

使用的变量只能是对应的命名空间中定义的,同一个命名空间中的变量名必须唯一,不同的命名空间里有重名的现象则不会互相干扰。

 

XML里的命名空间通常是一个统一资源识别符(URI)的名字。URI只当名字用,主要目的是为了避免名字的冲突。

Python里的命名空间是一个字典,里面存储了key和对应的value值。

 

最后我们来看下yang文件中的namespace

 

下面是huawei-bgpyang文件:

 

下面是huawei-cliyang文件:

 

可以看到,这个路径就决定了它的唯一性,进而避免了变量冲突的问题。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。