使用Github Copilot完成代码编写
上篇文章,我们使用VSCode创建了T.Global解决方案和两个类库工程,接下来我们使用Github Copilot完成代码编写
先说以下业务需求:
- 提供一个公共的本地化组件,支持对数字、货币、时间、日期、度量衡单位、排序的在不同区域下的处理。
一、新建一个II18NService接口
这里我们使用了以下Prompt
VSCode中,请帮我在T.Core.i10n.SPI工程下新增接口Ii10nService.cs,这个接口中包含以下方法DoubleToString(double value),DecimalToString(decimal value),FloatToString(float value),DateTimeToString(DateTime time)

GitHub Copilot返回的建议是

请把Ii10nService接口中每个方法增加一个多态方法,这个多态方法增加一个参数CultureInfo,请重新给出Ii10nService接口的代码

请为每个方法增加注释

二、新增度量衡服务接口
这里,给到Github Copilot的Prompt:
请再新增一个度量衡服务接口,IMeasurementService.cs, 这个接口中包含以下方法:转换为英寸、转换为英里、转换为英尺,转换为厘米,转换为千米,转换为公里,转换为克,转换为千克,转换为功率,转换为电流,转换有电压等方法,接口和每个方法请添加注释

三、新增一个排序服务类SortService.cs
这里,给到Github Copilot的Prompt:
请再新增一个排序服务类,SortService.cs, 这个类中增加对.NET 各类集合的排序扩展方法,比如说List的扩展排序方法,支持按当前CultureInfo.CompareInfo进行排序

四、VSCode中在工程T.Core.i10n.Service中,添加对T.Core.i10n.SPI的引用
Prompt:VSCode中,如何在工程T.Core.i10n.Service中,添加对T.Core.i10n.SPI的引用

五、 新增一个类MeasurementService.cs
Prompt:在T.Core.i10n.Service工程下新增一个类MeasurementService.cs,这个类是对IMeasurementService接口的实现,每个方法的实现中,请先获取当前的CultureInfo,基于CultureInfo的内容实现方法的逻辑,输出的代码中请带着详细的注释

六、新增一个类I10nService.cs,这个类是对III10nService接口的实现
Prompt:在T.Core.i10n.Service工程下新增一个类I10nService.cs,这个类是对III10nService接口的实现,每个方法的实现中,如果方法中没传人CultureInfo参数,请先获取当前的CultureInfo,基于CultureInfo的内容实现方法的逻辑,输出的代码中请带着详细的注释,

