探索未来构建体验:Amper —— 简化项目配置的利器
项目介绍
Amper是一款针对项目配置的创新工具,其目标是提升开发者的配置体验并优化IDE内的工具支持。这个项目旨在通过以下方式来实现这一愿景:
- 提供一个开发者友好且适用于IDE的声明式配置DSL,简化初始设置,并通过IDE自动配置提高维护性。
- 集成一套经过精心挑选的兼容工具链和扩展,以满足大部分场景的需求,无需寻找额外插件。
- 设计恰当的可扩展点,保持一致的抽象思维模型和用户体验,避免第三方代码执行带来的意外问题。
目前,Amper主要关注构建过程中的项目配置,但其理念同样适用于构建、打包、发布等其他领域。尽管目前主要服务于Kotlin和Kotlin Multiplatform项目,但它也支持Java和Swift,有潜力应用于更多语言和技术栈。
项目技术分析
Amper是一个基于Gradle的插件,采用YAML作为项目配置格式。选择Gradle作为基础是为了验证用户体验,利用其成熟稳定的基础提供配置层。它已经实现了以下功能:
- 创建和运行JVM、Android、iOS、Linux和macOS应用
- 构建Kotlin Multiplatform库
- 运行测试
- 混合使用Kotlin、Java和Swift代码
- 支持Compose Multiplatform
- 多模块项目
- 与Gradle互操作
- 兼容Gradle项目布局,便于迁移现有Gradle项目
- 在IntelliJ IDEA和Fleet中为模块清单文件提供代码辅助
未来计划增加的功能包括平台特定测试类型、原生依赖项、版本目录集成等。
项目及技术应用场景
Amper非常适合现代软件开发环境,无论是个人项目还是大型团队协作。它能够简化以下场景:
- 快速启动新的跨平台项目,轻松配置Kotlin、Java或Swift代码
- 安全地在多模块项目中整合不同语言和技术栈
- 对于有多个构建变体和自定义工作流的复杂项目,Amper提供了结构化的配置方法
- 使用Compose Multiplatform构建桌面和移动应用的UI
- 快速原型设计,由于其简洁的配置语法和强大的IDE支持,可以快速迭代和验证想法
项目特点
- 声明式配置:DSL使得配置易于理解和维护,IDE也能提供更强大的代码补全和检查功能。
- 预封装工具链和扩展:减少寻找和配置第三方插件的工作,直接开箱即用。
- 灵活的扩展:允许在保证整体一致性的同时,定制和扩展项目配置。
- 无缝的Gradle互操作性:方便现有的Gradle项目迁移到Amper,保留原有布局。
- 广泛的支持:覆盖多种平台和场景,如iOS、Android、JVM以及Swift。
要开始使用Amper,可以查看项目文档,尝试示例项目,并通过IntelliJ IDEA或JetBrains Fleet进行实际操作。对于现有Gradle用户,也有详细的迁移指南。
如果你在使用过程中遇到问题,欢迎在YouTrack上提交反馈,或者加入Slack频道参与讨论。Amper期待你的参与,一同塑造更好的项目配置体验。