Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Refactoring in Java

You're reading from   Refactoring in Java Improving code design and maintainability for Java developers

Arrow left icon
Product type Paperback
Published in Dec 2023
Publisher Packt
ISBN-13 9781805126638
Length 292 pages
Edition 1st Edition
Languages
Arrow right icon
Author (1):
Arrow left icon
Stefano Violetta Stefano Violetta
Author Profile Icon Stefano Violetta
Stefano Violetta
Arrow right icon
View More author details
Toc

Table of Contents (15) Chapters Close

Preface 1. Part 1: Introduction to Refactoring
2. Chapter 1: What is Refactoring? 3. Chapter 2: Good Coding Habits 4. Part 2: Essence of Refactoring and Good Code
5. Chapter 3: Code Smells 6. Chapter 4: Testing 7. Chapter 5: Refactoring Techniques 8. Chapter 6: Metaprogramming 9. Chapter 7: Static and Dynamic Analysis 10. Part 3: Further Learning FREE CHAPTER
11. Chapter 8: Crafting Quality Every Day 12. Chapter 9: Beyond Code – Mastering Software Architecture 13. Index 14. Other Books You May Enjoy

What this book covers

Chapter 1, What is Refactoring?, starts with the fundamental concepts, explaining what is meant by refactoring and why it is important. Faced with many possible opportunities for refactoring, let’s learn to understand how to give each opportunity the right importance, i.e., which one to refactor first. We also understand when it is not necessary to refactor.

Chapter 2, Good Coding Habits, covers the topic of writing high-quality code by day-to-day habits. What is good code? What is bad code? We will delve into this and briefly explore the concept of clean code. We’ll talk about the SOLID principles of software design, and also about the importance of (not using) side effects and mutability and common causes of bad code.

Chapter 3, Code Smells, is about the most frequent “red flags” that you can step into when going through your codebase; those red flags should immediately catch the eye of a professional. Recognizing them (and thus avoiding them) is a crucial part of our skills.

Chapter 4, Testing, is about the importance of the testing phase. Why is it important and why do you have to test as often as you can? We’ll learn about unit testing and how we can be sure that most of our codebase is covered by tests. We’ll go into Test Driven Development.

Chapter 5, Refactoring Techniques, is an overview of the main “tricks” that we can adopt to get rid of the code smells we discovered in Chapter 3. We’ll learn to write better methods and move code when necessary; we’ll organize data and simplify both conditional logic and method calls. We’ll also discuss generalization.

Chapter 6, Metaprogramming, is about... not writing code! In other terms, we can use well-tested and well-grounded frameworks and libraries to write the code for us, avoiding reinventing the wheel.

Chapter 7, Static and Dynamic Analysis, talks about how we can be sure we’re on the right path. The chapter delves into the concept of code analysis and program analysis, also exploring some tools that can be very useful in understanding how far we are from the quality threshold we want to set.

Chapter 8, Crafting Quality Every Day, tells us about the little and big actions that we can put in place during our day-to-day work routine. From code versioning to code formatting, from code reviews to pair programming, we can incorporate a lot of small but constant effort to keep our codebase clean and maintainable.

Chapter 9, Mastering Software Architecture, lifts our gaze and talks about the architecture of a software project. It explains what architecture is and what it is made of; it tells us about the main architectural patterns. Just as we did for individual pieces of code, we discussed which are the main architectural red flags to avoid.

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
Banner background image