使用Github Copilot完成代码编写的更多相关文章
- Github Copilot 比在座各位更会写代码。jpg
之前大佬和我安利过 Copilot, 作为一个能用就行的践行者, 我一贯对这些东西都不太感兴趣. 就如我多年VS Code写各种编程语言, jetbrains 全家桶我都懒得搞~ 不过最近看到过Cha ...
- Core 第三组 结对作业——四则运算 Part1. Core代码编写
结对作业——四则运算 Part1. Core代码编写 PB15061303 刘梓轩PB16061489 艾寅中 GITHUB 地址 戳这里 目录 (因为内容较多,分为了三个部分,但作业系统中只能提交一 ...
- NASA的10条代码编写原则
NASA的10条代码编写原则 作者: Gerard J. Holzmann 来源: InfoQ 原文链接 英文原文:NASA's 10 Coding Rules for Writing Safety ...
- Github Copilot 结合python的使用
之前提交的github copilot技术预览版申请,今天收到准入邮件,于是安上试一试这个准备把我送去电子厂上班的copy a lot ? 官网及申请地址:https://copilot.github ...
- 为代码编写稳定的单元测试 [Go]
为代码编写稳定的单元测试 本文档配套代码仓库地址: https://github.com/liweiforeveryoung/curd_demo 配合 git checkout 出指定 commit ...
- GitHub + VSTS 开源代码双向同步
GitHub已经是全球开源代码的大本营了,通过以下统计你可以看到仅仅javascript在github就有超过32万个活动的repo.很多开发人员都会把自己的一部分代码分享到github上进行开源,一 ...
- 【iOS 使用github上传代码】详解
[iOS 使用github上传代码]详解 一.github创建新工程 二.直接添加文件 三.通过https 和 SSH 操作两种方式上传工程 3.1https 和 SSH 的区别: 3.1.1.前者可 ...
- 使用Spring注解来简化ssh框架的代码编写
目的:主要是通过使用Spring注解的方式来简化ssh框架的代码编写. 首先:我们浏览一下原始的applicationContext.xml文件中的部分配置. <bean id="m ...
- VS开发中的代码编写小技巧——避免重复代码编写的几种方法
上一篇文章中程序员的幸福生活--有你的日子,每天都是情人节,收到了大家的很多好评.鼓励和祝福,非常感动,真诚的谢谢大家.也希望每个朋友都能保持一个积极向上的心态,去迎接丰富多彩的人生. 在开发过程中, ...
- IOS 推送-配置与代码编写
IOS 推送配置与代码编写 这里介绍IOS的推送,本文章已经在IOS6/7/8上都能运行OK,按照道理IOS9应该没问题. 大纲: 1.文章前提 2.推送介绍 3.推送文件账号设置 4.推送证书介绍 ...
随机推荐
- 了解O2OA(翱途)开发平台中的VIP应用
使用O2OA(翱途)开发平台可以非常方便地进行项目的业务需求开发与实施,O2OA(翱途)开发平台并不限制实现的系统类型,所以能实现的系统很多,最终呈现的项目成果也是多样性的,可能是OA系统,可能是人力 ...
- 使用Githud 实现分发IPA包遇到的坑
最近要用到测试包分发,首先想到了,蒲公英,但是把包扔上去,扫描下载的时候发现,现在需要用户登录才能下载,弃了. 又跑到fir ,发现还得实名才能用,还得上传各种证件照,而且好像每天只有10个下载量,. ...
- 简单认识Promise
什么是Promise Promise是异步编程的一个解决方案:从语法上讲它是一个对象,可以获取到异步操作的消息,从本意上讲,它是一个承诺,承诺过一段时间后它会给你一个结果.Promise有三种状态:p ...
- sensor有点意思之RCCB传感器
1.RCCB sensor 无意中看到一种特殊规格的传感器,RCCB (Red-Clear-Clear-Blue)sensor,第一次听到这个名词,咱不知道就查一查,检索到RCCB sensor是一种 ...
- Flutter ncnn 使用
Flutter 实现手机端 App,如果想利用 AI 模型添加新颖的功能,那么 ncnn 就是一种可考虑的手机端推理模型的框架. 本文即是 Flutter 上使用 ncnn 做模型推理的实践分享.有如 ...
- 初始elasticSearch
elasticSearch 大致印象 为什么用? mysql更擅长于crud等操作,当一张表达到百万级别时,检索速度过慢 es检索速度快 基本概念 Index索引(两层意思) 动词:类似mysql的i ...
- boinc使用笔记
安装 yum install -y epel-release yum install -y boinc-client boinc-manager 启动 在图形界面开启终端 boinc boincmgr
- 【go语言】2.3.1 错误处理的基本概念
在 Go 语言中,错误处理是通过返回错误值进行的,而不是像一些其他语言那样通过抛出和捕获异常.Go 语言有一个内置的接口类型 error,专门用于处理错误. error 接口 error 是一个内置的 ...
- 微服务性能分析工具 Pyroscope 初体验
Go 自带接口性能分析工具 pprof,较为常用的有以下 4 种分析: CPU Profiling: CPU 分析,按照一定的频率采集所监听的应用程序 CPU(含寄存器)的使用情况,可确定应用程序在主 ...
- jQuery真伪数组转换
// 真数组转伪数组 [].push.apply(obj,arr); // 伪数组转真数组 [].slice.call(obj);