Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
K
kb
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 2
    • Issues 2
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • Operations
    • Operations
    • Incidents
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • granite
  • kb
  • Wiki
    • Code review
  • 裁判文书

Last edited by 蒋家升 Sep 10, 2021
Page history

裁判文书

code review总结

基于此版本代码review (dev_court_notice分支,裁判文书相关代码)

设计

  • 模块/策略解耦
    • 复杂/不易理解的方法(动态条件)写详细点注释,包括流程等(可附上流程图链接)
  • kiss: keep it sample stupid / 简单明了让人读懂
  • 避免过度使用设计模式
  • 方法传参,为方便不要影响单元测试,尽量细化简化(不要传resp,而实际里面只用到resp.text,使单元测试时又要额外创建resp去测试)

代码

  • class名不使用动词
    • Decrypt-> RespDecryptor ? WenshuDecryptor
    • Dynamic-> DynamicPlugins
    • Compress-> Compressor
  • 规范驼峰命名?(保持响应data一致的表达,待思考)
  • 变量强类型,尽量让IDLE能检测/暴露出来(FieldMap)

scrapy

  • settings相关,dev控制人为问题 -> (尝试)实践sys读DEV变量 (可作后续CI/CD检测点之一)
  • 用新框架basespider后,去掉_make_request_from的baidu请求的try catch兜底
  • result_item由头传到尾优化-> 存初始meta用到的参数即可
  • 无关代码清理 eg.去掉meta的proxy
  • cookies_manager。。。的各种问题

流程

  • data_pump
    • init 初始化单次,init里的task_handler实例化后无法改kind -> (1,get_task不绑定实例化,优化至随feeding喂的data而变 ; 2,用popitem取task_params,扩展task_params)
  • 流程图存jpg格式放doc目录,参考gravel
Clone repository
  • README
  • basic_guidelines
  • basic_guidelines
    • basic_guidelines
    • dev_guide
    • project_build
    • 开发流程
  • best_practice
  • best_practice
    • AlterTable
    • RDS
    • azkaban
    • create_table
    • design
    • elasticsearch
    • elasticsearch
      • ES运维
    • logstash
View All Pages