java知识点如何串接
一个学生给我的邮件:
==================================================
金老师:
你好。
我是一名大三生,曾经跟您写过一封信,在您的指下,我选择学习java语言,现在正在上学校老师开的一个java培训班,已经讲了大概80个课时(每个课时45分钟),内容已经大概讲了如下:面向对象,接口,集合,事件处理,GUI,jdbc(顺序是凭记忆写的,非老师讲课顺序)。今天刚结束jdbc从数据库中取数据的操作,据老师说,我们的jdbc就到此结束了。
跟着老师一路走过来,感觉学到了不少东西,但也仅仅还是入门,知识还没有化为自己的。平常上课跟着老师写可以写得出,但脱离了老师的点拨与指导,我就不知道从哪里开始了,老师讲得各层各块的关系我有点记不清,比如jdbc,有四步嘛,驱动,连接,取数,输出,我就知道这么个大概,中间的具体实现得看了老师写的源代码才能回忆起来。另外,各个知识点,我还是孤立的,就像今天老师讲的从数据库中取数后如何输出,我就忘了要用到集合。老师一讲又想起来了。
同班的同学相对来说比我理解得较透彻些,我总结了下原因,可能是如下:我平时在非培训时间不会把所有时间花在java上,我上其它专业课的时候会听,课余的话我也会抽出部分时间去看高数之类考研科目,而相比之下,我的同学在课后就将所有时间看java书,上机做练习。所以我现在有点鱼与熊掌不可得兼的感慨:我一方面想把java学好,一方面又想准备考研,貌似这不太可能。请问我是不是应放弃考研,全心全意投入java学习中?
另外,平时课后看书是不是特别重要?您给我介绍了李刚的《疯狂java讲义》,我已买了,在邮寄中,据您说这本书中例子很多,我是不是要先不看作者代码自己尝试去实现再进行比较来看该书呢?
还有,平时我也有下张孝祥的视频在看,感觉受用也蛮大。在此想向您请教下在学习过程中还有哪些方面可以完善的?
======================================
我的回邮:
你所说的将知识点串接起来,其实是我们学习的中心任务,这个任务的达成不是一朝一夕就可以的。古语云:书读百遍,其义自见,就表达了类似的意思。但时代不一样了,特别是学软件技术,不能仅看书不动手,不管把书看多少遍还是不行的。
对于软件技术,不需要死记,但要会查会找。象你说的JDBC,不需要易做图记其步骤,准备好一段典型的代码,放在一个固定地方,需要用到时打开看看就明白了,另外,绝大多数示例代码通过Google都可以找到,何需死记?程序设计课又不是易做图课,记得再多,不会灵活用也白搭。建议你建立一个可以方便地查找“代码示例”的资料库,而这个资料库不妨就用JDBC来开发,学以致用。我也编过不少这样的小程序,比如为了考研背英语单词,我就编了一个记单词的软件;为了写作方便,我开发了一个“个人资料管理中心”的小程序,以树的形式来分类管理各种资料,这个小工具我一直用到现在,有好多年了。我也看到,不少优秀的程序员,都有这个习惯开发一些小工具。
鱼和熊掌难以兼得,如果你有考研的打算,我建议你将Java暂时放一放,先应付考研。如果能考上较好的学校,对你的人生之路还是有较大影响的,而你要真喜欢编程,以后大可以编上十几二十年(我也写了十几年的程序了,因为喜欢,所以现在还在经常写代码),又何必急于一时?
李刚的《疯狂Java讲义》,其长处在于例子很多,讲解比较详细,面面俱到,对于初学者比较适合,但知识点很分散,还是很难帮助你将知识点串起来。你真正想形成一张有用的“知识之网”,还得“实践”+“看书/上网”+“思索/悟”,再次强调一下,这其实是一个长期的过程,人的一辈子都要有当学生的求知态度,不这样,就会止步不前而落后于时代。
张孝祥的视频我没有看过,不做评论,但我从听到的一些消息中觉得他在这些视频上面花费了相当的心血,就常识而言,某个人只要认真地投入地做某项工作,那么,这个人的作品和工作成绩,应该不会差的。
通过软件开发实践入Java门之后,要注意不要再仅满足于功能的实现,而应该尝试着去探索其背后的奥秘,并且要开始努力学习相关的计算机科学理论知识,比如学了数据库,写了几个程序,就找本《数据库管理系统》看看,学了Socket编程,可以去看看《计算机网络》,同时,还要关注技术的现状与进展,比如 Java领域最近又推出了哪些新的东西,现在业界在某个领域用的主流工具有哪些等等,这样才能有提高。
好了,就说这么多吧,祝学习进步。
补充:软件开发 , Java ,