zoukankan      html  css  js  c++  java
  • C开发人员眼中的SICP学习

    谈谈自己看SICP的一些体会


    第一章  构造过程抽象

    这一章事实上和C语言全然等价, 不打算深入学习LISP的能够高速略过。

    思想上没有太多新的东西。

    这一章最核心的价值就是以下3句话, 理解了这一章就算看完了。

    语言的原型系统
    ·怎样组合
    ·怎样提供高层抽象


    这3句话是全部语言的核心。 基本上适用全部人。 

    后面的递归和迭代。 形式上和C区别大, 思想上事实上和C没多大区别。 高阶函数。 C的函数指针略微呕心了点,也凑合着能替代。

    闭包, 用以下呕心的结构也能凑合替代。

    typedef  struct stClosureFunc {

    void * ctx;

    void* pFunc;

    } ClosureFunc

    总而言之, 不打算深入学习lisp的第一章1-2个小时能够高速略过。

    (假设想转Lisp开发, 还是有必要花1-2个月做做题)


    第二章  

    前面的数据抽象。 和C的玩法也没啥大差别, 熟悉的话不用花太多时间。

    第二章主要要学的是2.3符号系统。C基本不提供。非常值得看看。能开拓视野。


    第三章 关于序列化,这个在实际C项目中也大量用。 基本是共通技术。关于流。 想法非常新, 就不清楚详细项目上是否使用过。

    C用的很多其它是Unix系统的管道思想, 或者消息队列思想。

    消息队列其实是序列化和流技术的结合。


    前面3章基本上是基础的东西。 第4章。 讲的是解析器实现。

    採用的是自上而下风格。

    非常有意思。

    去年自己一直在研究编译器, 有些不一样的体会。 有点遗憾的是, 没看到词法分析。

    有限状态机等正則表達式概念不知道lisp是怎样实现的。

    还有一个非常遗憾的问题,是书中性能分析比較少。

    怎样优化方面介绍的比較少。


    第5章, 是精华, 也是这本书最值得学的章节。 对理解计算机模型本质非常有帮助。

    个人体会 第1-3章看书加习题。大概1个月

                     第4章  1-2个月

                     第5章  3-6个月



  • 相关阅读:
    全面了解Cookie
    HTML5实现无刷新修改URL
    闭包的理解
    JS中的prototype、__proto__与constructor
    Array.prototype.slice.call()方法详解
    深入理解 Array.prototype.map()
    网页布局——Flex弹性框布局
    vue项目的各个文件作用
    node使用心得
    node连接Mysql报错ER_NOT_SUPPORTED_AUTH_MODE
  • 原文地址:https://www.cnblogs.com/slgkaifa/p/6875788.html
Copyright © 2011-2022 走看看