eclipse 中文_谁说API必须用英文?中文API的Java库可以有!

是不是看惯了文档里的英文接口(API),也在 IDE 里看惯了自动补全里的英文接口?

现今的绝大多数 API 的确是英文命名没错,但绝非不能或者不应该实现和发布中文 API 的库。

这里用一个简单的汉字简繁转换库为例。在命名上,API 的方法名、参数名以及类名都用了中文。下面是 Eclipse 中的 Javadoc 弹窗:

6ed8dd4a-1555-4f77-86ab-61fddef2094f

中文 API 的 Java 库,实现汉字的简繁转换。演示在 Eclipse 中的 JavaDoc。

这个 Java 库已经发布到了 Maven 仓库,可以和其他英文 Java 库一样方便地调用。在 GitHub 上搜索”com.github.nobodxbodon”就可以看到不少 pom.xml 文件中依赖了这个库。

现在国内自研的 API 面向的主要用户群应该也是国内开发者。即便仍保留英文 API ,如果能另外提供一套中文的,必然更易于国内开发者学习和使用,也可以吸引更多使用者。即使是额外维护一套中文 API,工作量也很有限,相比起为最终用户带来的益处,可说是相当值得的。

另外,这个库的实现代码中的标识符也都用了中文命名。因为这个库的使用者和潜在合作开发者应该都会中文。下面是其中的一段主要代码:

e3fda83127cb462aa80032c2aa360b8b

使用中文命名标识符的 Java 代码,实现汉字的简繁转换功能

JUnit 测试代码也都使用了中文命名。其中还引用了另一个中文 API 的库,而且那个库的功能非常通用,多半你的 Java 项目也用得到哦。

9d137e62716348dea086a3495bd1b2b1

使用了中文命名标识符的JUnit测试代码,调用了JUnit汉化库

项目源码和库使用方法在:https://github.com/program-in-chinese/zhconverter

更多中文编程推广过程内情,请关注“用中文编程”微信公众号。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/430266.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C# FTP 上传、下载、获取文件列表

