使用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.推送证书介绍 ...
随机推荐
- C++ 核心指南之资源管理(下)—— 智能指针最佳实践
C++ 核心指南(C++ Core Guidelines)是由 Bjarne Stroustrup.Herb Sutter 等顶尖 C+ 专家创建的一份 C++ 指南.规则及最佳实践.旨在帮助大家正确 ...
- MODBUS RTU转 EtherNet/IP 网关连接森兰变频器与欧姆龙系统通讯
捷米特JM-EIP-RTU(Modbus转Ethernet/Ip)网关,用于将多个 MODBUS 从站设备接入 ETHERNET/IP 主站网络,实现 MODBUS 转 ETHERNET/IP 功 ...
- Java版人脸跟踪三部曲之一:极速体验
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 关于<Java版人脸跟踪三部曲>系列 -& ...
- 从钢铁行业数字化管控与超自动化融合,看华为WeAutomate能力进化
文/王吉伟 钢铁行业的数字化转型,历来都是值得探讨的热点话题. 2022年,我国粗钢产量10.13亿吨,占据了全球钢铁供给市场的半壁江山. 这组数据可谓非常抢眼,但仍旧难掩诸多企业的各种经营问题. 钢 ...
- 响应式编程:Vert.x官网学习
本文基于 Vert.x 官网 https://vertx.io/ 内容,带领大家学习响应式编程里比较有名的工具包 Vert.x .文章内容取自官网由博主简化总结,希望帮助大家理解响应式编程. Vert ...
- Acunetix使用说明
简述 Acunetix是一种应用安全性扫描工具,旨在帮助发现和修复Web应用程序中的漏洞和安全风险. Acunetix可以发现以下一些常见的安全问题: 跨站脚本攻击(XSS):通过在网页中注入恶意脚本 ...
- 详解在Linux中修改Tomcat使用的jdk版本
问题分析 由于部署个人项目使用了openjdk11,但是我之前安装的是jdk1.8,jdk版本升级的后果就是,tomcat运行的时候报一点小bug(因为之前安装tomcat默认使用了系统的jdk版本) ...
- Python安装time库失败?不是吧阿sir你还不知道内置模块不用下载吧
嗨嗨,今天给python安装time库,一直报错,换源等办法都试过了 直到我看到 Python中有以下常用模块不用单独安装 random模块 sys模块 time模块 os系统操作 re正则操作 js ...
- Git子模块使用说明
介绍 前端不同应用存在公共的脚本或样式代码,为了避免重复开发,将公共的代码抽取出来,形成一个公共的 git 子模块,方便调用和维护. 软件架构 本仓库代码将作为 git 子模块,被引用到其他仓库中,不 ...
- 利用shell脚本交互式运行jar任务
如题,废话不多说,直接上代码: #!/bin/bash APP_PATH=/root/bigdata/neural_networks/width_control_model/predict/uploa ...