鸿蒙应用开发,比 React 体验更好(1),2024年最新阿里p7面试流程要求
先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新HarmonyOS鸿蒙全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。




既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上鸿蒙开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip204888 (备注鸿蒙)
正文
List
Scroll
Swiper
Tabs
Refresh
…
并且布局方式到底是什么情况,由容器组件说了算,而不是子元素的类型说了算。
// 表示从左到右布局
Row() {
Text(‘hello world’)
Text(‘hello world’)
Text(‘hello world’)
}
// 表示从上到下布局
Column() {
Text(‘hello world’)
Text(‘hello world’)
Text(‘hello world’)
}
除了在语义化上非常重视之外,arkUI 并不支持结构与样式分离,而是把设置样式的行为当成一个 set 方法,支持一种链式调用的方式来做到样式与结构合并的最终结果
Text(‘width: 10px’)
.fontSize(‘12fp’)
.color(‘#333’)
.border({
width: ‘10px’,
color: Color.Red,
style: BorderStyle.Dotted,
radius: 15
})
这其实是原子化 css 的进化版。如果你觉得原子化 CSS 真香,那么这种方式的好处你也一定能够快速理解到。
而且他比原子化 CSS 学习和记忆成本更低,更灵活,可以说是原子化 CSS 的理想化实现。
ArkUI 在设计上,还引入了一个风险较大的设定:样式后置。
这个最开始是在 Swift UI 中出现,可能许多前端开发都没见过
Column() {
Text(‘hello text’)
.fontSize(‘12fp’)
.fontColor(Color.Black)
.fontStyle(FontStyle.Italic)
}
.width(20)
.height(20)
.border({
width: 10,
color: Color.Blue
})
之所以说他风大,是因为这种书写方式大家都没见过,可能会容易给人的第一感觉就是:什么玩意儿 …
哪怕是在 Flutter 的设计中,也是可前置可后置,然后不管是文档案例,还是大家在开发中,其实也是让样式前置
// 伪代码
Widget build(BuildContext context) {
return new Container(
width: 20,
height: 20,
…
child: new Text()
)
}
我刚开始在学习 Swift 使用的时候也会担心这种样式后置的方式会让样式堆在一起比较难受,但是用了一段时间之后发现,真香!
我们来看一下这样一段代码。
Column() {
Text(最新值:${this.counter})
Column().block()
Column().block()
Column().block()
.onClick(() => {
this.counter ++
})
}
.margin(10)
.border({width: 4})
.width(‘50%’)
.height(‘400lpx’)
.justifyContent(FlexAlign.SpaceEvenly)
.block 是样式的复用。
@Extend(Column) function block() {
.width(40)
.height(40)
.backgroundColor(Color.Orange)
.border({
width: 2,
color: Color.Red
})
}
之所以我觉得真香的原因是因为我们在开发过程中,其实子元素的样式重复非常多,因此我们会考虑将子元素的样式封装起来,用一些方式来复用它
这样,当我们将样式后置之后,虽然我们依然对父元素添加了一串样式,但是前面一部分的代码结构就依然非常简洁。
以前在刚开始接触学习 Flutter 的时候,也觉得 Flutter 的 UI 表现形式太糟糕太复杂了,为什么不学着 JSX 那样搞简单一点,并且其他人的这个类似想法还在 github 上有非常激烈的探讨。

直到后来我才理解到,这种注重语义化和容器的 UI 表达方式,可能比 JSX 更好,这才是最佳实践。
除此之外,这种声明式语法的编译速度会比 JSX 更快,性能上会更好
总结
鸿蒙应用开发的 ArkUI,和基于 HTML + CSS 的 React 相比,能够更方便的使用语义化,提倡样式与结构合并,并在 UI 设计上,简化了视觉格式化模型,注重容器特性,学习理解成本得到了极大的降低,并且基于 set 的思维方式链式调用样式,大胆的将样式后置,在我个人的主观感受里,这是一种比 React,比 Flutter 更舒适的开发体验
大多数前端开发多半都有一个坏习惯,写点代码就想看看布局现在已经长什么样了,这样其实挺影响开发效率的。
最后,为了能够让大家跟上互联网时代的技术迭代,赶上互联网开发人员寒冬期间一波红利,在这里跟大家分享一下我自己近期学习心得以及参考网上资料整理出的一份最新版的鸿蒙学习提升资料,有需要的小伙伴自行领取,限时开源,先到先得~无套路领取!!!


🚀写在最后
- 如果你觉得这篇内容对你还蛮有帮助,我想邀请你帮我三个小忙:
- 点赞,转发,有你们的 『点赞和评论』,才是我创造的动力。
- 关注小编,同时可以期待后续文章ing🚀,不定期分享原创知识。
- 想要获取更多完整鸿蒙最新VIP学习资料,请点击→纯血版全套鸿蒙HarmonyOS学习资料

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注鸿蒙)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注鸿蒙)
[外链图片转存中…(img-UFnJRSFH-1713220421805)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
更多推荐



所有评论(0)