Skip to content

Commit 496738b

Browse files
committed
add http traffix tools
1 parent 5c8117e commit 496738b

File tree

3 files changed

+11
-3
lines changed

3 files changed

+11
-3
lines changed

codingstyle/codingstyle.rst

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ update: 经验表明,TDD未必是必要的,但是单元测试是很必要的
116116
对于什么是好代码,什么是坏代码我现在还没有太多经验,但是最近工作接手别人的代码感觉困难重重,还是too naive啊。每个人实力不同,风格不同,一起协作的时候确实会遇到很多问题和分歧。感觉code review啥的还是很有必要的,可以让菜鸟学习下老鸟的经验,也可以让老鸟指导下菜鸟的失误,同时避免过于个人化的糟糕风格(比如让人想立马离职的高达成百上千行的复杂函数,比如上来一堆不知道干啥的幻数,比如上来就 `form shit import *` 导致俺的编辑工具找不到定义,比如整个项目没有一行测试代码,比如不知道用logger,全用print+眼珠子瞅,一个bug找半天,比如没有pep8检测导致你的环境打开别人的代码彪了一堆警告......)。说好的规范呢,说好的设计模式呢,说好的高内聚低耦合呢?说好的KISS原则呢?说好的DYR原则呢?其实俺只是想多活几年,至少不要到三十岁头发掉光。啥设计模式的可以不用,能干活的代码就行,牢记几个原则,没事的时候对复杂的东西重构下,代码不能自解释的搞搞文档,不被队友坑同时不坑队友,俺就心满意足了 ,遇到坑队友就等着加班和折寿吧:(。最后还是列举一下常用原则、思想和注意事项吧(最好import this看看python之禅,很多思想是通用的):
117117

118118
* KISS原则,Keep It Simple, Stupid。能简单的绝对不要复杂,不要炫耀代码技巧,简单可读最重要,后人会感谢你的,控制复杂度。
119-
* DRY原则。就算咱不懂设计模式,只要代码复杂重复了就及时抽取出来,至少不会碰到大问题。当然不要矫枉过正,过度追求设计和通用可能导致难以维护和理解。重复代码一旦接口变动的时候就是灾难,要修改很多地方。
119+
* DRY原则。就算咱不懂设计模式,只要代码复杂重复了就及时抽取出来,至少不会碰到大问题。当然不要矫枉过正,过度追求设计和通用可能导致难以维护和理解。重复代码一旦接口变动的时候就是灾难,要修改很多地方,一定要十分警惕代码重复
120120
* YAGNI(You Aren't Gonna Need It),不要猜测性编码,不用的及时删除,估计以后也不太可能会用到,冗余的无用代码会给维护者带来很多混淆和麻烦。
121121
* 快速失败,灵活使用断言。契约式编程(先验条件和后置条件),越早失败,越容易排查错误。
122122
* 增量式编程。及时清理技术债务,防止『破窗』。及时重构不合理代码,及时进行测试。
@@ -437,7 +437,7 @@ Docstring应该包括什么?接口易用性
437437
注释分5类(来自《代码大全》),但是仅『总结性注释』和『意图注释』可以接受
438438
代码的重复:用不同的词语重申代码的内容
439439
代码的解释: 解释复杂的有效的和灵敏的代码,通常有用但是尽可能修改代码使得代码本身更清晰
440-
代码中标记: TODO 标记等,经验表明,往往写了 TODO 后来就一直成了 TODO,所以最好提交代码前把要做的 TODO 做完,TODO 仅仅作为一次代码合并之前的提示。
440+
代码中标记: TODO 标记等,经验表明,往往写了 TODO 后来就一直成了 TODO,所以最好提交代码前把要做的 TODO 做完,TODO 仅仅作为一次代码合并之前的提示。TODO 注释记得加上姓名,日期和提示,方便 grep。
441441
代码中的总结:简化代码为一句或两句话,这种注释比重复代码更有价值,能帮助人快速理解代码
442442
代码意图的描述:解释代码的目的。意图注释在问题一级上,而不是在答案一级,是一句利用答案的总结描述。『理解最初的编程意图是最难的问题』
443443

@@ -517,6 +517,7 @@ Code Review
517517
最后,很多东西我也在摸索,上面的玩意你就当小白的踩坑记录,随着理解和经验的加深我会不定期更新本篇内容。另外我发现网上大部分是教程性的东西,对于python相关的工程性的东西很少,我很疑惑难道大部分公司的python项目都写得相当规范?没人吐槽?反正我是踩过坑,希望看到过本章的人能把python代码质量重视起来。
518518

519519
如何定位和修复 bug:复现和定位。定位需要找到 bug 出现时候的上下文信息,可以用 log,sentry 等查看。确认之后通过走查代码、断点调试等方式寻找代码逻辑错误。
520+
520521
- 走查代码
521522
- 看日志,各种日志(logging, nginx),看 sentry 异常信息
522523
- 问同事,让同事帮忙 review 审查代码。有时候人有思维定势,你自己看不出来的别人可能一眼就看出来了。

codingtools/codingtools.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,12 @@ Api 工具
8686
- http
8787
- postman
8888

89+
抓包工具
90+
--------------------------------------
91+
- mitmproxy: 命令行抓包工具
92+
- charles: 抓包软件
93+
94+
8995
数据库工具
9096
--------------------------------------
9197
- mycli: mysql 命令行补全等。https://github.com/dbcli/mycli

memo/memo.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -295,8 +295,9 @@ vim
295295
:1,3norm yss"
296296
297297
# Git 插件
298-
Plugin 'tpope/vim-fugitive' # 在 vim 里执行 :Gblame 可以看到当前文件每行代码的提交人和日期,方便找人背锅
298+
Plugin 'tpope/vim-fugitive' # 在 vim 里执行 :Gblame 可以看到当前文件每行代码的提交人和日期,方便找人背锅或者咨询,炒鸡好用
299299
300+
* `《vim cheet sheet》 <https://vim.rtorr.com/lang/zh_cn/>`_
300301
301302
用markdown文件制作html ppt
302303
-------------------------------------------------------------

0 commit comments

Comments
 (0)