你们是怎么分析框架或库的源码的?(前端)


昨天看程序员文章,大牛说到,其实阅读别人的代码或好的框架也是一种修型,之前看了一半,看不懂了,就不看了,不知道如何理解,大家有过阅读的经验吗,分享一下

web前端开发 开放源代码 程序员 前端

bear想死 11 years, 8 months ago

这里先假设你说的前端是指的web前端,则你常见的框架有两类,一类是简化跨浏览器开发的js类库,例如jquery、prototype等等;一类是前端控件库,例如bootstrap、extJs、jqueryUi等等。

如果你想学习第一类框架,这个好说,把javscript的作用域、原型、常用创建对象方法、常用继承机制的实现方法、基于http协议的ajax实现机制(websocket、comet也有了解的必要)、浏览器内部工作原理这些平时没人拿到台面上讲的东西烂熟于心即可看懂现有的所有类库。

如果你想熟悉第二类“框架”,也就是前端控件库,首先你要先做到上一段讲的东西,如果你关注的框架是个国外的项目,那么HTML5/CSS3也是必须要熟悉的,特别是CSS3的选择器,再就是了解重置浏览器样式、栅格化、自适应布局这些“思想”层次的东西,先了解原理再阅读相关代码;遇到例如“margin值是负数”这种“小技巧”更是要找到让自己真正信服的依据,随感觉走没用,下次碰到了;

还有一些同时与两类框架有关的知识点也是要预先了解的,更确切的说法叫js脚本开发的基本功,例如js算法、js设计模式等;这些常在框架中有所呈现,但是带有浓厚的个人色彩,容易让阅读代码的其他人误入歧途;对于跨浏览器的问题,正确的做法是先学习“现代浏览器”中的js,然后再类比学习其它不符合W3C或ECMAScript5规范的浏览器。

推荐一本书:《javascript高级程序设计》人民邮电出版社 Nicholas C.Zakas 著
推荐一篇文章:浏览器内部工作原理 http://kb.cnblogs.com/page/129756/

大Maki answered 11 years, 8 months ago

Your Answer