Daniel Liang teaches concepts of problem-solving and object-oriented programming using a fundamentals-first approach. Beginning programmers learn critical problem-solving techniques then move on to grasp the key concepts of object-oriented, GUI programming, advanced GUI and Web programming using Java.
Teaching and Learning Experience
To provide a better teaching and learning experience, for both instructors and students, this program offers:
* Fundamentals-First Approach: Basic programming concepts are introduced on control statements, loops, functions, and arrays before object-oriented programming is discussed.
* Problem-Driven Motivation: The examples and exercises throughout the book emphasize problem solving and foster the concept of developing reusable components and using them to create practical projects.
* A Superior Pedagogical Design that Fosters Student Interest: Key concepts are reinforced with objectives lists, introduction and chapter overviews, easy-to-follow examples, chapter summaries, review questions, programming exercises, and interactive self-tests.
* The Most Extensive Instructor and Student Support Package Available: The author maintains a website at www.cs.armstrong.edu/liang/intro10e that includes multiple interactive resources.
Ch1: Introduction to Computers, Programs, and Java
Ch2: Elementary Programming
Ch3: Selections
Ch4: Mathematical Functions, Characters, and Strings
Ch5: Loops
Ch6: Methods
Ch7: Single-Dimensional Arrays
Ch8: Multidimensional Arrays
Ch9: Objects and Classes
Ch10: Object-Oriented Thinking
Ch11: Inheritance and Polymorphism
Ch12: Exception Handling and Text I/O
Ch13: Abstract Classes and Interfaces
Ch14: JavaFX Basics
Ch15: Event-Driven Programming and Animations
Ch16: JavaFX UI Controls and Multimedia
Ch17: BinaryI/O
Ch18: Recursion
Ch19: Generics
Ch20: Lists, Stacks, Queues, and Priority Queues
Ch21: Sets and Maps
Ch22: Developing Efficient Algorithms
Ch23: Sorting
Ch24: Implementing Lists, Stacks, Queues, and Priority Queues
Ch25: Binary Search Trees
Ch26: AVL Trees
Ch27: Hashing
Ch28: Graphs and Applications
Ch29: Weighted Graphs and Applications
Ch30: Multithreading and Parallel Programming
Ch31: Networking
Ch32: Java Database Programming
Ch33: JavaServer Faces
Bonus Chapters 34–42 are available for the Comprehensive Version from the companion Website at www.pearsonhighered.com/liang:
Ch34: Advanced JavaFX
Ch35: Advanced Database Programming
Ch36: Internationalization
Ch37: Servlets
Ch38: JavaServer Pages
Ch39: Web Services
Ch40: 2-4 Trees and B-Trees
Ch41: Red-Black Trees
Ch42: Testing Using JUnit