计算机科学导论:伟大思想与Java程序设计 英文版

计算机科学导论:伟大思想与Java程序设计 英文版
作 者: Alan Biermann Dietolf Ramm
出版社: 高等教育出版社
丛编项: 国外优秀信息科学与技术系列教学用书
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: JAVA
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《计算机科学导论:伟大思想与Java程序设计 英文版》作者简介

内容简介

本书以通俗易懂的语言深入浅出地介绍了计算机学科的主要分支领域,以此阐述了本学科的一些核心思想和研究方法,并结合Java语言介绍程序设计方法的有关内容。本书试图将庞杂深奥的学科内容归纳提炼为易于理解的形式,并通过一些实例进行说明,使学生能够初步理解和体会本学科的一些基本思想方法。主要内容包括:万维网;Java语言程序设计;数值计算机与函数;自顶向下程序设计,子程序与数据库应用;图形处理,类与对象;计算机描述;软件工程;计算机结构;程序语言翻译;计算机虚拟环境;计算机安全;计算机通信;程序执行时间;并行计算;不可计算性;人工智能等。作者AlanW.Biermann教授是美国杜克大学计算机科学系主任,DietolfRamm是该系副教授。内容:1万维网2Java及其相关知识3数值计算与函数研究4自顶向下程序设计、子程序与数据库应用案例5图形学、类与对象6计算机模拟7软件工程8计算机体系结构9程序语言翻译10计算虚拟环境11计算机安全12计算机通信13程序执行时间14并行计算15不可计算性16人工智能

图书目录

内容:1. 万维网 2. Java及其相关知识 3. 数值计算与函数研究 4. 自顶向下程序设计、子程序与数据库应用案例 5. 图形学、类与对象 6. 计算机模拟 7. 软件工程 8. 计算机体系结构 9. 程序语言翻译 10. 计算虚拟环境 11. 计算机安全 12. 计算机通信 13. 程序执行时间 14. 并行计算 15.不可计算性 16.人工智能

Studying Academic Computer Science: An Introduction

Rumors

Studying Computer Science

An Approach for Nonmathematical Readers

1. The World Wide Web

World History and Where We Are

Let's Create Some Web Pages

More HTML

We Love HTML,But...

Summary

2. Watch Out: Here Comes Java

Let's Put Some Action into Those Web Pages

The Big Deal:Computer Programming

Object-Oriented Programming

The Java Programming Language

Decision Trees

Getting Started in Programming

Program Form and Statement Details

Program Execution

Interactive Programs and Buttons

Reading and Storing Data

Programming Decision Trees

*The Arrow Notation and Its Uses

*A Set of Rules for Java

Summary

3. Numerical Computation and a Study of Functions

Let's Calculate Some Numbers

Simple Calculations

Functions

Looping and a Study of Fuctions

Searching for the Best Value

Storing Information in Arrays

Finding Sums,Minima,and Maxima

Putting Things in a Row,and a Special Characteristic of Functions

*Putting the Functions in a Row

Summary

4. Top-Down Programming, Subroutines, and a Database Application

Let's Solve a Mystery

Top-Down Programming and the Database Program

Subroutines

Subroutines with Internal Variables

Subroutines with Array Parameters

Subroutine Communication Examples

Storing and Printing Facts for the Database

Representing Questions and Finding Their Answers

Assembling the Database Program and Adding Components

*Recursion

Summary

5. Graphics, Classes, and Objects

Calling All Artists

Graphics Primitives

Let's Draw Some Pictures

Let's Create a Class Called House

Adding Features to the House Class

Creating a Village

Subclasses and the Java Class Hierarchy

Summary

6. Simulation

Predicting the Future

How Do You Win an Auto Race?A Simulation

*Avoiding the Plague:A Simulation

*Have You Ever Observed Evolution in Action?A Simulation

*What Will It Look Like?A Simulation

Summary

7. Software Engineering

The Real World

Lessons Learned from Large-Scale Programming Projects

Software Engineering Methodologies

The Program Life Cycle

Summary

8. Machine Architecture

When You Buy a Computer

A Sample Architecture:The P88 Machine

Programming the P88 Machine

Summary

9. Language Translation

Enabling the Computer to Understand Java

Syntactic Production Rules

Attaching Semantics to the Rules

The Semantics of Java

*The Translation of Looping Programs

Programming Languages

Summary

10. Virtual Environments for Computing

Use Your Imagination

Using an Operating System

Hardware Pragmatics

The Operating System

Files

*Contention for Memory and Paging

Summary

11. Security, Privacy, and Wishful Thinking

What's Really Going on Here?

Good Passwords and Cracking

Encryption

Modern Encryption

Attacks

Summary

12. Computer Communications

Exploration

Layers and Local Area Networks(LANs)

Wide Area Networks

The Internet Protocol(IP) Layer and Above

*More on Addressing

Networked Servers

More Network-Based Applications

The Changing Internet

Summary

13. Program Execution Time

On the Limitations of Computer Science

Program Execution Time

Tractable Computations

Intractable Computations

Some Practical Problems with Very Expensive Solutions

Diagnosing Tractable and Intractable Problems

*Approximate Solutions to Intractable Problems

Summary

14. Parallel Computation

Using Many Processors Together

Parallel Computation

Communicating Processes

Parallel Computation on a Saturated Machine

Variations on Architecture

*Connectionist Architectures

*Learning the Connectionist Weights

Summary

15. Noncomputability

Speed Is Not Enough

On the Existence of Noncomputable Functions

Programs That Read Programs

Solving the Halting Problem

Examples of Noncomputable Problems

*Proving Noncomputability

Summary

16. Artificial Intelligence

The Dream

Representing Knowledge

Understanding

Learning

Frames

An Application:Natural Language Processing

Reasoning

Game Playing

*Game Playing:Historical Remarks

Expert Systems

Perspective

Summary

Appendix:The IntField and DoubleField Classes

Readings

Index