Refactor_202031990423_qianjunqi #94

Open
qianjunqi wants to merge 1 commits from Refactor_qianjunqi into master

Pylint Part

  1. 补充module docstring,即文档顶部的简要说明 (我做的说明很简陋,只是为了通过pylint的检查而为之)
  2. 优化了if-else-return,即删除了不必要的elif或else
  3. 拆分了所有在同一行的模块引用(不同模块的引用需要放在不同行,以便理解和阅读)
  4. 删除了部分没有被使用的引用(有的引用在文件A中被使用了,但import却写在了文件B,且文件B没有使用这些引用,而文件A引用了文件B,导致文件B的所有引用也被A引用,这似乎并不合理)
  5. 修改了引用的顺序(os、random等系统引用应放在自定义模块引用的上方)
  6. 修改了过长的代码,注释除外(每行限制在100个字符以内)
  7. 优化了条件判断的判断符号:
    is和is not 用于判断两个变量是否指向同一个位置
    == 和 !=用于比较两个变量
  8. 为每个py文件添加了"last new line",删除了多余的尾部空行

Pylint提示了但是没有进行的操作:

  1. 将字符串改为f-string的格式
    因为f-string需要python3.6以上的版本,为了防止出现版本问题,故不做修改
  2. 将所有函数内的return内容改为一致的类型
    因为原有的代码逻辑已经确定,修改return的类型会导致方法的无法使用,故不做修改
  3. 将标识符的格式改为"snake_case naming style"
    标识符的修改内容过于庞大,且可能出现程序不可预见的错误,在pylint中重要等级为0,故不做修改

JSLint Part:

  1. 提高代码的可读性:将部分超过80个字符的代码行拆解开(由于文字注释的存在,很多语句仅注释就超过了80个字符,此类型的语句行不做修改)
  2. 用===与!==代替==与!=的判断
  3. 将i++改为i+=1
  4. 分离for循环中的let与var到其他行中,以适应JSLint在循环语句中对var和let的偏好
  5. 给三元表达式外围添加圆括号,避免出现优先级的问题
  6. 将正则表达式修改为JSLint要求的多行模式

疑问:

