经过三个多月的集体探讨, 在中文编程专栏开通之际, 将中文编程的几个方面罗列如下. 各个方面相辅相成, 没有高低之分.
- 以中文命名. 即在代码中将业务相关的部分用中文命名. 包括类/接口名, 变/常量, 方法名, 数据库中的表/列名等等. 它的意义在于, 提升代码可读性, 降低维护成本. 风险是, 代码风格需要总结, 第三方库对Unicode支持不佳, 系统编码不一致等等. 优势是, 不需依赖任何外部工具, 在支持中文命名的语言中可以立刻实施.
- 汉化现有库/框架的接口(API), 翻译其相关文档. 上一项虽然已经包括了使用中文命名接口, 但现有的大量库和框架仍有视情况汉化的价值. 意义在于, 接口更易于学习和使用, 同样增加业务代码可读性. 风险是, 需要谨慎选择库, 确保汉化和维护的工作量可控; 另外, 统一术语用词也是挑战. 优势是, 技术门槛较低, 易于团队分工.
- 将现有编程语言的语法进行汉化. 包括汉化关键词, 內建函数甚至核心库等. 意义在于, 汉化后的语言对新手更友好; 反思关键词意义; 对设计新语言提供借鉴; 积累编译器实现经验等. 风险是, 维护的工作量; 关键词推敲等. 优势是, 有不少已有的尝试可以借鉴.
- 改进现有的, 以及创立新的中文编程语言及对应的开发集成环境(这里包括改进现有的IDE对英文编程语言中使用中文代码的支持). 意义不言自明. 风险是, 需要和所有主流编程语言竞争. 优势是, 中文是我们的母语.
希望认识对中文编程任何方面有兴趣和经验的同好, 为推进中文编程的切磋, 实践, 推广和市场化群策群力. 望各位多多进言, 踊跃投稿!
下面是本专栏的文章分类, 以及其他相关的知乎文章(开头带*), 基本按照发文时间先后排序.
更新日期: 2018/12/04
综述
- * 发展中文编程的意义:让大众化编程促进软件产业的建设
- 中文编程兴起的必然性
- 中文编程兴起的可能途径
- 中文编程的迷思
- 汉化了十数个编译器的前辈的心得体会
- 中文编程专栏月报:2017年11月
- 中文编程专栏月报:2017年12月
- 中文编程专栏月报:2018年1月
- 中文编程专栏月报:2018年2月
- 万马齐喑究可哀-中文编程的又一波”讨论”
- 最近一波对中文编程(包括中文命名)的攻势
- 又见套路:如果计算机是用中文编程,你能成为计算机编程专家吗?
- 中文编程讨论组一岁了
- 中文编程讨论组(GitHub)社区守则一周年修订
- 首次发现在例程中使用日语命名的编程书籍
- 它山之石-日本推广编程中使用日语命名的渊源
- 初步尝试将传统学科的内容程序/数据化
- 专栏一岁了-我为什么投身于普及用中文编程
- 用中文编程-专栏初衷回顾
- 专栏全年主题合辑-中文编程语言开发尝试
- 专栏全年主题合辑-代码中文命名相关实践
中文命名
- 对在代码中使用中文命名的质疑与回应
- 在各种编程语言中使用中文命名
- 用中文命名API的意义和途径
- 中英文代码对比系列之Java一例
- 中文代码示例之Vuejs入门教程(一)
- 中文代码示例之Angular入门教程尝试
- 在Maven Central发布中文API的Java库
- 中文命名实践的阻力和应对
- 中文代码示例教程之Java编程一天入门
- 中文代码示例之Vuejs入门教程(一)问题后续
- 中文代码示例之Spring Boot 1.3.3演示
- 在LeetCode中的解答中使用中文命名
- 在线编程网站对中文代码的支持
- Python3选择支持非ASCII码标识符的缘由
- 编写Visual Studio Code插件初尝试
- 中文代码示例之5分钟入门TypeScript
- FriceEngine试用与API中文化
- 手机编程环境初尝试-用AIDE开发Android应用
- 浅尝The Little Prover一书, 重逢Chez Scheme
- History in Threads: 火狐插件实现浏览历史按主题显示(树)
- 中文代码示例之冒泡算法, 后感
- 中文代码示例[译]Scala中创建隐式函数
- 项目/教程中使用母语命名的”问题”
- 带空格的中文编程都是垃圾
- 搭建Python官方文档翻译环境
- 代码考古-Python3官方教程字典例程
- 中文代码示例视频演示Python入门教程第三章 简介Python
- 中文代码示例视频演示Python入门教程第四章 控制流
- 中文代码示例视频演示Python入门第五章 数据结构
- 解谜计算机科学第一章示例汉化尝试
- “西游记”主题Python入门示例尝试-数据结构 5.1-5.1.2
- 为Chrome和火狐浏览器编写扩展
- 在代码中进行中文命名(类/变量/方法等)的优势
- 对DLL库中的接口进行中文命名
- 中文代码示例之Python-如何遍历字典
- 在Office的VBA代码里中文命名
- 中文代码示例之Spring Boot 2.0.3问好
- Head First OO分析设计一书略读与例子中文化
- 中文代码之Spring Boot实现简单REST服务
- 中文代码之Spring Boot添加基本日志
- [转载]手机编程与AIDE
- 中文代码之Spring Boot集成H2内存数据库
- 为中文API的简繁转换库添加迟到的持续集成
- 中文代码之Spring Boot对H2数据库简单查询
- 使用JDT核心库解析JDK源码后初步分析API命名
- 浏览器插件实现GitHub代码翻译原型演示
- Java实现英汉词典API初版发布在Maven
- 使用现有在线翻译服务进行代码翻译的体验
- 代码翻译尝试-使用Roaster解析和生成Java源码
- Java源码英翻中库以及服务原型
- 用Python3+tkinter开发简单图形界面程序
- [日常]用Python读取word文档中的表格并比较
- Java源码英翻中进展-内测上线
- 在浏览器插件中读取JSON资源文件
- 浏览器插件-离线英汉词典
- Chrome插件实现GitHub代码翻译v0.0.3
- Chrome插件实现GitHub代码离线翻译v0.0.4
- 前端会用标签模板(Tagged Templates)就能当股神
- 浏览器插件-离线英汉词典 0.0.7
- 在线代码离线翻译Chrome插件”一马”v0.0.8
- 在代码中进行中文命名实践的短期目标
- 在线代码离线翻译Chrome插件”一马”v0.0.14
- Visual Studio Code插件-英汉词典初版发布
- VS Code英汉词典插件v0.0.4-驼峰下划线命名
- 中文代码示例之Programming in Scala学习笔记第二三章
- 中文代码示例之Programming in Scala笔记第四五六章
- 手工翻译Vue.js源码第一步:14个文件重命名
- 手工翻译Vue.js源码:尝试重命名标识符与文本
- 中文代码示例之Programming in Scala笔记第七八章
- 中文编程,最精致的python访客登记系统实例项目,微信机器人不再只当人工智障——01
- 中文编程,最精致的python访客登记系统实例项目,微信机器人不再只当人工智障——02
- 中文编程,最精致的python访客登记系统实例项目,微信机器人不再只当人工智障——03
- 中文编程,最精致的python访客登记系统实例项目,微信机器人不再只当人工智障——04
- VS Code英汉词典插件v0.0.6-改为TS实现, 加测试
- 中文编程,最精致的python访客登记系统实例项目,微信机器人不再只当人工智障——05
- 中文编程,用python编写小说网站爬虫
- 中文编程,最精致的python访客登记系统实例项目,微信机器人不再只当人工智障——06
- VS Code英汉词典插件v0.0.7-尝试词性搭配
汉化现有编程语言
- 为clang添加中文关键字
- 为Python添加中文关键字
- 如何使GCC支持中文(utf-8)的变量名、函数名?
- 为GCC添加中文关键字
- Java关键字的汉化用词探讨
- 5分钟入门CTS-尝鲜中文版TypeScript
- 在WSL上编译OpenJDK10
- 改造JAVA,给OpenJDK10添加中文关键词
- 中文关键词替换体验页面原型
- 修改V8和node.js建立中文后端开发工具
语言/IDE设计, 实现, 与推广
- 开源非英文关键词编程语言
- 日语编程语言"抚子" – 第三版特色初探
- * 中文编程不仅语言重要,生态环境也重要
- * 用实例来看中文编程代码输入效率问题
- 国人创造中文编程语言的优势
- 编程语言试验之Antlr4实现"圈2"
- 中文编程语言之Z语言初尝试: ZLOGO 4
- 中英文代码对比之ZLOGO 4 & LOGO
- 编程语言试验之Antlr4+JavaScript实现"圈4"
- JavaScript实现ZLOGO子集: 前进+转向
- JavaScript实现ZLOGO子集: 单层循环功能
- JavaScript实现ZLOGO子集: 测试用例
- 日语编程语言"抚子"-第三版实现初探
- 为新语言编写Visual Studio Code语法高亮插件
- JavaScript实现ZLOGO: 用语法树实现多层循环
- 烂尾工程: Java实现的汇编语言编译器
- 通用型的中文编程语言探讨之一: 高考
- Antlr4的分析错误处理
- Antlr4实现数学四则运算
- Antlr4添加中文变量赋求值,括号,各种问题
- Antlr4: 修改语法规则更接近普通BNF格式
- Antlr4实现简单语言之整数比较表达式
- Xtext试用: 快速实现简单领域专用语言(DSL)
- Xtext试用: 5步实现一个(中文)JVM语言
- AppleScript类自然语言与非英语语法设计
- 编程猫IDE体验:对Scratch的改进
- Antlr4实现简单语言之条件语句
- “Literate Programming”一书摘记之一
- 从人机交互角度看中文编程:’打开微信’
- Z中文编程创新突破1-把Z语句分析生成C#函数
- 中文编程Z语言设计思想
- Z语言实现基本原理
- re:从中美文化差异看编程的发展方向
- 用elixir实现一个简单的中文语句解析