万象云档 本次搜索耗时 1.531 秒,为您找到 149 个相关结果.
  • 第1章 对象入门

    第1章 对象入门 第1章 对象入门 “为什么面向对象的编程会在软件开发领域造成如此震憾的影响?” 面向对象编程(OOP)具有多方面的吸引力。对管理人员,它实现了更快和更廉价的开发与维护过程。对分析与设计人员,建模处理变得更加简单,能生成清晰、易于维护的设计模式。对程序员,对象模型显得如此高雅和浅显。此外,面向对象工具以及库的巨大威力使编程成为一项更使...
  • 3.5.1 程序开发过程

    3.5.1 程序开发过程 3.5.1 程序开发过程 软件工程将软件系统的开发过程划分为前后相继的若干个阶段,称为系统开发生命周期(SDLC),开发人员必须严格遵循 SDLC 来开发软件系统。SDLC 包括分析当前系统、定义 新系统的需求、设计新系统、开发新系统、实现新系统和评估新系统等阶段。本书主要关注 程序设计,所以下面我们只讨论“开发新系统”这个阶...
  • 10.6 不可计算的问题

    10.6 不可计算的问题 10.6 不可计算的问题 到目前为止,我们讨论的所有问题都是可解的。有些问题的解法非常有效,有些问题的 解法则比较复杂。Hanoi 塔之类的问题称为难解问题,因为当问题规模较大时,相应算法需 要太多太多的时间(或空间)来完成计算,事实上是无效、不可行的解法。 现实中还存在比难解问题更麻烦的问题,那就是不可解问题。考虑这个场...
  • 7.2 深入理解

    7.2 深入理解 7.2.1 方法调用的绑定 7.2.2 产生正确的行为 7.2.3 扩展性 7.2 深入理解 对于Music.java 的困难性,可通过运行程序加以体会。输出是Wind.play() 。这当然是我们希望的输出,但它看起来似乎并不愿按我们的希望行事。请观察一下tune() 方法: public static void ...
  • 13.4 捕获事件

    13.4 捕获事件 13.4 捕获事件 大家可注意到假如编译和运行上面的程序片,按下按钮后不会发生任何事情。必须进入程序片内部,编写用于决定要发生什么事情的代码。对于由事件驱动的程序设计,它的基本目标就是用代码捕获发生的事件,并由代码对那些事件作出响应。事实上,GUI的大部分内容都是围绕这种事件驱动的程序设计展开的。 经过本书前面的学习,大家应该有了...
  • 2.7 编程案例:查找问题

    2.7 编程案例:查找问题 2.7 编程案例:查找问题 下面我们通过一个简单程序来综合应用本章所介绍的知识。 实际应用中经常遇到“查找”问题:即从一个数据集中查找我们需要的数据。查找技术 是程序设计的一个重要技术,存在着许多高效的查找算法。在此,我们考虑一种很简单的查 找问题。场景:下面我们编一个小程序。基本的 IPO 模式。 假如我们要编一个程序...
  • 参考文献

    参考文献 参考文献 [1] Algorithmics, The Spirit of Computing, D. Harel, Y. Feldman,电子版。 [2] Computational Thinking, J. M. Wing, CACM, Vol. 49, No. 3, 2006。 [3] How to Think Like a Comp...
  • 2.6 构建Java程序

    2.6 构建Java程序 2.6.1 名字的可见性 2.6.2 使用其他组件 2.6.3 static 关键字 2.6 构建Java程序 正式构建自己的第一个Java程序前,还有几个问题需要注意。 2.6.1 名字的可见性 在所有程序设计语言里,一个不可避免的问题是对名字或名称的控制。假设您在程序的某个模块里使用了一个名字,而另一名程序员在另...
  • 6.5 MapReduce

    6.5 MapReduce 方法介绍 基础架构 MapReduce模式 问题实例 6.5 MapReduce 方法介绍 MapReduce是一种计算模型,简单的说就是将大批量的工作(数据)分解(MAP)执行,然后再将结果合并成最终结果(REDUCE)。这样做的好处是可以在任务被分解后,可以通过大量机器进行并行计算,减少整个操作的时间。但如果你...
  • 3.5.2 结构化程序设计的基本内容

    3.5.2 结构化程序设计的基本内容 3.5.2 结构化程序设计的基本内容 简单问题的求解过程通常是直接了当的,可选择的执行路径不多;但对于复杂问题,一般能设计出多种求解过程。在各种求解过程中,有些过程会比其他过程“好”,当然这个“好” 的意义是依赖于具体问题的。打个比方,为了烧一壶开水,恐怕所有人都会按照“向壶中加 入冷水;壶放到炉子上;点火烧至沸腾...