menzi11 / BullshitGenerator

Needs to generate some texts to test if my GUI rendering codes good or not. so I made this.
Other
15.69k stars 2.88k forks source link

[Cross-Remote PR] Python code quality improv #207

Open recolic opened 3 years ago

recolic commented 3 years ago

Python版代码存在以下可以提高的地方:

  1. data.json里面中英文标点符号混用,格式不标准。
  2. 可能在段落末尾生成重复的句号,或者逗号加句号(一个bullshit立即跟上paragraph结束)。
  3. 中文变量名使得开发困难。
  4. 部分代码逻辑多余。

由于我使用gitlab开发另一个无关项目,因此将可能的改进放在附件里。如果感觉有用可以直接 git apply 1.patch进行merge,或者跨remote进行merge:

git remote add recoliclab https://git.recolic.cc/root/chinese-obfs.git
git fetch recoliclab
git merge recoliclab/for-pull-request

预览我修改后的代码: https://git.recolic.cc/root/chinese-obfs/-/tree/for-pull-request

patch文件:

1.log

nobodxbodon commented 3 years ago

既然是面向中文开发者社区的项目,代码使用母语命名,可读性更有优势: Screen Shot 2021-04-30 at 2 33 29 AM

中文标识符补全辅助插件:

recolic commented 3 years ago

我个人认为这种命名降低了可读性(因为与程序员的编码习惯严重不符),并且在编码过程中切换输入法并不是一个聪明的做法。

更何况,在一些linux vps的shell环境下,terminal或者服务器上的shell可能完全不支持编辑unicode字符。utf8和gb18030两种编码标准的切换也徒增复杂度。

by the way,我在开发一个新的chinese-obfs工具,可以提取你们认为比较有用的fix来merge(例如data.json里面的标点符号真的太乱了。。。)。对于这个PR我是很随意的)

希望能帮到你们。

recolic commented 3 years ago

data.json (https://git.recolic.cc/root/chinese-obfs/-/blob/for-pull-request/data.json )的更新应该是有帮助的)

nobodxbodon commented 3 years ago

上面两个 IDE 插件可以避免多数输入法切换。 就像你回复里中英混杂大家看得懂,用中文标识符的代码也类似,习惯就好了。 为了支持极少数使用场景而改用第二语言命名(暂不讨论英文命名是否达到了与中文命名同样的恰当程度),得不偿失。