如何用Jetpack Compose和Room开发NimWishApp,开启高效安卓之旅?
- 内容介绍
- 文章标签
- 相关推荐
在2024年,作为一名独立开发者,我经常在想,我是不是真的在进步?还是只是在原地打转?这半年来 我一直在用Jetpack Compose 和 Room 搞我的 NimWishApp, 格局小了。 后来啊呢,写完之后我突然觉得,这不就是一场孤独的战斗吗?自己一个人码代码,自己一个人写逻辑,自己一个人调试,再说说还自己一个人写文档。这感觉,怎么说呢,像是在写诗,但写的是代码。
项目结构
你想... 我们先来聊聊这个项目本身。NimWishApp 是一个基于 Jetpack Compose 和 Room 的心愿清单应用,主要功能是让用户记录和管理自己的心愿列表。整个项目结构非常清晰, 使用了现代安卓开发的主流技术栈,包括:

- 主界面:使用 Jetpack Compose 实现的主界面
- 数据层:使用 Room 实现数据持久化
- 导航:使用 Compose 的导航图实现页面跳转
这个项目结构其实挺简单的,主要就是用 Jetpack Compose 和 Room 搞定的。但你别说这玩意儿写起来还挺顺手。我用的是我自己的方式,不走寻常路,代码写到飞起。
技术选型
深得我心。 用 Jetpack Compose 写 UI, Room 做本地数据库,Kotlin 做逻辑,一气呵成。整个项目结构如下:
- 用户可以在主界面添加心愿
- 用户可以查看心愿列表
- 用户可以编辑心愿
- 用户可以删除心愿
- 用户可以查看心愿的详细信息
代码这东西, 写起来是真的爽,特别是你用 Compose 写 UI 的时候,感觉就像在飞。 从一个旁观者的角度看... 你写一写,改一改,提交,测试,发布,一气呵成。当然前提是你要有耐心,有毅力,还要有时间。
依赖配置
这个项目用到的依赖库配置如下:
dependencies {
implementation ":ui:1.0.0"
implementation "3:material3:1.0.0"
implementation ":navigation-compose:2.4.0-alpha07"
implementation ":room-runtime:2.3.0"
kapt ":room-compiler:2.3.0"
...
}
研究研究。 代码这东西, 写起来是真的爽,你只要按部就班,别出什么岔子,就万事大吉了。当然如果你的代码出问题了那你就得重新来一遍了。
数据层
数据层用的是 Room,这个库可以让你把数据存在本地。你只要把数据写入数据库,就可以为所欲为。当然前提是你得会写代码。我写代码的风格就是:写得飞起,嚯...。
代码结构
实不相瞒... 代码结构就是这么简单,只要你会写,就能飞。当然前提是你得有耐心,有毅力,还要有时间。
对比表格
| 技术 | 功能 |
|---|---|
| Jetpack Compose | 构建现代化的用户界面 |
| Room | 本地数据存储 |
| Navigation | 页面跳转 |
| Compose | UI 构建 |
| Material3 | UI 设计 |
功能对比
| 功能 | 描述 |
|---|---|
| 添加心愿 | 用户可以添加心愿 |
| 编辑心愿 | |
| 删除心愿 | |
| 查看心愿 |
代码这东西, 写起来是真的爽,你只要按部就班,别出什么岔子,就万事大吉。当然前提是你得有耐心,有毅力,还要有时间。
用户交互
用户交互就是这么简单, 只要你有耐心,有毅力,还要有时间,你就能飞起来。当然前提是你得有耐心,有毅力,还要有时间,胡诌。。
| 功能 | 描述 |
|---|---|
| 添加心愿 | 用户可以添加心愿 |
| 编辑心愿 | 用户可以编辑心愿 |
| 删除心愿 | 用户可以删除心愿 |
| 查看心愿 | 用户可以查看心愿 |
| 功能 | 描述 |
|---|---|
| 添加心愿 | 用户可以添加心愿 |
| 编辑心愿 | 用户可以编辑心愿 |
| 删除心愿 | 用户可以删除心愿 |
| 查看心愿 | 用户可以查看心愿 |
代码结构就是这么简单, 只要你有耐心,有毅力,还要有时间,你就能飞起来。
什么鬼? 数据层用的是 Room,这个库可以让你把数据存在本地。你只要把数据写入数据库,就可以为所欲为。当然前提是你得有耐心,有毅力,还要有时间。
| 功能 | 描述 |
|---|---|
| 添加心愿 | 用户可以添加心愿 |
| 编辑心愿 | 用户可以编辑心愿 |
| 删除心愿 | 用户可以删除心愿 |
| 查看心愿 | 用户可以查看心愿 |
| 功能 | 描述 |
|---|---|
| 添加心愿 | 用户可以添加心愿 |
| 编辑心愿 | 用户可以编辑心愿 |
| 删除心愿 | 用户可以删除心愿 |
| 查看心愿 | 用户可以查看心愿 |
| 功能 | 描述 |
|---|---|
| 添加心愿 | 用户可以添加心愿 |
| 编辑心愿 | 用户可以编辑心愿 |
| 删除心愿 | 用户可以删除心愿 |
| 查看心愿 | 用户可以查看心愿 |
在2024年,作为一名独立开发者,我经常在想,我是不是真的在进步?还是只是在原地打转?这半年来 我一直在用Jetpack Compose 和 Room 搞我的 NimWishApp, 格局小了。 后来啊呢,写完之后我突然觉得,这不就是一场孤独的战斗吗?自己一个人码代码,自己一个人写逻辑,自己一个人调试,再说说还自己一个人写文档。这感觉,怎么说呢,像是在写诗,但写的是代码。
项目结构
你想... 我们先来聊聊这个项目本身。NimWishApp 是一个基于 Jetpack Compose 和 Room 的心愿清单应用,主要功能是让用户记录和管理自己的心愿列表。整个项目结构非常清晰, 使用了现代安卓开发的主流技术栈,包括:

