课程·面向对象·总结

所学&所得

       学习了一些面向对象的基础概念:类型、对象、实现对象、继承、接口。在了解其基本概念后,用JAVA语言实现。在这一过程中,我对面向对象这门课有了初步的直观的认识。

  在学习课程之前我已经使用面向对象概念进行开发,当时觉得面向对象并没有那么困难,但是借着这次课程,我对面向对象进行了较为深入的探索,发现这一概念体系十分精妙。各种复杂的规则、约定是为了保障代码的封装性、鲁棒性、可重用性等良好性质。在按照这些规则实现代码时可能很难发觉这些规则的奇妙之处,但在之后某些阶段的开发中,我们将有很大可能会对这些规则心存感激。我在起步时可能不知道某些知识的应用场景,但是随着学习的深入,我慢慢开始体会到其奇妙之处。

  除了概念方面的学习,在语言方面我们也学习了不少实用的工具和一些处理简单问题的方法。JAVA语言的重要特点是其支持库十分丰富。由于上游开发者的巨大投入,一些常用的数据结构、方法等使用JAVA封装好的往往效率更高(解释器可以针对库的代码进行特殊优化)。在解决问题的过程中往往有这样的一个体验:将问题细化,分解成子问题,迭代操作,最后的子问题的核心往往会被库函数自带的一些方法解决;解决某一问题需要一种数据结构,而这一数据结构已经在库中封装好,或者可由已封装好的数据结构改造而来。特别的例子是字符串的相关操作,在课程学习中我们以此为例体会了JAVA库函数的强大,相关的操作也贯穿了我们的课程,难度逐步提高。

  一些零碎的细节,我记在了另一篇博文中:课程·面向对象·拾遗

对于课程的建议

       由于先导课程学时有限,课上教授的内容也因此受限,但愿意在暑假留校参加暑期课程的同学们应该都乐意多学一些内容。如果课程学时无法增加,可以将更多的知识和相关资料放在网络上,方便同学们进行自主学习。像面向对象这种重难课程可以提早一些以各种形式走入同学们的学习生活之中,先导课程就是一种很好的形式。还可以有很多形式使同学们能对这一课程有一个更立体的认识,比如之前提到的网络资源平台。再如网络对抗平台:对于某个问题用户发布自己的解题代码,其他用户对这一代码查错,发布能使解题代码出错的测试数据,在这一过程中给予用户相应的分数。让同学们先体验一番正式课程的紧张刺激。

       在先导课程的学习之中,我虽然能利用搜索引擎查询到自己所需的知识,但也亲身体会到网络上的代码用例质量参差不齐:也许在风格方面有所欠缺,也许在鲁棒性有所不足,也许有些不合规范。这可能对初学者造成许多消极影响。这从另外一个角度体现了网络资源平台的重要性:经过前辈把关的代码用例在质量上有保证,同学们进行借鉴参考,多半会收获良多。

 

(未完待续)

转载于:https://www.cnblogs.com/neolinsu/p/7309823.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值