1
代码多的真的不值得看吗?
江苏 无锡 缪小东
很没意思的标题!我又暂时没有其它的好标题!可能是气晕了(刚刚在 itpub 发飙了)。
一、 厌恶 ABC 类的教学代码
每每上计算机课,书上全是些短短的参考示例!实际使用时又往往很难整合到一起,自己写大一点
的程序又没法写。看此程序多了,总以为程序
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
是一件非常简单的事,敲敲几行就好了!实际是否这
样呢?!很多朋友从学校步入社会后发现,学校学的东西和工作中用的东西,编的东西差别太大太大了!
因此,有一些“不负责任”的人会宣扬什么“读书无用论”、“大学学的东西太老了”!其实真是这样吗?
我们犯了一个错误,走向极端的错误!
其实大学的学习是很有用的,它奠定了你以后工作的基础!一个简单的比较:你和你没有进大学,
它高中毕业后没有任何学习的机会,在你大学毕业后你们进同一家 IT 公司,你们的工作能力一样吗?
最起码刚进去时你的能力肯定比他强――除非你在学校根本就没学好、甚至根本就没学――一天 24 个
小时有 16 个小时打游戏其余睡觉了!至于日后假如他比你刻苦,又另当别论了!肯简单的就是将大学
读得还不错的大学毕业的你,和一个连大学都考不上的高中生比,你们进同一家公司会怎么样呢!这样
比较你可能会认为大学是有用的!
那么大学读完了,怎么我们不能胜任工作啊!学习和工作怎么有如此差距啊!这主要是教学和实际
的脱节、计算机科学发展太快导致的。大学里能和工作很贴近吗?不太可能!由于实际工作千差万别,
大学学年又有限,这些能教给你的知识只能压缩压缩再压缩了!因此大学教育量少。其次是大学教育永
远跟不上最新的,即使有人写一本教材,最新的,等它出版成书还有待时日啊!即使书写完就到我们手
了!那我们有基础读懂它吗?!――读不懂的!因此大学教育落后于工作实践!其实大学教育永远教你
最最基本的,你所学会的仅仅是皮毛。你要学的不是书籍的本身,而是大学教育教给你“自学的能力”,
有了此能力,又有了大学里学习的基础,只要你肯学,相信很快你就可以适应工作,学到最新、最快的
知识!
大学教育怎么可以保证你学到最基本的基础呢!首先大学的教程要包含足够的知识面,同时又要保
证学习总时间,因此其例子相当短小!工作后要想适应工作你得自己学、自己学习实用的、甚至最新的
知识!
二、 “真正的软件”与如何达到做“真正软件”的能力
安装过操作系统的朋友都知道操作系统就放在一张光盘里,操作系统本身也是一个软件!很多搞数
据库的朋友都用过 SqlServer、Oracle、DB2 等软件,大吧!与我们学习时的例子有差距吧!不谈专业的、
顶级的就谈 Java 中 Jsp、Servlet 的服务器吧,它的代码也有 4000 页左右(我正在研究),真正的软件不
是那种教学式的、简单几页甚至几行的所谓程序吧。
看到真正的软件、看到学校学习和工作的差距!那我们怎么办――肯定是继续学习了!学什么啊?
再学那种教学式的代码片断!还不又是回到了大学!为了缩短和工作的差距、为了能写出真正的软件,
我们就得研究别人的真正的软件,这是任何书籍所没有的!
2
三、 怎么学习别人的软件
我们知道为了适应工作我们得学习,为了能做真正的软件我们得学别人真正的软件!那么又如何学
呢!打印一本 Derby 的源代码啃啃,18000 页左右的代码(据说价值 80 亿美元),相信没有 10 年 8 年的
功底,啃下一遍你也疯了!代码太多啦!
那我们选 JDK 的 RMI 好了――简单而且是 java 中高级的东西(EJB 的基础哦)!你又错了!打开你
的 java.rmi 包看看,代码很少,差不多 100 页,代码不那么多不是很好吗!!!主要是 Sun 隐藏了其实现
细节,很多高级
协议
离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载
的设计部分都在 jar 包中!唉,不幸!代码不完整!
太大的不能看,太少的不值得看――看了也没多大长进,中等的 RMI 又不完整!那看什么!JDK
中 java 包相对很简单了,肯定就是它了!那么多看哪个呢?! java 包中对初学者能看的就是
java.util.logging 了,很短且自成体系!(过一段时间我会介绍)Collections 也可以,只不过要有个脉络吧,
因此我选了 Collection、List、AbstractCollection、AbstractList 极其一个具体实现 ArrayList,希望做到抛
砖引玉的作用。看完了 Collection 我们对 java 语言的基本语法可以了如指掌,同时为再进一步学习打个
基础。(离看懂真正的软件还远呢,离做真正的软件更远更远)我们就慢慢来吧!会成功的,本博客就
是介绍我个人的经验,同时和大家共同进步。
总之,看别人的源代码要和你现在的能力相当――能看懂!代码要自成体系,要有利于以后的学习!
在学别人的源代码中,学会 API,学会设计技巧!一箭双雕何尝而不为哦!一天一天长进,慢慢(打开
10 个方向后――)我们就可以研究别人的真正的软件了!能研究了,不是一大进步吗!!!
四、 有必要学习别人吗?
在学习 J2EE 的朋友可能发现,学习过程中我们用的仅仅是接口以及接口中的方法,对实现一无所知!
学 J2EE 很久的朋友可能发现 J2EE 用了那么就自己除了知道这些 API,会用它之外,几乎一无所知!假如你
不想被 J2EE 的 API 迷惑、不想永远只是一个 API 的使用者、一个低级的 CodeMaker、充其量是一个出色的
程序员,请你多来我的博客!我们共同从别人的代码中汲取营养、从别人的设计中得到灵感、学习别人充实
自己。让我们征服、征服再征服!即使著名的 IBM,它也在学习别人的东西!Eclipse 就是一个极好的例子,
IBM 向开源社区投入大量的资金,构建自己的开发工具 Eclipse,它造就自己的开发工具、打击了其它的开发
工具开发者,这是商业目的不谈,它其实就是在利用全世界高手的智慧,在打造自己的产品,IBM 的 Eclipse
在卖给企业时是需要银子的!IBM 要学我们要不要学???
我的博客就是和大家一起学习,学习已经有的 JDK,学习开源!
五、 本博客的宗旨
本博客,纯粹发表个人观点的地方,不属于任何部门(我害怕哪天 163 服务器有问题,崩溃什么的,
我机器里还保存我写的文章),仅仅是为了推广源代码研究,提高程序设计能力而已!
我会经常更新博客中的内容,内容也会逐渐深入、逐渐广泛!(刚刚开张,难免内容很少。同时又
不喜欢到网上拉拉,敷衍大家――不浪费大家时间吗!!)
更多精彩请关注:
http://blog.163.com/miaoxiaodong78/
代码多的真的不值得看吗?
一、 厌恶ABC类的教学代码
二、 “真正的软件”与如何达到做“真正软件”的能力
三、 怎么学习别人的软件
四、 有必要学习别人吗?
五、 本博客的宗旨