关于应用程序
OrderNow 是一个移动电子商务应用的最小可行产品(MVP)示例,我们将在本书中设计和实现它。
实现一个电子商务解决方案将使我们更接近准确和生产力应用所需的挑战。
以下是我们将在 OrderNow 中开发的领先电子商务功能
• 显示类别列表。
• 按类别显示产品列表。
• 显示特定产品的详细信息。
• 在购物车中管理产品(添加或删除)。
• 查看选择购买的产品列表。
• 填写信息和数据以进行购买(结帐)。
• 模拟付款过程。
屏幕与不同功能相关的屏幕将是:
• 首页(Home)
• 产品列表(Product List)
• 产品详情(Product Detail)
• 购物车(Cart)
• 结帐(Checkout)
• 下订单(Place order)
主页,产品列表和产品详细信息:
购物车和结帐:
下订单 :
技术
本节总结了OrderNow的技术特征,以便了解在实现中使用的工具和设计指南。
我们可以自由决定替换或包括一些他们有经验或感觉舒适的其他工具。
设计和架构指南
在设计原则和应用架构中,记录了设计和架构指南,即最小可行架构(Minimum Viable Architecture, MVA)。
架构组件
Compose:这是我们在表示层实现声明式View的框架
ViewModel:我们将在表示层使用的架构组件,用于封装业务逻辑。
Flow:我们将在应用程序中使用Flow Coroutines进行响应式编程。
Flow将允许应用组件之间的消息(无论是同步还是异步)以最优的方式进行。
Navigation:我们将用来实现应用中不同屏幕导航的架构组件。
依赖项:
Coil: 我们使用一个库来在我们的应用程序中加载远程或本地图片,通过Kotlin并支持Jetpack Compose。
注:一些主题被排除,不是因为他们不重要,而是未来缩小范围并实现特定的目的。
尝试在Android应用程序中涵盖所有相关主题可能会过度扩展内容,并使我们偏离一开始就应该明确的主要概念。
以下功能不包括在内,这些功能不在 MVP 示例的范围之内:
• UI/UX 设计指南。
• 身份验证和授权组件。
• 测试。
• 辅助功能。
这篇文章总结了用于实现 OrderNow 的技术和组件。我们不仅将拥有源代码并尝试猜测它是如何构建的,而且还知道在实现的设计和技术级别做出的每个决策。在下一篇中,我将介绍示例应用程序中的体系结构和设计决策。