大家好,我是 码工,一个有十年工作经验的码农,一心追求技术。
来啦来啦,最近经常有小伙伴问我有关鸿蒙的项目目录结构,让我讲一下鸿蒙开发的目录结构。
今天终于有时间了,给大家详细讲解一下。
主要从两方面讲,Java项目结构和Js项目结构。
为啥要说两个的呢?这就体现了鸿蒙开发的好处,鸿蒙开发太方便了,既可以使用Java开发,还可以使用Js开发。
根据个人的喜好或者擅长来选择,进行开发。
话不错说,开干。
1,Java 项目目录结构
Java工程目录结构如下图所示。
-
.gradle:Gradle配置文件,由系统自动生成,一般情况下不需要进行修改。
-
entry:默认启动模块(主模块),开发者用于编写源码文件以及开发资源文件的目录。
-
boolean.json:布尔型
-
color.json:颜色
-
float.json:浮点型
-
intarray.json:整型数组
-
integer.json:整型
-
pattern.json:样式
-
plural.json:复数形式
-
strarray.json:字符串数组
-
string.json:字符串值。
-
entry>libs:用于存放entry模块的依赖文件-jar包。
-
entry>src>main>Java:用于存放Java源码。
-
entry>src>main>resources:用于存放应用所用到的资源文件,如图形、多媒体、字符串、布局文件等。
- entry>src>main>config.json:HAP清单文件,详细说明请参考config.json配置文件介绍。
- entry>src>test:编写代码单元测试代码的目录,运行在本地Java虚拟机(JVM)上。
- entry>.gitignore:标识git版本管理需要忽略的文件。
- entry>build.gradle:entry模块的编译配置文件。
2,js项目目录结构
JS工程目录结构如下图所示。
-
common目录:可选,用于存放公共资源文件,如媒体资源、自定义组件和JS文档等。
-
i18n目录:可选,用于存放多语言的json文件,可以在该目录下定义应用在不同语言系统下显示的内容,如应用文本词条、图片路径等。
-
pages目录:pages文件夹下可以包含1个或多个页面,每个页面都需要创建一个文件夹(如图中的index)。页面文件夹下主要包含3种文件类型:css、js和hml文件。
-
pages>index>index.hml文件:hml文件定义了页面的布局结构,使用到的组件,以及这些组件的层级关系。
-
pages>index>index.css文件:css文件定义了页面的样式与布局,包含样式选择器和各种样式属性等。
-
pages>index>index.js文件:js文件描述了页面的行为逻辑,此文件里定义了页面里所用到的所有的逻辑关系,比如数据、事件等。
-
resources:可选,用于存放资源配置文件,比如:全局样式、多分辨率加载等配置文件。
-
app.js文件:全局的JavaScript逻辑文件和应用的生命周期管理。
JS服务卡片(entry/src/main/js/module)的典型开发目录结构如下:
图1 目录结构
目录结构中文件分类如下:
- .hml结尾的HML模板文件,这个文件用来开发页面的模板布局结构。
- .css结尾的CSS样式文件,这个文件用于开发页面样式。
- .json结尾的JSON文件,这个文件用于开发使用的变量和action事件。
各个文件夹的作用:
- pages目录用于存放卡片模板页面。
- common目录用于存放公共资源文件,比如:图片资源。
- resources目录用于存放资源配置文件,比如:多分辨率加载配置文件。
- i18n目录用于配置不同语言场景资源内容,比如应用文本词条,图片路径等资源。
说明
i18n和resources是开发保留文件夹,不可重命名。
应用资源访问规则
应用资源可通过绝对路径或相对路径的方式进行访问,本开发框架中绝对路径以"/"开头,相对路径以"./"或"../"。具体访问规则如下:
- 引用代码文件,需使用相对路径,比如:../common/style.css。
- 引用资源文件,推荐使用绝对路径。比如:/common/xxx.png。
- 公共代码文件和资源文件推荐放在common下,通过规则1和规则2进行访问。
- CSS样式文件中通过url()函数创建数据类型,如:url(/common/xxx.png)。
原创不易,有用就关注一下。要是帮到了你 就给个三连吧,多谢支持。
觉得不错的小伙伴,记得帮我 @程序员漫画编程**,点个赞和关注哟,笔芯笔芯~**
来源:公众号「码工成长记」
作者:码工
原文链接:鸿蒙 | 讲讲鸿蒙开发的项目结构和使用
附程序员必备小册,小册版权归作者所有,Gitee 地址:码工/haomonyDevelop