HarmonyOS 鸿蒙Next有关方舟字节码函数命名规则的问题

发布于 1周前 作者 sinazl 来自 鸿蒙OS

HarmonyOS 鸿蒙Next有关方舟字节码函数命名规则的问题

namespace A {                               // namespace在字节码中的函数名为"#&#A"

    class B {                               // 构造函数在字节码中的函数名为"#&A~B=#B"

        m() {                               // 函数m在字节码中的函数名为"#&A~B>#m"

            return () => {}                 // 匿名函数在字节码中的函数名为"#&A~B>m*#"

        }

        static s() {}                       // 静态函数s在字节码中的函数名为"#&A~B<#s"

    }

    enum E {                                // enum在字节码中的函数名为"#&A%#E"

    }

}

namespace LongNamespaceName {               // namespace在字节码中的函数名为"#&#LongNamespaceName"

    class LongClassName {                   // 构造函数在字节码中的函数名为"#&@1~@0=#LongClassName"

        longFunctionName() {                // 实例函数在字节码中的函数名为"#&@1~@0>#longFunctionName"

        }

        longFunctionName() {                // 函数在字节码中的函数名为"#&@1~@0>#longFunctionName^1"

            function inSecondFunction() {}  // 函数在字节码中的函数名为"#&@1~@0>@2^1*#inSecondFunction"

        }

    }

}

请教下 这里的 @1@0 分别代表什么含义?


更多关于HarmonyOS 鸿蒙Next有关方舟字节码函数命名规则的问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

方舟字节码函数命名规则中,@十六进制数字 的形式体现作用域的名称,这个数字代表作用域名称的字符串在一个字符串数组中的索引,如你的代码中的“#&[@1](/user/1)~@”,'#'是前缀开始字符,'&[@1](/user/1)'表示作用在 名称为(其对应LiteralArray中,索引为1的字符串)的namespace作用域中,即作用域名称为LongNamespaceName的namespace,'~[@0](/user/0)'表示作用在 名称为(其对应LiteralArray中,索引为0的字符串)的类作用域中,即作用域名称为LongClassName的类,即“#&[@1](/user/1)~@”原本的含义为“#&LongNamespaceName~LongClassName”

更多关于HarmonyOS 鸿蒙Next有关方舟字节码函数命名规则的问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


HarmonyOS 鸿蒙Next中方舟字节码(Fangzhou Bytecode)的函数命名规则遵循一定的规范,以确保代码的可读性和一致性。

方舟字节码函数命名通常遵循以下规则:

  1. 小写字母开头:函数名以小写字母开头,后续单词首字母大写,形成驼峰命名法(camelCase)。例如,calculateSum

  2. 动词或动词短语:函数名通常表示一个动作或操作,使用动词或动词短语形式。例如,initializeupdateUI

  3. 参数描述:函数名应尽量反映其参数和返回值。例如,fetchDataById(id)

  4. 避免缩写:除非广泛接受,否则避免使用缩写,以保持代码清晰易懂。

  5. 一致性:在整个项目中保持函数命名的一致性,便于团队协作和维护。

  6. 遵循命名惯例:对于特定框架或库中的函数,遵循其推荐的命名惯例。

在HarmonyOS鸿蒙Next中,这些规则有助于开发者编写易于理解和维护的代码。如果开发者在命名函数时遵循这些规范,将有助于提高代码的可读性和可维护性。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html。

回到顶部