- 主界面:使用 Jetpack Compose 实现的主界面
- 数据层:使用 Room 实现数据持久化
- 导航:使用 Compose 的导航图实现页面跳转
这个项目结构其实挺简单的,主要就是用 Jetpack Compose 和 Room 搞定的。但你别说这玩意儿写起来还挺顺手。我用的是我自己的方式,不走寻常路,代码写到飞起。
技术选型
深得我心。 用 Jetpack Compose 写 UI, Room 做本地数据库,Kotlin 做逻辑,一气呵成。整个项目结构如下:
- 用户可以在主界面添加心愿
- 用户可以查看心愿列表
- 用户可以编辑心愿
- 用户可以删除心愿
- 用户可以查看心愿的详细信息
代码这东西, 写起来是真的爽,特别是你用 Compose 写 UI 的时候,感觉就像在飞。 从一个旁观者的角度看... 你写一写,改一改,提交,测试,发布,一气呵成。当然前提是你要有耐心,有毅力,还要有时间。
依赖配置
这个项目用到的依赖库配置如下:
dependencies {
implementation ":ui:1.0.0"
implementation "3:material3:1.0.0"
implementation ":navigation-compose:2.4.0-alpha07"
implementation ":room-runtime:2.3.0"
kapt ":room-compiler:2.3.0"
...
}
研究研究。 代码这东西, 写起来是真的爽,你只要按部就班,别出什么岔子,就万事大吉了。当然如果你的代码出问题了那你就得重新来一遍了。
数据层
数据层用的是 Room,这个库可以让你把数据存在本地。你只要把数据写入数据库,就可以为所欲为。当然前提是你得会写代码。我写代码的风格就是:写得飞起,嚯...。
代码结构
实不相瞒... 代码结构就是这么简单,只要你会写,就能飞。当然前提是你得有耐心,有毅力,还要有时间。
对比表格
| 技术 | 功能 |
|---|---|
| Jetpack Compose | 构建现代化的用户界面 |
| Room | 本地数据存储 |
| Navigation | 页面跳转 |
| Compose | UI 构建 |
| Material3 | UI 设计 |
功能对比
| 功能 | 描述 |
|---|---|
| 添加心愿 | 用户可以添加心愿 |
| 编辑心愿 | |
| 删除心愿 | |
| 查看心愿 |
代码这东西, 写起来是真的爽,你只要按部就班,别出什么岔子,就万事大吉。当然前提是你得有耐心,有毅力,还要有时间。
用户交互
用户交互就是这么简单, 只要你有耐心,有毅力,还要有时间,你就能飞起来。当然前提是你得有耐心,有毅力,还要有时间,胡诌。。
| 功能 | 描述 |
|---|---|
| 添加心愿 | 用户可以添加心愿 |
| 编辑心愿 | 用户可以编辑心愿 |
| 删除心愿 | 用户可以删除心愿 |
| 查看心愿 | 用户可以查看心愿 |
| 功能 | 描述 |
|---|---|
| 添加心愿 | 用户可以添加心愿 |
| 编辑心愿 | 用户可以编辑心愿 |
| 删除心愿 | 用户可以删除心愿 |
| 查看心愿 | 用户可以查看心愿 |
代码结构就是这么简单, 只要你有耐心,有毅力,还要有时间,你就能飞起来。
什么鬼? 数据层用的是 Room,这个库可以让你把数据存在本地。你只要把数据写入数据库,就可以为所欲为。当然前提是你得有耐心,有毅力,还要有时间。
| 功能 | 描述 |
|---|---|
| 添加心愿 | 用户可以添加心愿 |
| 编辑心愿 | 用户可以编辑心愿 |
| 删除心愿 | 用户可以删除心愿 |
| 查看心愿 | 用户可以查看心愿 |
| 功能 | 描述 |
|---|---|
| 添加心愿 | 用户可以添加心愿 |
| 编辑心愿 | 用户可以编辑心愿 |
| 删除心愿 | 用户可以删除心愿 |
| 查看心愿 | 用户可以查看心愿 |
| 功能 | 描述 |
|---|---|
| 添加心愿 | 用户可以添加心愿 |
| 编辑心愿 | 用户可以编辑心愿 |
| 删除心愿 | 用户可以删除心愿 |
| 查看心愿 | 用户可以查看心愿 |

