Op werkdagen voor 23:00 besteld, morgen in huis Gratis verzending vanaf €20
,

Think Java

How to Think Like a Computer Scientist

Paperback Engels 2019
Verkooppositie 4307
Verwachte levertijd ongeveer 8 werkdagen

Samenvatting

Currently used at many colleges, universities, and high schools, this hands-on introduction to computer science is ideal for people with little or no programming experience. The goal of this concise book is not just to teach you Java, but to help you think like a computer scientist. You’ll learn how to program—a useful skill by itself—but you’ll also discover how to use programming as a means to an end.

Authors Allen Downey and Chris Mayfield start with the most basic concepts and gradually move into topics that are more complex, such as recursion and object-oriented programming. Each brief chapter covers the material for one week of a college course and includes exercises to help you practice what you’ve learned.

-Learn one concept at a time: tackle complex topics in a series of small steps with examples
-Understand how to formulate problems, think creatively about solutions, and write programs clearly and accurately
-Determine which development techniques work best for you, and practice the important skill of debugging
-Learn relationships among input and output, decisions and loops, classes and methods, strings and arrays
-Work on exercises involving word games, graphics, puzzles, and playing cards

The updated second edition of Think Java also features new chapters on polymorphism and data processing, as well as content covering changes through Java 12.

Specificaties

ISBN13:9781492072508
Taal:Engels
Bindwijze:paperback
Aantal pagina's:307
Uitgever:O'Reilly
Druk:2
Verschijningsdatum:18-12-2019

Lezersrecensies

Wees de eerste die een lezersrecensie schrijft!

Geef uw waardering

Zeer goed Goed Voldoende Matig Slecht

Over Allen Downey

Allen Downey is a Professor of Computer Science at Olin College of Engineering. He has taught at Wellesley College, Colby College and U.C. Berkeley. He has a Ph.D. in Computer Science from U.C. Berkeley and Master's and Bachelor's degrees from MIT.

Andere boeken door Allen Downey

Over Chris Mayfield

Chris Mayfield is an Assistant Professor of Computer Science at James Madison University, with a research focus on CS education and professional development. He has a Ph.D. in Computer Science from Purdue University and Bachelor's degrees in CS and German from the University of Utah.

Andere boeken door Chris Mayfield

Inhoudsopgave

Preface

The Philosophy Behind the Book
Object-Oriented Programming
Changes to the Second Edition
About the Appendixes
Using the Code Examples
Conventions Used in This Book
O’Reilly Online Learning
How to Contact Us
Acknowledgments

1. Computer Programming
What Is a Computer?
What Is Programming?
The Hello World Program
Compiling Java Programs
Displaying Two Messages
Formatting Source Code
Using Escape Sequences
What Is Computer Science?
Debugging Programs
Vocabulary
Exercises

2. Variables and Operators
Declaring Variables
Assigning Variables
Memory Diagrams
Printing Variables
Arithmetic Operators
Floating-Point Numbers
Rounding Errors
Operators for Strings
Compiler Error Messages
Other Types of Errors
Vocabulary
Exercises

3. Input and Output
The System Class
The Scanner Class
Language Elements
Literals and Constants
Formatting Output
Reading Error Messages
Type Cast Operators
Remainder Operator
Putting It All Together
The Scanner Bug
Vocabulary
Exercises

4. Methods and Testing
Defining New Methods
Flow of Execution
Parameters and Arguments
Multiple Parameters
Stack Diagrams
Math Methods
Composition
Return Values
Incremental Development
Vocabulary
Exercises

5. Conditionals and Logic
Relational Operators
The if-else Statement
Chaining and Nesting
The switch Statement
Logical Operators
De Morgan’s Laws
Boolean Variables
Boolean Methods
Validating Input
Example Program
Vocabulary
Exercises

6. Loops and Strings
The while Statement
Increment and Decrement
The for Statement
Nested Loops
Characters
Which Loop to Use
String Iteration
The indexOf Method
Substrings
String Comparison
String Formatting
Vocabulary
Exercises

7. Arrays and References
Creating Arrays
Accessing Elements
Displaying Arrays
Copying Arrays
Traversing Arrays
Generating Random Numbers
Building a Histogram
The Enhanced for Loop
Counting Characters
Vocabulary
Exercises

8. Recursive Methods
Recursive Void Methods
Recursive Stack Diagrams
Value-Returning Methods
The Leap of Faith
Counting Up Recursively
Binary Number System
Recursive Binary Method
CodingBat Problems
Vocabulary
Exercises

9. Immutable Objects
Primitives Versus Objects
The null Keyword
Strings Are Immutable
Wrapper Classes
Command-Line Arguments
Argument Validation
BigInteger Arithmetic
Incremental Design
More Generalization
Vocabulary
Exercises

10. Mutable Objects
Point Objects
Objects as Parameters
Objects as Return Values
Rectangles Are Mutable
Aliasing Revisited
Java Library Source
Class Diagrams
Scope Revisited
Garbage Collection
Mutable Versus Immutable
StringBuilder Objects
Vocabulary
Exercises

11. Designing Classes
The Time Class
Constructors
Value Constructors
Getters and Setters
Displaying Objects
The toString Method
The equals Method
Adding Times
Vocabulary
Exercises

12. Arrays of Objects
Card Objects
Card toString
Class Variables
The compareTo Method
Cards Are Immutable
Arrays of Cards
Sequential Search
Binary Search
Tracing the Code
Vocabulary
Exercises

13. Objects of Arrays
Decks of Cards
Shuffling Decks
Selection Sort
Merge Sort
Subdecks
Merging Decks
Adding Recursion
Static Context
Piles of Cards
Playing War
Vocabulary
Exercises

14. Extending Classes
CardCollection
Inheritance
Dealing Cards
The Player Class
The Eights Class
Class Relationships
Vocabulary
Exercises

15. Arrays of Arrays
Conway’s Game of Life
The Cell Class
Two-Dimensional Arrays
The GridCanvas Class
Other Grid Methods
Starting the Game
The Simulation Loop
Exception Handling
Counting Neighbors
Updating the Grid
Vocabulary
Exercises

16. Reusing Classes
Langton’s Ant
Refactoring
Abstract Classes
UML Diagram
Vocabulary
Exercises

17. Advanced Topics
Polygon Objects
Adding Color
Regular Polygons
More Constructors
An Initial Drawing
Blinking Polygons
Interfaces
Event Listeners
Timers
Vocabulary
Exercises

A. Tools
Installing DrJava
DrJava Interactions
Command-Line Interface
Command-Line Testing
Running Checkstyle
Tracing with a Debugger
Testing with JUnit
Vocabulary

B. Javadoc
Reading Documentation
Writing Documentation
Javadoc Tags
Example Source File
Vocabulary

C. Graphics
Creating Graphics
Graphics Methods
Example Drawing
Vocabulary
Exercises

D. Debugging
Compile-Time Errors
The compiler is spewing error messages.
I’m getting a weird compiler message, and it won’t go away.
I can’t get my program to compile no matter what I do.
I did what the compiler told me to do, but it still doesn’t work.
Run-Time Errors
My program hangs.
When I run the program, I get an exception.
I added so many print statements I get inundated with output.
Logic Errors
My program doesn’t work.
I’ve got a big, hairy expression and it doesn’t do what I expect.
My method doesn’t return what I expect.
My print statement isn’t doing anything.
I’m really, really stuck and I need help.
No, I really need help.
I found the bug!

Index

Managementboek TOP 5

Rubrieken

Populaire producten

    Personen

      Trefwoorden

        Think Java