编程之美,探索之趣

——读《编程之美》的感受

作者:李秀忠

一次,在上Java上机课的时候,学生们都在机器上调试自己的代码,只有一位同学,用铅笔,在书上涂来改去,时而还陷入 沉思,干脆无视老师的存在,我很是恼火,这位同学平时对编程就不是很感兴趣,以往上机课时,他都是无所事事的样子,让他练习书上的代码,他也不屑一顾,认 为书上的代码太简单了,根本就不放到眼里,今天看他却一反常态,如此专注,我便走过去看个究竟,原来他正捧着一本时下非常流行的《数独》小册子,正在玩数独游戏呢,本想发怒,看他难得在我的课上专心做点事情(尽管与课堂内容毫无关系)也就忍了。其实我也曾痴迷过数独,也算是有过共同爱好,我就不想难为他 了,在我的手机上也有一个数独游戏,平时学校开大会的时候,我就躲在最后排填数独玩,看他如此痴迷数独,和我当时的情形一样,也就没有对他发火。虽然没有 发火,但是,我也不能坐视不管呀,我还是可以对他进行适当的制裁。

怎样制裁呢?给他留作业吧,把《数独》这本小册子抄上十遍,那可是小学老师的勾当,显然不行,想起刚刚读过《编程之美》这本书中,有一节关于构造数独游戏 的例子,书上只给出了思路,没有具体的实现,拿这个做作业,他会感兴趣的(其实不感兴趣也不行呀,这是对他上课不练习课堂内容的一项制裁,没什么好选择 的),如果做不出来,就不要再抱怨老是写简单的代码了。

于是,我就在课堂上,当堂宣布,鉴于XX同学对数独如此痴迷,老师就把自己正在研读的,带有作者签名的《编程之美》暂借给他(借机还可以炫耀一下自己拥有 一本作者签名的赠书),让他读完其中的构造数独一节,用Java写一个数独程序,供全班同学在业余时间玩,也省的去买那本数独小册子了,自己编数独游戏, 自己来解,这样一定很有趣。那位同学果然欣然领命,显出一副要自我挑战一下的样子。

下课的时候,就迫不及待地到我的办公室去取那本书。

第三天,上机课的时候,这位同学居然真的把数独游戏用Java语言实现了,当着我和全班同学们的面,兴致勃勃的演示,界面当然还比较粗糙,于是我就指派另 外一位同学做测试,试玩了几把,效果还相当不错。正好这节上机课,有主角了,我就让这位同学来讲述这些天连夜赶制数独游戏Java版的过程。同学们确实也 对这个探索过程非常感兴趣,都纷纷想拿这个数独游戏小试身手。

以前,我都是直接告诉他们老师是怎么想的,最终结果是什么样的,这次发现,你只要告诉他们,你要的结果是怎样的,在得到结果之前的探索过程,留给他们自己,他们才能真正体会到这个探索的乐趣。

课后,那位同学声称,有罚就有奖呀,要把那本《编程之美》借给他看完,我当然是爽快地答应了。

其实,《编程之美》这本书,我到现在为止也没有完全看完,只是有空的时候就翻看一个章节,因为这本书的每一小节,都是一个独立的问题,按照问题的提出,分 析与解法,以及扩展问题这样的顺序来编排的,书中并没有给出具体的代码,主要侧重于分析问题的过程,其中的很多探索和实现过程留给了读者自己,这也可能正 是作者的苦心,把这种探索的乐趣完全留给了读者。

你不必逐章阅读这本书,各章节之间也没有什么联系,你可以只看你感兴趣的部分,边探索,边思考,就像在做一套脑力体操。你可躺在床上,翻开它,甚至是在地 铁里,捧着它,就像我当初迷恋数独游戏时一样。当然我是抱着休闲的心态来看这本书的,把面试和应试放到了一边,也没有对每个问题都寻根问底,其实说句心里 话,里边有好多算法问题,我也搞不懂,只是看了看热闹,就翻过去了。

原博客地址:http://hi.baidu.com/snowyvalley/blog/item/34fc1df0dd311da9a50f524d.html

转载于:https://www.cnblogs.com/yeka/archive/2008/08/12/1265559.html

