鸿蒙开发:资讯项目实战之项目初始化搭建

简介: 目前来说,我们的资讯项目只是往前迈了很小的一步,仅仅实现了项目创建,步虽小,但概念性的知识很多,这也是这个项目的初衷,让大家不仅仅可以掌握日常的技术开发,也能让大家理解实际的项目开发知识。

前言


本项目API>=13,本章内容很简单,有经验的开发者可以略过。


上篇文章,我们简单概述了此次资讯项目的框架以及代码架构设计,那么本篇文章,我们直接就进入到代码编写阶段,首先确定需要实现哪些模块,虽然说仿照一个今日头条,但是今日头条那么多功能,如果都一一实现完,时间和精力也确实跟不上,毕竟这个项目只用于学习,只要把相关的技术点涵盖到位便可。


我大概分了四个模块,首页资讯模块,视频模块,消息模块和我的模块,最终的效果呈现,目前找了一个资讯App原型,大致如下,最后呈现的效果也尽量贴近原型设计。



以上只是主要模块,而每个模块下又有很多的子模块,这个只能具体实现的时候再说,而对于一些特定的功能,比如轮播图,比如视频的上下滑动查看,虽然原型中没有,但在具体的项目中,也会进行具体实现。


万事开头难,第一步,创建项目,选择一个空的Ability即可,如何创建项目,这里就不多说了,如果您不会,建议看我之前分享的文章,或者查看官方视频或文档都行。


模块创建


在前言中,我们划分了四个模块,那么在创建好的项目,直接创建四个模块即可,类型选择动态共享包,为什么选择动态共享包,一是便于我们组件化运行,二是当有多个安装包需要资源共享时,也可利用HSP减少公共资源和代码重复打包。


点击创建好的项目,选中项目,右键new->Module,就是创建模块。



选择动态共享包Shared Library。



输入模块名字,四个模块,分为为首页模块home,视频模块video,消息模块message,我的模块mine;设备类型,根据自身需要进行选择。



一一创建完毕后,我们的项目,加上主模块entry,就存在了五个模块,效果如下:



虽然有很多模块,但是最终都是被entry进行依赖,而最终的入口也只有一个,当然了测试运行时候,每个模块都可以进行运行。



模块创建完成之后,我们就可以在主模块entry的oh-package.json5中进行依赖:



中间层(common)


为什么要有这个中间层?目的就是为了复用,当我们组件化拆分之后,每个模块都会有相同的功能调用,如网络请求,如资源获取,为了避免代码上的冗余,我们可以把一些公用的资源或者工具放到一起,这也就是中间层产生的原因。


当然了,中间层,也是需要具体问题具体分析,毕竟组件化是为了复用,有了中间层的存在,在日后的项目复用中,那么中间层也是需要复用的,如果你想实现纯粹的单一模块复用,也可以不使用这个中间层,优点是,便于引入,也便于在庞大项目中,给某些人单开某一模块的权限,缺点是代码冗余。


这里,我们选择中间层的模式开发,毕竟各模块之间不仅仅是资源上和工具的复用,也有数据传递的一个纽带作用,所以,我们继续创建一个common模块。



创建完成之后,让四个模块home、video、message、mine分别依赖common模块。



相关总结


目前来说,我们的资讯项目只是往前迈了很小的一步,仅仅实现了项目创建,步虽小,但概念性的知识很多,这也是这个项目的初衷,让大家不仅仅可以掌握日常的技术开发,也能让大家理解实际的项目开发知识。


下一篇文章,我们仍然不会涉及到代码编写,因为虽然我们已经创建好了各个模块,但是摆在眼前,仍然有一个问题存在,那就是,各个模块如何独立运行,这也是我们组件化开发的核心要素之一,如果模块不能独立运行,那就是模块化开发,而非真正意义的组件化开发。


下一篇,会阐述模块如何独立运行,运行包和动态共享包如何切换,请大家敬请期待!


本文标签:鸿蒙新闻资讯类应用

