如果计算机只有理论,那么它不过是数学的一个分支,而
不成为一门独立的科学。事实上,在理论之外,计算机
科学还有更广阔的天空。我一直认为,4年根本不够学习
计算机的基础知识,因为面太宽了......

一个一流计算机系的优秀学生决不该仅仅是一个编程高
手,但他一定首先是一个编程高手。

我上大学的时候,第一门专业课时程序设计,现在好象
改成了计算机科学导论?不管叫什么名字,总之,念计
算机的人就是靠程序吃饭。

去年在计算机系版有过一场争论,关于第一程序设计语言
该用哪一种。我个人认为,用哪种语言属于末节,关键在
养成良好的编程习惯。当年老师对我们说,打好基础后
学一门新语言只要一个星期。现在我觉得根本不用一个
星期--前提是先把基础打好。

数据结构有两种不同的上法:一种把它当成降低要求的
初级算法课,另一种把它当成高级的程序设计课。现在
国内的课程好象介乎两者之间,而稍偏向前者。我个人
认为,假如已经另有必修的算法课,恐怕后一个目的更
重要些。

国内流行的数据结构书也有两种:北大的红皮书(许卓
群等著,高教版)和清华的绿皮书(严蔚敏等著,清华版)。
两书差距不大。红皮书在理论上稍深一些,当然离严格
的算法书还差好远。绿皮书更易接受些,而且佩有一本
不错的习题集,但我觉得它让学生用伪代码写作业恐怕
不见得太好。最好还是把算法都code以后debug一番,
才能锻炼编程能力。

汇编预言和微机原理是两门特烦人的课。你的数学/理论
基础再好,也占不到什么便宜。这两门课之间的次序也
好比先有鸡还是先有蛋,无论你先学哪门,都会牵扯另
一门课里的东西。所以,只能静下来慢慢琢磨。这就是
典型的工程课,不需要太多的聪明和顿悟,却需要水滴
石穿的渐悟。

有关这两门课的书,电脑书店里不难找到。弄几本最新
的,对照着看吧。

模拟电路这东东,如今不仅计算机系学生搞不定,
电子系学生也多半害怕。如果你真想软硬件通吃,那么
建议你先看看邱关源的“电路原理”,也许此后再看模拟
电路底气会足些。

教材:康华光的“电子技术基础”还是不错的。有兴趣也
可以参考童诗白的书。

数字电路比模拟电路要好懂得多。阎石的书也算一本好
教材,遗憾的一点是集成电路讲少了些。真有兴趣,到
东南无线电系去旁听他们的课。

计算机系统结构该怎么教,国际上还在争论。国内能找
到的较好教材为Stallings的"Computer Organization
and Architecture:Designing for Performance"(清华影印
本)。国际上最流行的则是“Computer architecture: a
quantitative approach", by Patterson & Hennessy。

操作系统可以随便选用Tanenbaum的"Operating System
Design and Implementation"和"Modern Operating
System"两书之一。这两部都可以算经典,唯一缺点
就是理论上不够严格。不过这领域属于Hardcore System,
所以在理论上马虎一点也情有可原。

如果先把形式语言学好了,则编译原理中的前端我看只要
学四个算法:最容易实现的递归下降;最好的自顶向下
算法LL(k);最好的自底向上算法LR(k);LR(1)的简
化SLR(也许还有另一简化LALR?)。后端完全属于工程
性质,自然又是another story。

推荐教材:
Aho等人的著名的Dragon Book: "Compilers: Principles,
Techniques and Tools".
或者Appel的"Modern Compiler Implementation in C".

学数据库的第一意义是告诉你,会用VFP编程不等于懂
数据库。(这世界上自以为懂数据库的人太多了!)数据库
设计既是科学又是艺术,数据库实现则是典型的工程。
所以从某种意义上讲,数据库是最典型的一门计算机课
--理工结合,互相渗透。

推荐教材:Silberschatz, et al., "Database System
Concepts".

网络的标准教材还是来自Tanenbaum:”Computer
 Networks"(清华影印本)。不过,网络也属于Hardcore
System,所以光看书是不够的。建议多读RFC,从
IP的读起。等到能掌握10种左右常用协议,就没有几个
人敢小看你了。

必须结束这篇“胡侃”了,再侃下去非我力所能及。其实
计算机还有很多基础课都值得一侃,如程序设计语言原
理,图形图像处理,人工智能等等。怎奈我造诣有限,
不敢再让内行耻笑。

最后声明:前后的两篇“胡侃”只针对本科阶段的学习。
即使把这些全弄通了,前面的路还长......

