SICP读完之后发现编程水平并没有提高
现代编程体系基于夫洛伊曼的命令式体系 现代编程中能没有变量吗?
我学完了建筑设计以后发现自己在工地上搬砖的水平并没有提高。不管你学了什么,你在一个你没用到的领域扯那根本就没有意义啊......
现在软件工程基本模式早就已经变成了 框架 + 业务逻辑 这种简单的模式了。如果一直填业务逻辑,就会会发现自己学的一切都对"编程水平"没有任何意义。我学过计算机组成(微机原理)、学过编译原理、学过数字/模拟电路、学过操作系统、学过项目管理、需求分析、设计模式、架构设计。
但是如果我只填业务代码,那么我上面学的一切都对我的所谓"编程水平"没有带来任何影响。因为根本用不到啊......
举一个只需要会填业务代码的典型例子,Rails。在Rails社区里面写一个链表都能被称为大神,但是不会链表根本不会影响他们用Rails写网站。
2楼 @brambles 术业有专攻 ,之前的回复不是针对你说的, 而是针对那些想学计算机编程 刚刚入门 并想以此找一份工作的人说的, 只是看到你在这里说函数式编程,我忍不住想起那些大神的各种回复
深入理解计算机系统(这本我觉得应该读一下,但绝对不是刚开始) (实际上这本书真没那么神乎 高中知识绝对就可以阅读 原书的标题应该是 一个程序员需要了解的计算机知识)
然后就是SICP 说实话这真的是个大坑 我觉得初学者 应该先学一门面向过程的语言(而不是SICP) 然后了解 一下数据结构 对常见的数据结构有清晰的实现 配套数据结构的算法 能看懂多少是多少 毕竟大部分人不是去设计一个新的算法 而是扩展现有的算法 并将其用到项目中去
学完这些之后然后就可以去学各种面向对象的语言以及相应平台的框架 理解抽象 继承 接口 以及面向对象语言中对数据结构封装的容器
我跳了数学这个更大的坑。业余时间在啃实分析
然而我还在热衷于造轮子......
6楼 @q397064399 你怎么知道xiaotie的博客地址啊? 我也想看看啊!