鸿蒙开发:DevEcoStudio中的代码生成

前言

本文基于DevEco Studio 5.0.5 Release

DevEcoStudio和大多数的开发工具一样,都有提高代码编码效率的工具或者方法,不知道,在实际的开发当中,你是否投入了使用,本篇文章,我们重点结合实际的代码,看看DevEcoStudio中那些可以提高我们编码效率的快捷方式。

快速生成声明信息到Index文件

当我们在开发动态共享包或者静态共享包的时候,需要把变量、方法、接口、类等需要对外暴露的信息,声明到Index文件,才能便于其他模块或者他人进行调用,最常见的方式,就是手动一个一个复制声明,手动复制没问题,但是效率很低,特别是那些需要暴露很多方法的包,手动起来,费时费力,非常不便。

其实DevEcoStudio中给我们提供了,快速声明的方式,我们只需要在某一个文件中,单击右键选择Generate,选择Declarations,或者使用快捷键Alt+Insert,在菜单中选择Declarations,然后再选择需要声明的变量名、方法名、接口名、类名等,就可以在模块的Index.ets文件中批量生成相应的声明信息。

右键选择Generate:

选择Declarations

选择要声明的信息,可以进行多选。

效果如下,可以看到还是非常的方便的。

快速生成构造器

我相信肯定有小伙伴,在写实体类的时候,构造函数,还在进行手写,其实,在DevEco Studio中,这种生成,一个快捷方式便可以搞定。

在你需要生成构造函数的类中,使用快捷键Alt+Insert,或单击鼠标右键选择Generate,接着选择Constructor,然后选择一个或多个需要生成构造函数的参数,点击OK,便快速的实现了一个构造器。

右键选择Generate:

选择Constructor

选择要携带的属性

动态效果如下:

快速生成get/set方法

在DevEco Studio中除了构造函数可生成之外,我们还可以自动化生成当前类中的成员变量或对象属性对应的get和set方法,便于外部的调用。

生成的方式和构造函数的步骤基本一样,只不过这里选择的是Getter 或者 Setter,亦或者,Getter and Setter,您可以根据自身需要进行选择。

选择要生成的属性。

便会自动生成对应的get和set方法:

class Test {
  private _name?: string | undefined

  public set name(value: string | undefined) {
    this._name = value
  }

  public get name(): string | undefined {
    return this._name
  }

  private _color?: ResourceColor | undefined

  public set color(value: ResourceColor | undefined) {
    this._color = value
  }

  public get color(): ResourceColor | undefined {
    return this._color
  }

}

快速覆写父类

在开发中,如果你的某个类继承了一个父类,需要进行覆写父类中的方法或者属性,可以使用DevEco Studio提供Override Methods快捷方式,使用方式和上面的步骤基本一致。

将光标放于子类定义位置,使用快捷键Ctrl+O,或右键单击Generate,然后选择Override Methods选项,选择指定需要覆写的对象中的方法、变量等,点击OK后,便可以自动的覆写了。

选择Override Methods选项

选择指定需要覆写的信息。

相关总结

其实大家可以发现,一篇文章下来,都是基于右键后的Generate选项,所以,还是非常的简单的,当然了,还是希望大家,以上的功能,能够应用在实际的开发中,而不是停留在纸面上。

本文标签:鸿蒙开发工具/DevEco Studio

好的,根据您提供的文件内容和要求,我将在 DevEco Studio生成完整的代码示例。以下是详细的步骤和最终代码实现,确保其符合 HarmonyOS 开发的最佳实践。 ### 步骤说明 1. **打开 DevEco Studio**:启动 DevEco Studio,并创建一个新的 HarmonyOS 项目。 2. **创建文件**:在项目的 `src/main/ets/pages` 目录下创建一个新文件 `Index.ets`。 3. **编写代码**:按照下面的代码示例编写内容。 4. **运行项目**:保存文件后,点击运行按钮,查看控制台输出。 ### 完整代码 ```typescript // 文件路径: src/main/ets/pages/Index.ets // 导入必要的模块 import Ability from '@ohos.application.Ability'; import { Column, Text, createElement } from 'harmony'; // 定义并初始化变量 let name: string = '张三'; // 定义字符串类型的变量 name 并赋值为 "张三" let age: number = 28; // 定义数字类型的变量 age 并赋值为 28 let num1: number = 15; // 定义数字类型的变量 num1 并赋值为 15 let num2: number = 20; // 定义数字类型的变量 num2 并赋值为 20 // 使用模板字符串拼接变量并输出个人简介信息 console.log('简介信息:', `姓名是${name},年龄是${age}`); // 计算两个数字的和 let sum: number = num1 + num2; // 使用模板字符串拼接变量并输出计算结果 console.log('总数:', sum); // 定义页面组件 export default class Index extends Ability { @state message: string = 'Hello World'; // 初始化状态信息 onStart() { super.onStart(); console.log('当前状态信息:', this.message); // 设置页面布局 this.setUIContent(createElement( Column, {}, [ Text(this.message), Text(`简介信息: 姓名是${name},年龄是${age}`), Text(`总数: ${sum}`) ] )); } } ``` ### 代码解析 1. **导入模块**: - 使用 `import` 语句导入 HarmonyOS 开发所需的模块,如 `Ability`、`Column`、`Text` 等。 2. **变量定义与初始化**: - 使用 `let` 关键字定义并初始化了 `name`, `age`, `num1`, `num2` 等变量。 - `name` 设为 "张三",`age` 设为 28,`num1` 设为 15,`num2` 设为 20。 3. **模板字符串**: - 利用反引号 `` ` `` 创建模板字符串,并在其中通过 `${}` 插入变量 `name` 和 `age` 的值。 - 输出个人简介信息 `"姓名是张三,年龄是28"`。 4. **计算求和**: - 定义 `sum` 变量存储 `num1` 和 `num2` 的和。 - 使用 `console.log` 打印计算结果 `"总数: 35"`。 5. **页面组件**: - 定义一个类 `Index` 继承自 `Ability`,并使用 `@state` 装饰器初始化状态信息。 - 在 `onStart` 方法中,设置页面布局,使用 `createElement` 函数创建 UI 元素,并通过 `Text` 组件显示信息。 ### 知识点 1. **模板字符串**:使用反引号定义,允许嵌入变量表达式。 - 简化多变量字符串拼接。 2. **变量插值**:`${expression}` 用来在模板字符串中插入变量或表达式的值。 - 使代码更简洁易读。 3. **HarmonyOS 应用开发**:通过 `createElement` 和 `Text` 组件构建页面布局。 - 提高开发效率,增强应用的交互性。 ### 运行项目 1. **配置设备**:确保已连接 HarmonyOS 设备或模拟器。 2. **点击运行**:点击 DevEco Studio 上方的运行按钮,等待编译和安装完成。 3. **查看输出**:在控制台和设备屏幕上查看输出信息。 希望这段代码能符合您的需求,如果有任何调整或进一步的需求,请随时告知!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员一鸣

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值