形如:
for (let i = 0; i < list.length; i+=1) {
的语句,JSLint报错: [JSLint was unable to finish] Unexpected 'let'.
但是网上搜索到的结果是ES6是支持let的使用的,暂且不做修改。

# Pylint Part 1. 补充module docstring,即文档顶部的简要说明 (我做的说明很简陋,只是为了通过pylint的检查而为之) 2. 优化了if-else-return,即删除了不必要的elif或else 3. 拆分了所有在同一行的模块引用(不同模块的引用需要放在不同行,以便理解和阅读) 4. 删除了部分没有被使用的引用(有的引用在文件A中被使用了,但import却写在了文件B,且文件B没有使用这些引用,而文件A引用了文件B,导致文件B的所有引用也被A引用,这似乎并不合理) 5. 修改了引用的顺序(os、random等系统引用应放在自定义模块引用的上方) 6. 修改了过长的代码,注释除外(每行限制在100个字符以内) 7. 优化了条件判断的判断符号: is和is not 用于判断两个变量是否指向同一个位置 == 和 !=用于比较两个变量 8. 为每个py文件添加了"last new line",删除了多余的尾部空行 # Pylint提示了但是没有进行的操作: 1. 将字符串改为f-string的格式 因为f-string需要python3.6以上的版本,为了防止出现版本问题,故不做修改 2. 将所有函数内的return内容改为一致的类型 因为原有的代码逻辑已经确定,修改return的类型会导致方法的无法使用,故不做修改 3. 将标识符的格式改为"snake_case naming style" 标识符的修改内容过于庞大,且可能出现程序不可预见的错误,在pylint中重要等级为0,故不做修改 # JSLint Part: 1. 提高代码的可读性:将部分超过80个字符的代码行拆解开(由于文字注释的存在,很多语句仅注释就超过了80个字符,此类型的语句行不做修改) 2. 用===与!==代替==与!=的判断 3. 将i++改为i+=1 4. 分离for循环中的let与var到其他行中,以适应JSLint在循环语句中对var和let的偏好 5. 给三元表达式外围添加圆括号,避免出现优先级的问题 6. 将正则表达式修改为JSLint要求的多行模式 # 疑问: 形如: for (let i = 0; i < list.length; i+=1) { 的语句,JSLint报错: [JSLint was unable to finish] Unexpected 'let'. 但是网上搜索到的结果是ES6是支持let的使用的,暂且不做修改。
qianjunqi added 1 commit 2023-05-26 22:32:48 +08:00
ea16ea6673 Pylint部分:
1. 补充module docstring,即文档顶部的简要说明 (我做的说明很简陋,只是为了通过pylint的检查而为之)
2. 优化了if-else-return,即删除了不必要的elif或else
3. 拆分了所有在同一行的模块引用(不同模块的引用需要放在不同行,以便理解和阅读)
4. 删除了部分没有被使用的引用(有的引用在文件A中被使用了,但import却写在了文件B,且文件B没有使用这些引用,而文件A引用了文件B,导致文件B的所有引用也被A引用,这似乎并不合理)
5. 修改了引用的顺序(os、random等系统引用应放在自定义模块引用的上方)
6. 修改了过长的代码,注释除外(每行限制在100个字符以内)
7. 优化了条件判断的判断符号:
is和is not 用于判断两个变量是否指向同一个位置
== 和 !=用于比较两个变量
8. 为每个py文件添加了"last new line",删除了多余的尾部空行

Pylint提示了但是没有进行的操作:
1. 将字符串改为f-string的格式
因为f-string需要python3.6以上的版本,为了防止出现版本问题,故不做修改
2. 将所有函数内的return内容改为一致的类型
因为原有的代码逻辑已经确定,修改return的类型会导致方法的无法使用,故不做修改
3. 将标识符的格式改为"snake_case naming style"
标识符的修改内容过于庞大,且可能出现程序不可预见的错误,在pylint中重要等级为0,故不做修改
JSLint Part:
1. 提高代码的可读性:将部分超过80个字符的代码行拆解开(由于文字注释的存在,很多语句仅注释就超过了80个字符,此类型的语句行不做修改)
2. 用===与!==代替==与!=的判断
3. 将i++改为i+=1
4. 分离for循环中的let与var到其他行中,以适应JSLint在循环语句中对var和let的偏好
5. 给三元表达式外围添加圆括号,避免出现优先级的问题
6. 将正则表达式修改为JSLint要求的多行模式

疑问:
形如:
for (let i = 0; i < list.length; i+=1) {
的语句,JSLint报错: [JSLint was unable to finish] Unexpected 'let'.
但是网上搜索到的结果是ES6是支持let的使用的,暂且不做修改。
qianjunqi changed title from Pylint部分: to Refactor_202031990423_qianjunqi 2023-05-26 22:33:53 +08:00

@qianjunqi

Thanks

需要与最新的分支 Alpha-snapshot20230525 同步。

并确保重构后 English Pal 还能够正常运行。

@qianjunqi Thanks 需要与最新的分支 Alpha-snapshot20230525 同步。 并确保重构后 English Pal 还能够正常运行。
This pull request has changes conflicting with the target branch.
  • app/Article.py
  • app/Login.py
  • app/account_service.py
  • app/difficulty.py
  • app/static/js/fillword.js
  • app/static/js/highlight.js
  • app/static/js/word_operation.js
  • app/user_service.py
  • app/wordfreqCMD.py
You can also view command line instructions.

Step 1:

From your project repository, check out a new branch and test the changes.
git checkout -b Refactor_qianjunqi master
git pull origin Refactor_qianjunqi

Step 2:

Merge the changes and update on Gitea.
git checkout master
git merge --no-ff Refactor_qianjunqi
git push origin master
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: mrlan/EnglishPal#94
There is no content yet.