相关文章
|
18天前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:电影App
周末好!本文分享使用仓颉语言重构ArkTS实现的电影App案例,对比两者在UI布局、组件写法及语法差异。内容包括页面结构、列表分组、分类切换与电影展示等。通过代码演示仓颉在HarmonyOS开发中的应用。##仓颉##ArkTS##HarmonyOS开发
|
18天前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:外卖App
仓颉语言实战分享,教你如何用仓颉开发外卖App界面。内容包括页面布局、导航栏自定义、搜索框实现、列表模块构建等,附完整代码示例。轻松掌握Scroll、List等组件使用技巧,提升HarmonyOS应用开发能力。
|
24天前
|
缓存 JavaScript IDE
鸿蒙开发:基于最新API,如何实现组件化运行
手动只是让大家了解切换的原理,在实际开发中,可不推荐手动,下篇文章,我们将通过脚本或者插件,快速实现组件化模块之间的切换,实现独立运行,敬请期待!
鸿蒙开发:基于最新API,如何实现组件化运行
|
1月前
|
SQL 弹性计算 数据库
鸿蒙5开发宝藏案例分享---优化应用时延问题
鸿蒙性能优化指南来了!从UI渲染到数据库操作,6大实战案例助你提升应用流畅度。布局层级优化、数据加载并发、数据库查询提速、相机资源延迟释放、手势识别灵敏调整及转场动画精调,全面覆盖性能痛点。附赠性能自检清单,帮助开发者高效定位问题,让应用运行如飞!来自华为官方文档的精华内容,建议收藏并反复研读,共同探讨更多优化技巧。
|
17天前
|
存储 IDE 定位技术
【HarmonyOS 5】鸿蒙组件&模板服务详解 - 助力高效开发的利器
在移动应用开发领域,效率与质量始终是开发者追求的核心目标。鸿蒙系统作为新兴的操作系统,为开发者提供了丰富且强大的开发资源,其中鸿蒙组件&模板服务更是成为开发者快速构建高质量应用的得力助手。
70 0
|
18天前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:健身App
本期分享一个健身App首页的布局实现,顶部采用Stack容器实现重叠背景与偏移效果,列表部分使用List结合Scroll实现可滚动内容。代码结构清晰,适合学习HarmonyOS布局技巧。
|
18天前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:小而美的旅行App
本文分享了一个旅行App首页的设计与实现,使用List容器搭配Row、Column布局完成个人信息、功能列表及推荐模块的排版,详细展示了HarmonyOS下的界面构建技巧。
|
18天前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:银行App
仓颉语言银行App项目分享,页面布局采用List容器,实现沉浸式体验与模块化设计。顶部资产模块结合Stack与Row布局,背景图与内容分离,代码清晰易懂;功能按钮部分通过负边距实现上移效果,圆角仅保留顶部;热门推荐使用header组件,结构更规范。整体代码风格与ArkTS相似,但细节更灵活,适合金融类应用开发。
|
1月前
|
缓存
鸿蒙5开发宝藏案例分享---Swiper组件性能优化实战
本文分享了鸿蒙系统中Swiper组件的性能优化技巧,包括:1) 使用`LazyForEach`替代`ForEach`实现懒加载,显著降低内存占用;2) 通过`cachedCount`精准控制缓存数量,平衡流畅度与内存消耗;3) 利用`onAnimationStart`在抛滑时提前加载资源,提升构建效率;4) 添加`@Reusable`装饰器复用组件实例,减少创建开销。实际应用后,图库页帧率从45fps提升至58fps,效果显著。适合处理复杂列表或轮播场景,欢迎交流经验!
|
4天前
|
存储 SQL 前端开发
跟老卫学HarmonyOS开发:ArkTS关系型数据库开发
本节以“账本”为例,使用关系型数据库接口实现账单的增、删、改、查操作。通过创建ArkTSRdb应用,演示如何操作RdbStore进行数据管理,并结合界面按钮实现交互功能。
26 0
跟老卫学HarmonyOS开发:ArkTS关系型数据库开发