• WebKit阅读起步


    转摘自:http://my.oschina.net/myemptybottle/blog/42683

    部分转摘,全文请查看原文!


    我第一次看到WebKit代码中did,will前缀有点困惑,看多了才熟悉了其含义.will/did相当于某些项目里的before/after,也就是在某件事情发生之间和发生之后要进行的处理(有些地方并不正确,但大体如此),did类似callback的含义,像win平台上常见的OnKeyDown里的On. will,did,callback,after,before在webkit的函数命名中都有使用. 
        其命名惯例还有client和private,  AAAClient表示的是需要关注AAA处理的过程中一些逻辑点的类,***client一般是个接口类,继承它,实现自己的逻辑,这样***在进行一个操作时会调用client类的逻辑,实现通知or处理or拦截. 
        private就是pimpl手法,多用于外围逻辑和移植的部分,AAA类会有一个AAAprivate成员,AAA的方法就是简单的调用AAAprivate的同名方法.在WebKit里有些地方也用impl这个标缀,但不多. 
        
        阅读过程可能很累很疲倦,涉及方方面面细节很多,最好找至少30分钟的块状时间来进行阅读.看5分钟就被打断了,回过头很可能就忘记了,也就白浪费了5分钟. 
        个人觉得多注意几点: 
        
        0. 选择性阅读,注意每个类实现了什么功能,这个功能的关键程度. 
           我们的时间只够看有意义的类,不可能犄角旮旯的代码也去仔细阅读. 
        
        1. 对于 类,可以通过查看类名的引用关注它是在何处何时构造的,以清晰它的重要程度. 
           
        2. 阅读一个类的方法时,多使用"查看所有引用"功能. 
           以: 
             a.防止自己在阅读无太大意义的代码. 
             b.清晰这个方法调用时的运行环境/逻辑环境,以更好的体会方法中的代码要注意的地方. 
      
        3. VS与Source Insigh交换着使用,2者各有各的优缺点.阅读时应该注意自己此时使用的是哪样工具从事哪样事情,争取提高每分每秒的效率. 
           我使用的是VS2005,其代码上下文窗口响应极其缓慢,查看定义和声明时常有一些bug,"智能感应"功能耗CPU很高却耗时很久,而source insigh在这方面相当的完美. 
           VS内置标签页功能,而且可以建立垂直选项卡组,在宽屏上可以很方便进行并排阅读.安装visual assistant后,有更多快捷的功能. 
           总而言之,我们要灵活使用2者来最高效率的完成夸张的工作量. 
      
        4. 阅读时可以加些断点,加载一个网页,执行一些操作,跟踪下流程,加深理解. 
      
        5. 多做记录,因为逻辑繁杂,很容易看一些忘一些(我去年就看过一小部分webkit代码,今年几乎就想不起来了,幸亏留了些笔记.), 做些记录,以便查看时能把以前的理解很快的捡起来. 

        6. 对一些有趣优秀的地方,一些臃肿的地方进行总结反思学习,多总结才能更好的帮助自己代码设计的更好,写的更好. 

        7. 对自己要严酷,要有规划,若仅仅是非常肤浅的读webkit一部分代码,个人强烈建议节约时间看一些网络上的webkit代码阅读总结大体了解好了.毕竟不深刻的记忆总是很容易忘记的,而人的时间是最昂贵的,做一件不能成为回忆的事情是对生命极大的浪费. 




  • 相关阅读:
    shell 命名管道,进程间通信
    bash shell:重定向标准错误输出
    paramiko socket.error: Int or String expected
    django csrf_token生成
    shell基础知识
    复制vi全部内容到windows ctrl+shift+c
    linux配置bridge (不同网段)
    sdk shell下脚本.soc
    X86服务器BMC基板管理控制器介绍
    linux 开启vnc
  • 原文地址:https://www.cnblogs.com/ycpanda/p/3637195.html
Copyright © 2020-2023  润新知