之前几篇博客一大堆废话,着实浪费时间也没啥实际作用。除了总结一些java的知识点外,再用一些比喻或者形象化的语言来表述这些知识点,无可厚非。但是,现在看来,应当减少这种堆满偏理论式偏方法性的内容的博客写作。实在是精力有限。在这种信息爆炸的时代,过往时间的纯洁性会逐渐丧失,只有高效地掌握信息运用信息才不会被世界远远抛在身后。
面向对象和面对过程。这里拿个例子简单说明一下。一个问题:如何把大象装进冰箱?面向过程:1.人完成打开冰箱的动作。2.人完成把大象装进冰箱的动作。3.人完成关上冰箱的动作。面向对象:1.人:我要解决把大象装进冰箱这个问题。2.冰箱:收到指示依次完成打开冰箱、装进大象、关上冰箱的动作。面向过程只是单纯地解决一件事情,而面向过程是对面向过程解决这一件事情本质的抽象,达到能够完成解决一类事情的目的。这一点和我们所处世界一样,我们总是想着举一反三,找到一些事物的本质规律以此更好地解决类似的问题。这么说也许还是有点不太清楚,下面看一看《Head First Java》中是如何用具体的问题加代码来说明面向过程和面向对象的区别。这一部分留到下一篇博客。
最后谈一下《Head First Java》中用面向对象的思想设计一个游戏的思路。照理说应该也要谈一谈用面向过程来设计,以此对照,这里就留到下篇再谈。看书之后我的看法是:1.游戏。2.人。这一点是从问题上出发。实际程序设计,从程序出发是这样:1.启动游戏。2.运行游戏。3.结束游戏。我所谈的到“人”也就是问题的解决者,只充当一个问题解决的设计者。游戏是一个对象,一个object。实例变量是游戏的状态:运行/关闭以及游戏的基本参数,而方法是游戏的行为:启动、运行(包括了游戏规则)、关闭。这里就这个问题只是从整体上谈了一下,看起来就一个单薄的object。但是现实世界丰富多彩,到处都充满了object,而这些object再加上它们之间的关系就构成一个整体,the world。
原文地址:https://www.cnblogs.com/Alan-h/p/10010285.html