注: 文后的索引为2018-07-16知乎"中文编程"专栏的最新内容. 尚未决定是否将之后的文章在知乎和简书同时发布.
在中文编程专栏开通之际, 略述个人对它的理解. 无疑这是个非常有争议的论题. 在下才疏学浅, 若非自认为看到明确的市场需求和已近成熟的时机, 也不敢斗胆出头. 道理不辨不明, 非常欢迎各位的批评指点.
经过三个多月的集体探讨, 初步将中文编程的几个方面罗列如下. 各个方面相辅相成, 没有高低之分. 如有遗漏还请多多指正.
以中文命名
即在代码中将业务相关的部分用中文命名. 包括类/接口名, 变/常量, 方法名, 数据库中的表/列名等等. 它的意义在于, 提升代码可读性, 降低维护成本. 风险是, 代码风格需要总结, 第三方库对Unicode支持不佳, 系统编码不一致等等. 优势是, 不需依赖任何外部工具, 在支持中文命名的语言中可以立刻实施.
汉化现有库/框架的接口(API), 翻译其相关文档
上一项虽然已经包括了使用中文命名接口, 但现有的大量库和框架仍有视情况汉化的价值. 意义在于, 接口更易于学习和使用, 同样增加业务代码可读性. 风险是, 需要谨慎选择库, 确保汉化和维护的工作量可控; 另外, 统一术语用词也是挑战. 优势是, 技术门槛较低, 易于团队分工.
将现有编程语言的语法进行汉化
包括汉化关键词, 內建函数甚至核心库等. 意义在于, 汉化后的语言对新手更友好; 反思关键词意义; 对设计新语言提供借鉴; 积累编译器实现经验等. 风险是, 维护的工作量; 关键词推敲等. 优势是, 有不少已有的尝试可以借鉴.
改进现有的, 以及创立新的中文编程语言及对应的开发集成环境
包括改进现有的IDE对英文编程语言中使用中文代码的支持). 意义不言自明. 风险是, 需要和所有主流编程语言竞争. 优势是, 中文是我们的母语.
希望认识对中文编程任何方面有兴趣和经验的同好, 为推进中文编程的切磋, 实战, 推广和市场化群策群力, 望各位多多进言, 踊跃投稿!
下面是本专栏的文章分类, 以及其他相关的知乎文章(开头带*), 排序无先后
综述
*发展中文编程的意义:让大众化编程促进软件产业的建设
中文编程兴起的必然性
中文编程兴起的可能途径
中文编程的迷思
汉化了十数个编译器的前辈的心得体会
中文编程专栏月报:2017年11月
中文编程专栏月报:2017年12月
中文编程专栏月报:2018年1月
中文编程专栏月报:2018年2月
中文命名
对在代码中使用中文命名的质疑与回应
在各种编程语言中使用中文命名
用中文命名API的意义和途径
中英文代码对比系列之Java一例
中文代码示例之Vuejs入门教程(一)
中文代码示例之Angular入门教程尝试
在Maven Central发布中文API的Java库
中文命名实践的阻力和应对
中文代码示例教程之Java编程一天入门
中文代码示例之Vuejs入门教程(一)问题后续
在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和火狐浏览器编写扩展
汉化现有编程语言
为clang添加中文关键字
为Python添加中文关键字
如何使GCC支持中文(utf-8)的变量名、函数名?
为GCC添加中文关键字
Java关键字的汉化用词探讨
5分钟入门CTS-尝鲜中文版TypeScript
语言/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"一书摘记之一
从人机交互角度看中文编程:'打开微信'