胡侃学习计算机--理论之外-From南大小百合相关推荐

  1. 转《胡侃学习(理论)计算机》的心得

    今天推荐的是篇老帖,南京大学sir先生的<胡侃>以及后来的两篇补充帖子.算算是十几年前的帖子了,我知道帖子出自南京大学的BBS,百度了一下,却没有翻到原文.不过百度到了一大堆不负责任的转帖 ...

  2. 胡侃学习(理论)计算机【被大佬推荐,转载以膜拜】

    <胡侃学习(理论)计算机> 作者: Sir (阿涩) 我也来冒充一回高手,谈谈学习计算机的一点个人体会.由于我是做理论的,所以先着重谈谈理论. 记得当年大一,刚上本科的时候,每周六课时数学 ...

  3. 【转】胡侃学习(理论)计算机

      原帖大概是出自南京大学的BBS,南京大学sir先生的<胡侃>,算算应该是十几年前的老帖子了,后来又被某位作者追加了一些他自己的读后感进去,就是现在这样.原帖可能网上找不到了,转载的倒是 ...

  4. 胡侃学习(理论)计算机

    胡侃学习(理论)计算机 Sir  (阿涩) 10/2001 ****************************************************************** 版权声 ...

  5. 计算机理论专业研究生论文课题,计算机理论方向论文选题 计算机理论论文标题如何定...

    精选了[100道]关于计算机理论方向论文选题供您后续的写作参考,在写计算机理论论文之前,很多大学生总是被计算机理论论文标题如何定难倒怎么办?请阅读本文! 一.比较好写的计算机理论论文题目: 1.如何提 ...

  6. 音乐的计算机理论难不难学,【如何学习音乐理论?这几个建议对你也许很有效】- 环球网校...

    [摘要]无论是哪种音乐,你都需要有旋律感和每一个动作的起伏感,许多朋友没有机会系统地学习音乐理论,今天跟大家讲讲如何学习音乐理论?这几个建议对你也许很有效,其实不管什么乐器,方法很重要,所以今天小编就 ...

  7. 电脑硬件知识学习_学习计算机基础必读的4本经典入门书籍,自学编程必备书单!...

    点击蓝色"程序员书单"关注我哟 加个"星标",每天带你看好文,读好书! 文/黄小斜 转载请注明出处 新手学习计算机并非易事,作为一个自学编程的过来人,深知打好计 ...

  8. 电脑硬件知识学习_编程入门书籍:大学学习计算机基础必读 5 本经典入门书籍,收藏...

    新手学习计算机并非易事,作为一个自学编程的过来人,深知打好计算机基础的重要性,缺少了坚实的计算机的基础,往往你也难以往上走,即使学了再多高大上的技术,也都是在沙台上筑高楼,缺少根基,摇摇欲坠. 学好计 ...

  9. 计算机论文专著 论文集,学习计算机方面论文参考文献 学习计算机专著类参考文献有哪些...

    [100个]学习计算机方面论文参考文献,每一个论文参考文献都是精选出来的,看了后定能知晓学习计算机专著类参考文献有哪些等相关写作技巧,让学习计算机论文写作轻松起来! 一.学习计算机论文参考文献范文 [ ...

  10. 这可能是我学习计算机以来的全部总结和收获

    你好,我是阿秀. 关注我时间比较久的人或者有我朋友圈好友的人应该知道我是个比较喜欢看书的人. 我经常在朋友圈分享自己最近在看的书,这里的书不止技术书,还有一些非技术书,比如我刚上班那段时间为了学好前端 ...

最新文章

  1. iOS开发实战-基于SpriteKit的FlappyBird小游戏
  2. 实践微服务六年,我获得了这些心得体会
  3. SAP Spartacus delivery mode页面Cannot find control with的错误消息
  4. HDU - 5441 Travel 离线处理+并查集
  5. XElement.Load 需要释放吗_奥施康定掰开后能当即释片用吗?
  6. JSP之内置对象、作用域
  7. 德鲁伊 oltp oltp_深入研究内存中OLTP表的哈希索引
  8. 前台获取信息进行跳转
  9. 面向对象——私有成员
  10. 读书:鲁迅的《故事新编》
  11. 杭电2103---Family planning
  12. ubuntu 10.04下vmware tools安装和一些应用
  13. 自己动手写个狗屁不通文章生成器!输入标题即可生成文章!
  14. 苹果官网html简单代码,苹果官网CSS3应用案例分析
  15. 实验一:大数据可视化工具—Excel
  16. 机器学习-马尔可夫模型与隐马尔可夫模型
  17. python 查找字符第一次出现位置_python 字符串第n次出现的位置 | 学步园
  18. es 创建索引 指定id_简单操作elasticsearch(es版本7.6)
  19. 【JZOJ3424】粉刷匠
  20. Deepin15.8系统下安装QorIQ Linux SDK v2.0 yocto成功完美运行的随笔

热门文章

  1. js解决m3u8视频无法播放问题
  2. 有感:一名大学毕业生的反思:轰动中国万言帖 最露骨大学生活
  3. CORE | AAAI2020:分子自动优化模型
  4. 关于旅游景点主题的HTML网页设计——北京景点 7页(带订单购物车)
  5. 行严格对角占优矩阵——一道矩阵代数作业题
  6. 假设检验实例(python)
  7. 奇异值分解(SVD) --- 线性变换几何意义
  8. Win10系统无法安装geforce game ready driver?
  9. 通讯录管理系统 C++
  10. Android 屏蔽home键