不是我不想动脑筋,给我一个支点看看——看《编程之美》,玩数独,大有乐趣...相关推荐

  1. [转]一个叫你看过后感动想哭的对白

    一个叫你看过后感动想哭的对白 烛光晚餐. 桌两边,坐了男人和女人. "我喜欢你."女人一边摆弄着手里的酒杯,一边淡淡的说着. "我有老婆."男人摸着自己的手上的 ...

  2. 经典《像素鸟》游戏,难道你不想自己动手开发一个嘛(附源码免费下载)

    经典的飞机大战游戏,难道你不想自己动手开发一个嘛! 语言:Java 代码的编译软件:Eclipse 如果你用的也是eclipse的话 直接导入文件 就可以 ,如果不是的话,自己建一个项目,将代码cop ...

  3. 经典《飞机大战》游戏,难道你不想自己动手开发一个嘛(附源码免费下载)

    经典的飞机大战游戏,难道你不想自己动手开发一个嘛! 语言:Java 代码的编译软件:Eclipse 如果你用的也是eclipse的话  直接导入文件 就可以  ,如果不是的话,自己建一个项目,将代码c ...

  4. 想要专升本你不得不看的全干货_吐血整理_专升本_计算机文化基础(一)

    你好,我是阿ken 2021/6/26 第一次优化排版和内容 之后会持续优化修改 ---------------- 版权声明:本文为CSDN博主「请叫我阿ken」的原创文章,遵循CC 4.0 BY-S ...

  5. 想用C++实现一个软件渲染器

     想用C++实现一个软件渲染器 : https://www.zhihu.com/question/33712299

  6. 编程课程学习_如果您想学习数据科学,请从以下编程课程之一开始

    编程课程学习 by David Venturi 大卫·文图里(David Venturi) 如果您想学习数据科学,请从以下编程课程之一开始 (If you want to learn Data Sci ...

  7. 想要教AI一个常识真的好难,幸运的是保罗·艾伦拿钱闯进来了

    作者|Chelsea Gohd     来源:Futurism     出品|遇见人工智能      公众号 GOwithAI >>>>昨日全平台阅读量:6万1000余次> ...

  8. 想要专升本你不得不看的全干货_吐血整理_专升本_计算机文化基础( 十 四 )

    大家好,我是阿Ken.很快就要整理完第三章了~ 对于专升本_计算机文化基础我已经在博客里整理了已经一半多了,希望能够在我整理后能够帮助其他的小伙伴,会一直整理完所有的专升本_计算机文化基础的笔记,感兴 ...

  9. 想要专升本你不得不看的全干货_吐血整理_专升本_计算机文化基础( 十 五 )

    大家好,我是阿Ken.很快就要整理完第三章了~ 对于专升本_计算机文化基础我已经在博客里整理了已经一半多了,希望能够在我整理后能够帮助其他的小伙伴,这月底整理完所有的专升本_计算机文化基础的笔记,感兴 ...

  10. 想要专升本你不得不看的全干货_吐血整理_专升本_计算机文化基础(十 一)

    大家好,我是阿Ken.很快就已经整理到了第三章~ 对于专升本_计算机文化基础我已经在博客里整理了已经一半多了,希望能够在我整理后能够帮助其他的小伙伴,这月底整理完所有的专升本_计算机文化基础的笔记,感 ...

最新文章

  1. java 无符号转有符号_java有符号无符号的转换
  2. WPF 10天修炼 第四天- WPF布局容器
  3. 【数据库】PLSQL Developer出现ORA-12541TNS no listener错误解决方法
  4. [bzoj4236]JOIOJI
  5. 关于IOCP乱序的探讨
  6. 收藏!5V转3.3V电平的19种方法技巧
  7. 【TensorFlow】 基于视频时序LSTM的行为动作识别
  8. 一文带你弄懂 Java 动态代理 | 原力计划
  9. 直关的sql 联级更新语句
  10. CentOS安装postgresql9.1
  11. Android访问WCF服务(上篇)-服务端开发
  12. 11.凤凰架构:构建可靠的大型分布式系统 --- 虚拟化容器
  13. win10蓝屏无法进入系统_WIN10系统进“吃鸡”蓝屏
  14. 计算机专业我的生涯规划档案,大学生学业生涯规划登记表11.doc
  15. protocol buffer生成C语言的实现
  16. java用接口求立方体表面积_Java练习 SDUT-3337_计算长方体、四棱锥的表面积和体积...
  17. 白话Elasticsearch59-数据建模实战_ Nested Aggregation/ Reverse nested Aggregation对嵌套的博客评论数据进行聚合分析
  18. ieltsListen was compiled with optimization - stepping may behave oddly; variables may not be availab
  19. 火狐浏览器屏蔽百度热榜的方法
  20. 微信小程序源代码_模仿音乐播放器Apple Music

热门文章

  1. asp.net 从客户端中检测到有潜在危险的Request.Form值
  2. iOS下载文件,保存路径. 防止加到iCloud备份
  3. Python:通过获取淘宝账号和密码的实验,来看登陆方式选择的重要性
  4. Script to show Active Distributed Transactions
  5. protobuf编码原理及其在schema格式转换的应用
  6. android开发常用的组件,Android开发常用控件与属性
  7. Lambda表达式与委托
  8. 2.2创建Spring数据REST服务
  9. 【渝粤教育】国家开放大学2019年春季 1250文论专题 参考试题
  10. 浏览器相关功能系统调用