看了一通flask_caching
的源码,学习到很多东西,远比不断的搜索效率更高,也终于理解了如何自定义 make_cache_key
1
bumz 2019-08-15 19:06:17 +08:00 via iPhone
多读源码是必要的
但是比读源码更能提高能力的是在事先不知道的前提之下,重新犯一遍别人犯过的错 换句话说就是独立实践 |
2
bumz 2019-08-15 19:07:57 +08:00 via iPhone
比如不看前人代码,自己独立写一个 WSGI web 应用框架
|
4
Abbeyok OP @bumz 问个问题,像 flask-caching 这种比较简单的源码可以读懂,但是像 flask 的源码,组织结构比较复杂,该如何读起?
|
5
cigarzh 2019-08-15 20:17:07 +08:00 via iPhone
几种不同的境界:
读懂源码非常吃力 读懂源码非常轻松 读完能指出源码哪里写的漂亮,哪里写的垃圾,并能给出几种更好的实现 往上还有更恐怖的层次,我就不谈了 |
6
ragnaroks 2019-08-15 21:12:22 +08:00 1
如果源码的水平在你之上,那肯定更显而易见的提升.
也如 1 楼所说,遇到问题并解决问题才是最有效的. 我个人也认为理想的学习情况就是独立完成一个应用,然后遇到问题,然后解决问题. 我个人最开始学 C 是看书看视频的,从第二个语言 C#开始就是读下文档直接开撸. 最怕的就是遇到一个问题,谷歌一下只有一个结果,点进去发现问题和你描述完全一致,然后提问时间 N 年前,0 回复. |
7
ragnaroks 2019-08-15 21:13:23 +08:00
最近在做 WFP 驱动开发,有些问题连微软自己都搞不清楚,真的要死,头都大了
|
8
visitant 2019-08-16 01:03:44 +08:00
如果能做到遇到问题,解决问题,再看源代码会比较好吧
|
9
xiaket 2019-08-16 06:40:18 +08:00
@Abbeyok HTTP 入口开始读, 看路由是怎么转发的, HTTP 请求是怎么交给业务逻辑处理的, HTTP 响应是如何被构造出来的. 这一串了解完之后就没大问题了. 如果还有兴趣, 再去看各个框架特异性的东西, 比如 Djngo 去看看 ORM 等等
|
11
nguoidiqua 2019-08-16 08:48:11 +08:00
其实读书读文档也好读源码也好,最有效办法就是带着问题去读。比如你在某个地方有疑问,你去看源码找原因。或者你对某个功能实现很感兴趣,你想要借鉴一下。
这样去读,基本上读到就能做到,水平也就提高了。 |
12
troywinter 2019-08-16 22:35:41 +08:00
不自己写的话,过几天你就又忘了,还是要多用多写。
|