Best New Free Computer IT Training Tutorial Resources
Free Computer and I.T. Books

March 6, 2011

Programming in Java Online Textbook

Here is another online programming textbook from Princeton, Introduction to Programming in Java. It teaches the classic elements of programming, using an "objects-in-the-middle" approach that emphasizes data abstraction. The author uses specific applications, taken from fields ranging from materials science to genomics to astrophysics to internet commerce, to teach and demonstrate the programming concepts and techniques presented. Also available are hundreds of easily downloadable Java programs and real-world data sets.

Chapter 1: Elements of Programming
introduces variables; assignment statements; built-in types of data; conditionals and loops; arrays; and input/output, including graphics and sound.

Chapter 2: Functions

introduces modular programming. We stress the fundamental idea of dividing a program into components that can be independently debugged, maintained, and reused.

Chapter 3: Object-Oriented Programming

introduces data abstraction. We emphasize the concept of a data type and its implementation using Java's class mechanism.

Chapter 4: Algorithms and Data Structures

introduces classical algorithms for sorting and searching, and fundamental data structures, including stacks, queues, and symbol tables.

To get started.
Here are instructions for installing a Java programming environment on your Mac OS X, Windows, or Linux computer.

Full programming model.
Also provided are I/O libraries for reading and writing text and binary data, drawing graphics, and producing sound.

Here are Lecture Slides and Demos that accompany this textbook, An Introduction to Programming in Java:

Elements of Programming:
1.1  Your First Program
1.2  Built-In Types of Data
1.3  Conditionals and Loops  While loop
1.4  Arrays  Shuffle
1.5  Input and Output
1.6  Random Surfer

2.1  Functions  Function call
2.2  Libraries and Clients
2.3  Recursion  Factorial  Euclid  Towers of Hanoi
2.4  Percolation  Depth-first search

Object-Oriented Programming:
3.1  Data Types
3.2  Creating Data Types  Mandelbrot explorer  Mandelbrot song
3.3  Designing Data Types
3.4  N-Body Simulation
3.5  Purple America  US Elections (1960 - 2008)

Algorithms and Data Structures:
4.1  Performance
4.2  Sorting and Searching  Binary search  Merge
4.3  Stacks and Queues  Linked list  Iteration
4.4  Symbol Tables  Inorder  GrowingTree
4.5  Small-World Phenomenon  BFS  Oracle of Kevin Bacon

Tags for this post>> |

Powered by WordPress