前言本文基于DevEco Studio 5.0.5 Release DevEcoStudio和大多数的开发工具一样,都有提高代码编码效率的工具或者方法,不知道,在实际的开发当中,你是否投入了使用,本篇文章 ,我们重点结合实际的代码,看看DevEcoStudio中那些可以提高我们编码效率的快捷方式。 快速生成构造器我相信肯定有小伙伴,在写实体类的时候,构造函数,还在进行手写,其实,在DevEco Studio中,这种生成,一个快捷方式便可以搞定。 右键选择Generate:选择Constructor选择要携带的属性动态效果如下:快速生成get/set方法在DevEco Studio中除了构造函数可生成之外,我们还可以自动化生成当前类中的成员变量或对象属性对应的 本文标签:鸿蒙开发工具/DevEco Studio
2020年9月10日,华为CEO余承东在华为开发者大会上宣布,鸿蒙2.0(HarmonyOS 2.0)系统正式发布。 此次距离华为鸿蒙1.0(HarmonyOS 1.0)发布已经过去一年了。 从华为遭遇制裁开始,鸿蒙成为了很多国人的寄托。但第一次推出,就引发了争议: 没有完整的开发文档,架构设计说明,配套的IDE,没有可编译的DEMO......鸿蒙1.0一度被称为为“PPT操作系统”。 而一年后的鸿蒙2.0都有了:技术架构公开,文档代码全部开源。 外人不懂,其实我们做这一行应该知道: 走到这一步的华为,已经开始向巨头迈进。 作为半个内行人,我们最关注的当然还是鸿蒙系统的源码,已经有一些尝鲜的小伙伴跑过一波,按照步骤一步步跑下来,整个流程还是不难。
在前几篇文章里也介绍了许多关于鸿蒙开发的技巧,今天我们就来做自己的第一个代办事项应用。鸿蒙开发和Flutter一样,都具有跨平台的特性,Flutter一套代码可以在Android,ios,web。 linux,desk等部署,鸿蒙也有这样的特性,可同时在手机、大屏、手表生效,体验“一次开发、多设备部署”特性。 事实证明小程序这种开发方式非常好,鸿蒙 JS UI 框架采用类似的方式也是在意料之中的。 工作原理 要理解它的工作原理,先研究一下编译之后的代码是非常重要的。上面的三个文件,编译之后会生成一个文件,其位置在:. 在没有研究编译之后的代码时,我尝试在 ace/graphic 两个包中寻找解析 HML 的代码,让我惊讶的是没有找到相关代码。看了这些生成的代码之后才恍然大悟。
本文介绍在鸿蒙应用中RadioButton和RadioContainer组件的基本用法。 增加RadioButton和RadioContainer组件 如下代码中46行~66行所示,在布局中增加RadioButton和RadioContainer组件。 <? height="0vp" ohos:weight="5" ohos:width="match_parent" /> </DirectionalLayout> 代码中组件 id被指定为radio_container,会在下面的响应代码中用到。 在代码中使用RadioButton和RadioContainer组件 下面代码中的第18行获取RadioContainer组件后,在第22行根据RadioContainer的状态更新TimePicker
使用 Flutter SDK 3.22.0SDK 安装参考鸿蒙Flutter实战:01-搭建开发环境文章的说明,首先安装 Flutter SDK 3.22.0。 鸿蒙化的 SDK 需要配置安装,我们稍后进入项目,执行安装。 ,则使用以下命令添加鸿蒙平台支持。 oh_modules├── pubspec.lock├── pubspec.yaml└── pubspec_overrides.yaml创建命令执行成功后,项目中会出现 ohos目录,这里面存放的就是鸿蒙平台的相关代码 运行 运行 Flutter 项目,在项目根目录使用 fvm flutter run 或者在 IDE 中点击运行按钮参考资料FVM鸿蒙Flutter实战:01-搭建开发环境鸿蒙 Flutter 3.22.0
介绍本示例将介绍如何使用装饰器和插件,自动生成动态路由表,并通过动态路由跳转到模块中的页面,以及如何使用动态import的方式加载模块。 /common/routermodule" }以上是需要在主模块中添加的配置,如果已经添加过相关代码,则可以直接略过,按照下面的步骤在子模块中添加相关即可自动生成动态路由相关文件。 // 自定义装饰器,用于自动生成动态路由代码及页面的跳转。 1.OpenHarmony开发基础2.OpenHarmony北向开发环境搭建3.鸿蒙南向开发环境的搭建4.鸿蒙生态应用开发白皮书V2.0 & V3.05.鸿蒙开发面试真题(含参考答案) 6.TypeScript 入门学习手册7.OpenHarmony 经典面试题(含参考答案)8.OpenHarmony设备开发入门【最新版】9.沉浸式剖析OpenHarmony源代码10.系统定制指南11.
前言本文基于Api13, DevEco Studio 5.0.5 ReleaseCodeGenie是DevEcoStudio中一个自带的AI工具,在之前的文章中,也写过两篇文章,主要针对代码生成、知识问答和编译报错智能分析做了概述 确认卡片的相关信息:它会自动的把卡片相关文件生成到我们的项目中,包含UI代码,资源,相关配置等,一切都是自动化配置。 运行之后,我们自动生成的卡片就完成了,效果如下:相关总结上面我们只概述了一种代码保存,那就是自动保存卡片工程,它会把所有的代码,资源以及配置进行保存,当然了,它还有手动的保存的方式,那就是右侧的三个选项 :点击第一个代码,在卡片的下面就会把当前的卡片代码进行展示,我们可以进行查看和复制使用。 本文标签:鸿蒙开发工具/CodeGenie
Mock这块主要是用于测试,官方给出了两个途径: Pass mocks to the injector Return the mocks from the injector 初看可能不容易理解,我们结合实际代码就能了解
再举一个常见的场景,一个函数,你写了很多的代码,想要把一部分代码,快速的抽成一个单独的函数,用于简化当前的代码逻辑,如何快速的实现?可能很多老铁会第一时间想到,把代码复制出来呗,这有什么难的? 有一点需要说明,如果你是私有的属性,也就是组件本身自己的属性,一般它会直接生成@Extend修饰的函数,如果是通用属性,可提取为@Styles或@Extend装饰的函数。 如下所示,我选中的是通用的属性,就可以看到给出要选择的生成选项:提取新方法/函数(Method)在前言中,我们简单列举了一个例子,快速实现了组件的属性函数生成,这种提取方式,就是方法提取,除此之外,在实际的开发中 你可以选择全局或者当前页面中:生成的代码如下:@Entry@Componentstruct Index { build() { Column() { this.newLocalBuilder 本文标签:鸿蒙开发工具/DevEco Studio
鸿蒙应用开发的sdk 现在已经来到了5.0.2(api:14).离我上次写鸿蒙应用(那时候还是9、10)已经过去一段时间(不到一年),版本已经大跃进了,里面的大部分api都已经陌生了。 作品海报生成 (涉及画布渲染生成以及图片存储) 4. 作品AI朗读( 涉及语言播放,AI朗读服务) 等等。要真细想,其实预想的一些功能可以充分利用鸿蒙的很酷的特性。 话不多说,我就开始先敲第一个功能:海报生成。海报生成的功能,根据查阅一番文档下来,需要用以下功能实现,首先是canvas画布,类似html的canvas,这是一个UI组件。 代码中的saveToFile函数是我自己封装。下面会介绍函数的具体代码。最后一步就是跟文件权限有关的操作。 最后我想说,上面的例子只是简单借用画布组件生成数据保存到本地的逻辑。
com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; public class GeneratorClass { public static void main(String[] args) { // 代码生成器 gc.setOutputDir(path); gc.setIdType(IdType.AUTO);//设置主键策略 gc.setDateType(DateType.ONLY_DATE);//生成 ,"tb_item_param","tb_item_param_item","tb_order","tb_order_item","tb_order_shipping","tb_user"); // 生成的表 ,多个表继续传递即可,String类型的可变参数 //将策略配置对象集成到代码生成器中 mpg.setGlobalConfig(gc); mpg.setDataSource (dsc); mpg.setPackageInfo(pc); mpg.setStrategy(stConfig); //执行生成 mpg.execute
背景介绍: 工作中经常用到单表的增删该查包括分页,定义实体对象和写一些单表dao,代码单一,重复性工作多。毕竟作为开发人员大多数时间应该关注业务,代码自动生成就会节省很多重复性工作。 代码生成工具 根据项目需要定义项目包名和数据库连接信息: package com.wyh.generate.ormcodegenerate; import com.google.common.base.CaseFormat java.text.SimpleDateFormat; import java.util.*; import static com.wyh.generate.ormcodegenerate.ProjectConstant.*; /** * 代码生成器 { genCode("event"); //genCode("输入表名","输入自定义Model名称"); } /** * 通过数据表名称生成代码 tableNames) { genCode(tableName, null); } } /** * 通过数据表名称,和自定义的 Model 名称生成代码
代码生成 makefile在make all之前会先generated_files去进行代码生成,所以首先要理解代码生成的原理,然后才可以很好的知道 这个过程都干啥了. all: generated_files 写过代码的都知道很多时候有大量结构重复的代码需要去写,劳心劳力还没什么技术含量,所以为了解决这个问题代码生成它来了。 代码生成的场景有很多如: protobuf 根据一个协议字段配置文件生成客户端和服务端的.go代码 IDE中的自动测试用例和接口实现函数代码生成 一些web框架自动生成RESTFUL接口代码 operator 脚手架工具生成k8s controller代码等 在kubernetes中主要生成代码有这些: deep-copy generator, kubernetes中的对象都需要实现该方法,每个对象都自己手动去写很累 代码生成原理 所以我们的目的就是根据源代码再生成一些源代码,那问题就分成三步走: 解析我们写的源码,提取我们所需要的内容,如包名,结构体名,等 渲染模板文件 生成源码文件 下面用个简单的例子来帮助理解这一过程
在很多开源的后台管理系统当中都有代码生成的工具,帮助开发者完成通用代码的生成,比如生成 Controller、Service、Dao 和 XML 文件等,能够帮助开发者生成通用的CRUD 其实在开发框架中也有一些简单的代码生成的工具,比如接下来要介绍的 mybatis-plus 提供的代码生成。 使用 SpringBoot 来测试一下 Mybatis-Plus 代码生成的功能。 SpringBoot 项目中使用代码生成器需要引入一些依赖,依赖如下: <! 引入上面的依赖以后,下面的代码其实进行简单的修改就可以完成自己的代码生成,非常的方便。 代码简单的易懂,就不做过多说明。 生成结果 运行上面的代码,来看一下生成的内容,如下图: ?
1.环境搭建参考文章鸿蒙Flutter实战:01-搭建开发环境搭建好开发环境。IDE 安装好 DevEco 和 VsCode/Android Studio。 方案二适应DecEco运行鸿蒙项目,注意需要打开的是ohos鸿蒙目录代码,待IDE分析结束后,点击运行。 当app在鸿蒙设备上启动成功后,立即在 Vscode 中调出 Command Pallet,找到 Flutter Attach ,将 Flutter 调试器连接至宿主机然后就是增加断点,使用hot reload 重新加载 Flutter,调试项目代码。 调试 Webview参考文章 鸿蒙Flutter实战:04-如何使用DevTools调试Webview进行 Webview 调试。
前言本文代码案例基于Api13。 ,使代码更易维护和扩展。 提到AOP,大家最常见的就是日志的记录,AOP可以在不修改原有业务代码的情况下,通过代码插桩的方式,为应用程序添加日志记录功能;当然了,除了日志记录功能,相信大家肯定见过很多的三方的统计,比如友盟,神策等等 AOP,说的简单直白一点,就是,它可以实现对原有的对象方法,在执行前后,进行插桩,同样,在鸿蒙的开发中,我们也可以直接对其方法进行替换操作,如何实现,在Api 11之后使用Aspect对象即可。 相关总结正确的运用AOP,可以提升代码的模块化、复用性、可维护性和灵活性,同时降低了耦合度,使系统更易于扩展和维护。
2.实验内容: 结合示范代码了解曲线B样条曲面生成原理与算法实现,尤其是NURBS曲面。 调试、编译、修改示范程序。 OpenGL提供了NURBS接口,该接口封装了大量代码,不仅包含渲染功能,也提供了修剪曲面等额外功能,NURBS函数使用平面多边形进行渲染。 图A.11(a)生成B样条曲面 5.实验提高 根据控制点(-1.5, -1.5, 2.0)、(-0.5, -1.5, 2.0)、(0.5, -1.5, -1.0)、(1.5, -1.5, 2.0)、 B样条曲面,见图A.11(b)。 图A.11(b)重新生成B样条曲面
摘要 JsonToArkTS 在线工具助力开发者快速将复杂 JSON 转换为 ArkTS 接口或类,大幅提升鸿蒙应用开发效率。 本文将通过实际案例,手把手教你如何利用该工具一键生成 ArkTS 模型代码,节省开发时间。 智能拆分:自动处理嵌套对象和数组,生成模块化代码。 灵活选择:支持Interface和Class两种生成模式,适应不同场景。 总结 JsonToArkTS 工具显著简化了鸿蒙开发中 Model 类的编写流程,尤其适合处理复杂 JSON 数据结构。通过自动化生成接口或类,开发者可专注于业务逻辑,提升整体效率。 致谢:感谢社区开发者提供的代码与思路,工具将持续优化以增强智能性。
生成模型 生成模型的定义就是给定一个训练数据,然后生成一些新的样本,保证和所给的训练集有一样的分布。 即下图所示,假设训练集中满足分布 ,我们要做的就是生成一些样本满足分布 ,同时保证 。 生成模型主要有以下这些应用场景: 生成逼真的艺术品图片,拥有超高的分辨率,着色等。 时间序列数据的生成模型可以用于仿真和规划(在强化学习中应用)。 训练生成模型还可以使隐式表征的推断成为有用的通用特征。 对于生成一张图像,我们可以按照某个顺序逐一生成每个像素,假设第一个像素生成的概率为 ,那么第二个像素生成的概率就定义成 ,表示已经生成像素 的条件下,生成第二个像素的概率,同理第三个像素的概率为 那么,既然解码器负责生成图片,那么我们能否利用这个解码器,使用随机的编码来生成一些新的图片呢?这不就是本文在讨论的生成模型的任务吗。
场景 1.CodeFun是什么 CodeFun是一款UI 设计稿智能生成源代码的工具,支持微信小程序端、移动端H5和混合APP,上传 Sketch、PSD等形式的设计稿,通过智能化技术一键生成可维护的前端代码 CodeFun 的使用流程只有 3 个步骤: 在 Sketch 插件中上传设计稿 在 CodeFun 工具中查看代码 将生成的代码拷贝到自己已有的工程中即可 1、安装 Sketch 插件 在CodeFun 可以先进行代码的预览,和图片资源的查看 以上是单个没有问题的话,可以进行简单的跳转交互,数据绑定的操作,可以下载代码 获取代码 用户在上传完设计稿后,有两种获取代码的方式: 区域提取代码 整站打包下载 ,打开代码面板 代码面板中默认展示 4 列,分别展示 HTML、CSS、JS 和全局样式的代码。 打开小程序开发工具,分别将这四部分代码粘贴到小程序相应的文件中,这样就可以整页提取代码,但有时候页面中会遇到类似“Tab 标签页”、“Swipe 轮播”等交互式组件时,自动生成的整页代码并不能支持交互,