public class FtpHelper{string ftpServerIP;string ftpRemotePath;string ftpUserID;string ftpPassword;string ftpURI;/// <summary>/// 连接FTP/// </summary>/// <param name"FtpServerIP">FTP连接地址</param>/// <param name"…

springboot接收json参数_Springboot + Vue + shiro 实现前后端分离、权限控制

小Hub领读&#xff1a;嘿嘿&#xff0c;之前我也发了一篇类似的项目&#xff0c;SpringBootVue的项目&#xff0c;还有视频讲解&#xff0c;如果这篇文章看完不懂&#xff0c;不妨去看看我的视频讲解哈&#xff0c;超级详细&#xff01;太赞了&#xff0c;SpringBootVue前后端分…

python带参数的装饰器_Python-----带参数的装饰器以及补充

带参数的装饰器 def wrapper_out(n): # def wrapper(f): # def inner(*args,**kwargs): # # if n qq: # # username input(请输入用户名&#xff1a;).strip() # # password input(请输入密码&#xff1a;).strip() # # with open(qq,encodingutf-8) as f1: # # for line in…

太极图python自定义函数绘制_[宜配屋]听图阁

效果如下所示&#xff1a;# -*- coding: utf-8 -*- import turtle # 绘制太极图函数 def draw_TJT(R): turtle.screensize(800, 600, "green") # 画布长、宽、背景色 长宽单位为像素 turtle.pensize(1) # 画笔宽度 turtle.pencolor(black) # 画笔颜色 turtle.speed(1…

商业

不出意外锤子要被收购&#xff0c;锤子给大家上了一课&#xff0c;商业首先要满足大众需求 然后在此基础上有更多的追求&#xff0c;品质、设计、优质的软件体验这些都没错&#xff0c;但更重 要的是商业逻辑。先能很好地满足当下的需求&#xff0c;指纹、4g这些明显优先级高的…

ubuntu wps缺少字体_WPS各版本

不敢配图谁需要它使用WPS的各平台用户。PS&#xff1a;阿桑奇被抓了WPS各版本WPS是金山的办公套件。目前有&#xff1a;WPS Office 2019&#xff1b;WPS Office 教育版&#xff1b;WPS Office 2016&#xff1b;WPS for MAC&#xff1b;WPS Office 2019 for Linux&#xff1b;WP…

Android端实时音视频开发指南

简介 yun2win-sdk-Android提供Android端实时音视频完整解决方案&#xff0c;方便客户快速集成实时音视频功能. SDK 提供的能力如下: 发起加入AVClientChannelAVMemberyun2win官网&#xff1a;www.yun2win.com SDK下载地址&#xff1a;http://www.yun2win.com/h-col-107.html 开…

如何设置照片的高度没有滚条_基金定投选几只合适,如何设置止盈止损,有没有好的组合推荐?...

【自荐】萌萌的猪猪侠&#xff1a;一个用自己的语言&#xff0c;自己的感受&#xff0c;自己的实盘分享投资理财的自媒体。【说会话】山色空蒙雨亦奇。住在山脚下就能看到这样美丽的景色。这或许是最近比较好的风景呢。昨天看朋友的朋友圈&#xff0c;朋友的父母没有抗过新冠肺…

Spring开发环境搭建和第一个示例程序

前言 虽然之前用过Spring&#xff0c;但是今天试着去搭建依然遇到了困难&#xff0c;而且上网找教程&#xff0c;很多写的是在web里使用Spring MVC的示例&#xff0c;官方文档里的getting start一开始就讲原理去了&#xff08;可能打开的方法不对&#xff09;。没办法&#xf…

渗透测试流程(单台服务器)

渗透测试流程&#xff08;单台服务器&#xff09; 转载于:https://www.cnblogs.com/sky--/p/5781432.html

python实战项目前后端分离flask_Flask Vue 构建前后端分离的应用

Hello, this is a home page rendered by Jinja2 Template Engine.

windows 7搭建流媒体服务

前言 下了一部几G的高清影片&#xff0c;但是手机的存储卡却只有2G,放不下怎么办&#xff1f;或者电脑里有好几百首歌&#xff0c;移到手机里播放就麻烦了&#xff0c;有没有办法直接播放电脑里的音乐呢&#xff1f;又或者&#xff0c;在床上躺着&#xff0c;想要控制电脑里的歌…

spring depends-on 不起作用

beans-realation.xml <?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http://www.springframework.org/schema/beans"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xmlns:p"http://www.springframework…

使用Jedis源码生成Jedis.jar

前言 现在github上很多项目都使用maven工程来发布&#xff0c;没有jar包&#xff0c;所以下载下源码之后&#xff0c;还要自己打包成jar包形式以便引用。这个文档可以简略描述打包的过程 打包步奏 首先要在电脑上安装Maven并且安装eclipse Maven插件打开Eclipse&#xff0c;Fi…

python break跳出外层_失去循环标记的Python,我这样实现跳出外层循环

不完美的Python 自从各类Python大火&#xff0c;感觉天上地下哪儿都有Python的一席之地&#xff0c;Python功夫好啊…但python有些细节上缺少其他语言的便利。今天我们就来举几个例子。 跳出外层循环 大家都知道&#xff0c;在Java中存在标签的概念&#xff0c;当我们存在多层循…

获取toast值

/** * 获取Toast的String值 * return */ public String getToast(int timeout){ TextView toastTextView null; String toastText ""; long endTime SystemClock.uptimeMillis() timeout; while(SystemClock.uptimeMillis() < endTime){ toastTextView (Text…

Redis windows学习(一)——redis安装和基础使用

前言 最近做项目时&#xff0c;打算用Redis做缓存服务器&#xff0c;于是研究了一下Redis。由于项目是在windows下&#xff0c;也不打算开个虚拟机&#xff0c;所以就直接安装在windows下。虽然&#xff0c;Redis官网并不提供windows版本&#xff0c;但还是指明了可以在微软开…

button 隐藏属性_PyQt5实现仿QQ贴边隐藏功能!有点意思

此程序大致功能为&#xff1a;可变换颜色&#xff0c;贴边隐藏。变换颜色思路QPalette( [ˈplət] 调色板)类相当于对话框或控件的调色板&#xff0c;它管理着控件或窗体的所有颜色信息&#xff0c;每个窗体或控件都包含一个QPalette对象&#xff0c;在显示时按照它的QPalette对…

query的list()和iterate()区别 面试题

query的list()和iterate()区别 1.返回的类型不一样&#xff0c;list返回List&#xff0c;iterate返回iterator 2.查询策略不同。 获取数据的方式不一样&#xff0c;list会直接查询数据库&#xff0c;iterate会先到数据库中把id取出来&#xff0c;然后真正要遍历某个对象的时候…

Redis windows学习(二)——Redis持久化的AOF模式和RDB模式

AOF和RDB是什么 Redis进行操作时&#xff0c;有两种方式将操作的结果保存下来。一种是将结果以快照的方式保存在二进制文件中&#xff08;默认叫&#xff1a;dump.rdb* &#xff09;&#xff0c;这就是RDB模式&#xff0c;另一种是将操作的命令追加到一个记录文件里&#xff0…