Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Hands-On Design Patterns with Java

You're reading from   Hands-On Design Patterns with Java Learn design patterns that enable the building of large-scale software architectures

Arrow left icon
Product type Paperback
Published in Apr 2019
Publisher Packt
ISBN-13 9781789809770
Length 360 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Dr. Edward Lavieri Jr. Dr. Edward Lavieri Jr.
Author Profile Icon Dr. Edward Lavieri Jr.
Dr. Edward Lavieri Jr.
Arrow right icon
View More author details
Toc

Table of Contents (15) Chapters Close

Preface 1. Section 1: Introducing Design Patterns
2. Unified Modeling Language Primer FREE CHAPTER 3. Object-Oriented Design Patterns 4. Section 2: Original Design Patterns
5. Behavioral Design Patterns 6. Creational Design Patterns 7. Structural Design Patterns 8. Section 3: New Design Patterns
9. Architectural Patterns - Part I 10. Architectural Patterns - Part II 11. Functional Design Patterns 12. Reactive Design Patterns 13. Assessments 14. Other Books You May Enjoy

Understanding the memoization design pattern

The memoization functional design pattern stores the results of key functions so that overall processing efficiency is increased. When there are specific processes that have the same output each time they are invoked, it is less costly, from a processing time perspective, to cache the results instead of recalculating them each time.

The Fibonacci sequence is often used to demonstrate memoization, so it shall be used here as well.

Fibonacci numbers are a mathematical construct where each number is the sum of the two preceding numbers. The Fibonacci sequence starts with the numbers 0 and 1.

Let's start by looking at a standard implementation of the Fibonacci sequence. Here is the source code:

public class FibonacciTest1 {

public static int computeFibonacciNumber(int number) {

// this checks for the fibonacci base of 0 and...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime