
本篇内容旨在介绍 Perigon.CLI 的功能特性、应用价值和技术选型,帮助开发者快速评估其适用性并做出明智决策。
perigon是peregrine的简化形式,意为游隼,一种速度极快的猛禽,象征着高效和敏捷。同时perigon自身包含“全景”的含义,寓意该工具致力于提供全面的开发支持,助力开发者高效构建应用。
从技术实现角度,它是一个基于 .NET 生态的工具,通过 NuGet 包管理器分发。
从功能特性来看,它提供以下核心能力:
简而言之,Perigon.CLI 以解决方案模板为基础,通过自动化代码生成,助力开发者高效完成业务开发任务。
Perigon.CLI 的核心价值在于解决软件开发中的常见痛点,提升整体开发效率:
在此基础上,工具还支持自定义代码生成,并集成 MCP Server,实现 IDE 内自然语言驱动的代码生成。
其根本目的是提供一套基础框架和工具集,助力开发者快速构建后端服务和前端应用。主要目标包括:
最终实现的效果是:开发者工作更高效,代码编写更愉悦,业务需求快速落地,显著降低开发成本和风险。
尽管 Perigon.CLI 致力于采用主流通用技术解决多数开发场景,但不能满足所有人的需求或偏好。
如果您的项目符合以下任一条件,Perigon.CLI 可能无法满足需求:
具体说明如下:
综上所述,采用默认模板结构和技术栈,可最大化利用内置代码生成功能,提升开发效率。
Note
项目模板本质为 ASP.NET Core Web API 项目,不限制任何库或开发模式。为避免复杂性,我们选择通用高效方案,并提供默认代码生成选项。
Important
可通过自定义代码生成实现基于其他 ORM 或设计模式的生成功能,完全绕过内置功能,但需自行配置并承担相关技术风险。请参考[高级主题]相关文档。
Perigon.CLI 的核心特点在于其通用性和灵活性,具体体现如下:
指模板默认包含的第三方库:
指运行组件,通过 Aspire 集成,默认不会包含在模板中,通过 ToolKit 提供。
在面向对象编程中,我们通过类和接口对现实或抽象事物进行建模,定义事物及其关系。无论是业务逻辑、数据访问,还是后端服务、前端应用,皆围绕这些事物展开。
实体的定义是开发的中心起点,从实体定义逐步扩展至代码各层面。
代码生成功能利用 Roslyn 分析实体,自动生成 DTO 定义、数据库查询、接口服务等代码。
在前后端交互及服务通信中,OpenAPI 规范描述接口,支持生成多语言客户端代码。
这确保实体中定义的名称、注释及特性贯穿整个生成流程,维护一致性,减少错误。
实际开发中,除代码编写外,还涉及环境搭建、配置调试、测试、文档编写及客户端对接,这些“非代码”工作耗费大量精力。
我们倡导回归代码本质,专注业务逻辑实现,减少外围工作。因此推荐:
后端开发可概括为以下步骤:
关系图如下:
graph TD;
Entity[实体定义]
Dto[Dto]
Controller[API]
Manager[Manager]
Entity-->|生成|Dto;
Entity-->|生成|Manager;
Entity-->|生成|Controller;
DTO/Manager/Controller 关系:
graph RL;
Dto[Dto]
Controller[API]
Manager[Manager]
Manager-->|使用|Dto;
Controller-->|调用|Manager;
Controller-->|使用|Dto;
代码生成可一键生成上述内容,实现基础 CRUD 功能,提供可用 API。开发者可在基础上扩展。
我们避免过度讨论设计模式或开发理论。开发应面向客户需求与业务结果,而非模式本身。
关键在于能否快速满足客户需求,实现业务目标。
需强调,快速开发不等于低质量代码。相反,低质量代码会降低效率与质量。快速意味着在良好架构基础上,利用工具生成规范代码,专注业务逻辑,避免模式争议。