Programming patterns are solutions to problems that require the creation of a small fragment of code that will be part of a larger program. Hence, this book is about teaching you how to write such fragments of code. However, it is not about teaching you the syntax of the statements in the fragments, it assumes that you already know the syntax. Instead, it is about finding solutions to problems that arise when first learning to program.
Patterns can be used to teach problem solving at various levels of abstraction (which are inversely related to the level of detail). Programming patterns are solutions to problems that require the creation of a small fragment of code that will be part of a larger program. Hence, this book is about teaching you how to write such fragments of code. However, it is not about teaching you the of the statements in the fragments, it assumes that you already know the syntax. Though the syntax of a particular programming language can be confusing at first, it is, actually, fairly easy to learn and, given a solution to a problem, it is fairly easy to write the code that implements it. It’s much more difficult to come up with the solution, and that’s what this book will teach you to do.
After you finish reading this book you will have a library of solutions that you can use, and an understanding of how to add to that library.
Conditions of Use
This book is licensed under a Creative Commons License (CC BY-NC-SA). You can download the ebook Patterns for Beginning Programmers for free.
- Title
- Patterns for Beginning Programmers
- Subtitle
- With Examples in Java
- Publisher
- James Madison University Libraries
- Author(s)
- David Bernstein
- Published
- 2022-05-06
- Edition
- 1
- Format
- eBook (pdf, epub, mobi)
- Pages
- 197
- Language
- English
- License
- CC BY-NC-SA
- Book Homepage
- Free eBook, Errata, Code, Solutions, etc.
Cover Title Page Copyright Table Of Contents Preface List of Figures List of Tables Patterns Requiring Knowledge of Types, Variables, and Arithmetic Operators Updating Swapping Digit Manipulation Arithmetic on the Circle Truncation Patterns Requiring Knowledge of Logical and Relational Operators, Conditions, and Methods Indicators Indicator Methods Rounding Starts and Completions Bit Flags Digit Counting Patterns Requiring Knowledge of Loops, Arrays, and I/O Reprompting Accumulators Accumulator Arrays Lookup Arrays Interval Membership Conformal Arrays Segmented Arrays Patterns Requiring Advanced Knowledge of Arrays and Arrays of Arrays Subarrays Neighborhoods Patterns Requiring Knowledge of String Objects Centering Delimiting Strings Dynamic Formatting Pluralization Patterns Requiring Knowledge of References Chained Mutators Outbound Parameters Missing Values Checklists