37 Best 「software design」 Books of 2024| Books Explorer

In this article, we will rank the recommended books for software design. The list is compiled and ranked by our own score based on reviews and reputation on the Internet.
May include product promotions in this content
Table of Contents
  1. C Programming Language (Prentice Hall Software)
  2. Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems
  3. Clean Code: A Handbook of Agile Software Craftsmanship (Robert C. Martin Series)
  4. The Pragmatic Programmer: From Journeyman to Master
  5. Mythical Man-Month, The: Essays on Software Engineering, Anniversary Edition
  6. A Philosophy of Software Design
  7. Pragmatic Programmer, The: Your journey to mastery, 20th Anniversary Edition
  8. Code Complete 2nd Edition(Dv-Professional)
  9. Working Effectively With Legacy Code
  10. Introduction to Algorithms, fourth edition
Other 27 books
No.2
92

Data is at the center of many challenges in system design today. Difficult issues need to be figured out, such as scalability, consistency, reliability, efficiency, and maintainability. In addition, we have an overwhelming variety of tools, including relational databases, NoSQL datastores, stream or batch processors, and message brokers. What are the right choices for your application? How do you make sense of all these buzzwords?In this practical and comprehensive guide, author Martin Kleppmann helps you navigate this diverse landscape by examining the pros and cons of various technologies for processing and storing data. Software keeps changing, but the fundamental principles remain the same. With this book, software engineers and architects will learn how to apply those ideas in practice, and how to make full use of data in modern applications. Peer under the hood of the systems you already use, and learn how to use and operate them more effectively Make informed decisions by identifying the strengths and weaknesses of different tools Navigate the trade-offs around consistency, scalability, fault tolerance, and complexity Understand the distributed systems research upon which modern databases are built Peek behind the scenes of major online services, and learn from their architectures

Everyone's Review
No.3
92

Even bad code can function. But if code isn’t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn’t have to be that way.Noted software expert Robert C. Martin, presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship. Martin, who has helped bring agile principles from a practitioner’s point of view to tens of thousands of programmers, has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code “on the fly” into a book that will instill within you the values of software craftsman, and make you a better programmer―but only if you work at it.What kind of work will you be doing? You’ll be reading code―lots of code. And you will be challenged to think about what’s right about that code, and what’s wrong with it. More importantly you will be challenged to reassess your professional values and your commitment to your craft.Clean Codeis divided into three parts. The first describes the principles, patterns, and practices of writing clean code. The second part consists of several case studies of increasing complexity. Each case study is an exercise in cleaning up code―of transforming a code base that has some problems into one that is sound and efficient. The third part is the payoff: a single chapter containing a list of heuristics and “smells” gathered while creating the case studies. The result is a knowledge base that describes the way we think when we write, read, and clean code.Readers will come away from this book understandingHow to tell the difference between good and bad code How to write good code and how to transform bad code into good code How to create good names, good functions, good objects, and good classes How to format code for maximum readability How to implement complete error handling without obscuring code logic How to unit test and practice test-driven development What “smells” and heuristics can help you identify bad code This book is a must for any developer, software engineer, project manager, team lead, or systems analyst with an interest in producing better code.

Everyone's Review
No reviews yet.
No.6
82

A newer edition of this book is now available; click on "See all formats and editions" above for details.This book addresses the topic of software design: how to decompose complex software systems into modules (such as classes and methods) that can be implemented relatively independently. The book first introduces the fundamental problem in software design, which is managing complexity. It then discusses philosophical issues about how to approach the software design process, and it presents a collection of design principles to apply during software design. The book also introduces a set of red flags that identify design problems. You can apply the ideas in this book to minimize the complexity of large software systems, so that you can write software more quickly and cheaply.

Everyone's Review
No reviews yet.
No.7
81

“One of the most significant books in my life.” —Obie Fernandez, Author, The Rails Way“Twenty years ago, the first edition of The Pragmatic Programmer completely changed the trajectory of my career. This new edition could do the same for yours.” —Mike Cohn, Author of Succeeding with Agile, Agile Estimating and Planning, and User Stories Applied“. filled with practical advice, both technical and professional, that will serve you and your projects well for years to come.” —Andrea Goulet, CEO, Corgibytes, Founder, LegacyCode.Rocks“. . . lightning does strike twice, and this book is proof.” —VM (Vicky) Brasseur, Director of Open Source Strategy, Juniper NetworksThe Pragmatic Programmer is one of those rare tech books you’ll read, re-read, and read again over the years. Whether you’re new to the field or an experienced practitioner, you’ll come away with fresh insights each and every time.Dave Thomas and Andy Hunt wrote the first edition of this influential book in 1999 to help their clients create better software and rediscover the joy of coding. These lessons have helped a generation of programmers examine the very essence of software development, independent of any particular language, framework, or methodology, and the Pragmatic philosophy has spawned hundreds of books, screencasts, and audio books, as well as thousands of careers and success stories.Now, twenty years later, this new edition re-examines what it means to be a modern programmer. Topics range from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse. Read this book, and you’ll learn how to:Fight software rot Learn continuously Avoid the trap of duplicating knowledge Write flexible, dynamic, and adaptable code Harness the power of basic tools Avoid programming by coincidence Learn real requirements Solve the underlying problems of concurrent code Guard against security vulnerabilities Build teams of Pragmatic Programmers Take responsibility for your work and career Test ruthlessly and effectively, including property-based testing Implement the Pragmatic Starter Kit Delight your users Written as a series of self-contained sections and filled with classic and fresh anecdotes, thoughtful examples, and interesting analogies, The Pragmatic Programmer illustrates the best approaches and major pitfalls of many different aspects of software development. Whether you’re a new coder, an experienced programmer, or a manager responsible for software projects, use these lessons daily, and you’ll quickly see improvements in personal productivity, accuracy, and job satisfaction. You’ll learn skills and develop habits and attitudes that form the foundation for long-term success in your career.You’ll become a Pragmatic Programmer.Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.

Everyone's Review
No reviews yet.
No.10
79

A comprehensive update of the leading algorithms text, with new material on matchings in bipartite graphs, online algorithms, machine learning, and other topics.Some books on algorithms are rigorous but incomplete; others cover masses of material but lack rigor. Introduction to Algorithms uniquely combines rigor and comprehensiveness. It covers a broad range of algorithms in depth, yet makes their design and analysis accessible to all levels of readers, with self-contained chapters and algorithms in pseudocode. Since the publication of the first edition, Introduction to Algorithms has become the leading algorithms text in universities worldwide as well as the standard reference for professionals. This fourth edition has been updated throughout.New for the fourth editionNew chapters on matchings in bipartite graphs, online algorithms, and machine learning New material on topics including solving recurrence equations, hash tables, potential functions, and suffix arrays 140 new exercises and 22 new problems Reader feedback–informed improvements to old problems Clearer, more personal, and gender-neutral writing style Color added to improve visual presentation Notes, bibliography, and index updated to reflect developments in the field Website with new supplementary materialWarning: Avoid counterfeit copies of Introduction to Algorithms by buying only from reputable retailers. Counterfeit and pirated copies are incomplete and contain errors.

Everyone's Review
No reviews yet.
No.12
78

What will you learn from this book?You know you don't want to reinvent the wheel, so you look to Design Patterns: the lessons learned by those who've faced the same software design problems. With Design Patterns, you get to take advantage of the best practices and experience of others so you can spend your time on something more challenging. Something more fun. This book shows you the patterns that matter, when to use them and why, how to apply them to your own designs, and the object-oriented design principles on which they're based. Join hundreds of thousands of developers who've improved their object-oriented design skills through Head First Design Patterns.What's so special about this book?If you've read a Head First book, you know what to expect: a visually rich format designed for the way your brain works. With Head First Design Patterns, 2E you'll learn design principles and patterns in a way that won't put you to sleep, so you can get out there to solve software design problems and speak the language of patterns with others on your team.

Everyone's Review
No reviews yet.
No.14
77

SummaryCSS in Depth exposes you to a world of CSS techniques that range from clever to mind-blowing. This instantly useful book is packed with creative examples and powerful best practices that will sharpen your technical skills and inspire your sense of design.Foreword by Chris Coyier, Cofounder of CodePen.Dig even deeper into the secrets of CSS with our video course CSS in Depth in Motion, available exclusively at Manning.com (www.manning.com/livevideo/css-in-depth-in-motion)!Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.About the TechnologySome websites really pop. They look great, they're visually consistent, and they feel interactive and responsive. You can bet their developers knew CSS in depth. CSS specifies everything from the structural layout of page elements to their individual look and feel. True masters know the patterns of CSS development, the techniques to implement them, and the subtle touches that result in beautiful typography, fluid transitions, and balanced graphics. Join them!About the BookCSS in Depth exposes you to a world of CSS techniques that range from clever to mind-blowing. This instantly useful book is packed with creative examples and powerful best practices that will sharpen your technical skills and inspire your sense of design. You'll gain new insights into familiar features like floats and units, and experiment with emerging ideas like responsive design and pattern libraries. Bottom line: this book will make you a better web designer and your apps will look fantastic!What's InsideAvoid common CSS pitfalls Master misunderstood concepts Use flexbox and grid layout Responsive designs for any device Code for reuse and maintainabilityAbout the ReaderWritten for web developers who know the basics of CSS and HTML.About the AuthorKeith J. Grant is a senior web developer who builds and maintains web applications and websites, including The New York Stock Exchange site.Table of ContentsPART 1 - REVIEWING THE FUNDAMENTALS Cascade, specificity, and inheritance Working with relative units Mastering the box model PART 2 - MASTERING LAYOUT Making sense of floats Flexbox Grid layout Positioning and stacking contexts Responsive design PART 3 - CSS AT SCALE Modular CSS Pattern libraries PART 4 - ADVANCED TOPICS Backgrounds, shadows, and blend modes Contrast, color, and spacing Typography Transitions Transforms Animations

Everyone's Review
No reviews yet.
No.16
76

This newly expanded and updated second edition of the best-selling classic continues to take the "mystery" out of designing algorithms, and analyzing their efficacy and efficiency. Expanding on the first edition, the book now serves as the primary textbook of choice for algorithm design courses while maintaining its status as the premier practical reference guide to algorithms for programmers, researchers, and students. The reader-friendly Algorithm Design Manual provides straightforward access to combinatorial algorithms technology, stressing design over analysis. The first part, Techniques, provides accessible instruction on methods for designing and analyzing computer algorithms. The second part, Resources, is intended for browsing and reference, and comprises the catalog of algorithmic resources, implementations and an extensive bibliography.NEW to the second edition:• Doubles the tutorial material and exercises over the first edition• Provides full online support for lecturers, and a completely updated and improved website component with lecture slides, audio and video • Contains a unique catalog identifying the 75 algorithmic problems that arise most often in practice, leading the reader down the right path to solve them• Includes several NEW "war stories" relating experiences from real-world applications • Provides up-to-date links leading to the very best algorithm implementations available in C, C++, and Java.

Everyone's Review
No reviews yet.
No.17
74

This book addresses the topic of software design: how to decompose complex software systems into modules (such as classes and methods) that can be implemented relatively independently. The book first introduces the fundamental problem in software design, which is managing complexity. It then discusses philosophical issues about how to approach the software design process and it presents a collection of design principles to apply during software design. The book also introduces a set of red flags that identify design problems. You can apply the ideas in this book to minimize the complexity of large software systems, so that you can write software more quickly and cheaply.

Everyone's Review
No reviews yet.
No.19
68

Bad design is everywhere, and its cost is much higher than we think. In this thought-provoking book, authors Jonathan Shariat and Cynthia Savard Saucier explain how poorly designed products can anger, sadden, exclude, and even kill people who use them. The designers responsible certainly didn’t intend harm, so what can you do to avoid making similar mistakes?Tragic Design examines real case studies that show how certain design choices adversely affected users, and includes in-depth interviews with authorities in the design industry. Pick up this book and learn how you can be an agent of change in the design community and at your company.You’ll explore: Designs that can kill, including the bad interface that doomed a young cancer patient Designs that anger, through impolite technology and dark patterns How design can inadvertently cause emotional pain Designs that exclude people through lack of accessibility, diversity, and justice How to advocate for ethical design when it isn’t easy to do so Tools and techniques that can help you avoid harmful design decisions Inspiring professionals who use design to improve our world

Everyone's Review
No reviews yet.
No.20
68

Software engineering education has a problem: universities and bootcamps teach aspiring engineers to write code, but they leave graduates to teach themselves the countless supporting tools required to thrive in real software companies. Building a Career in Software is the solution, a comprehensive guide to the essential skills that instructors don't need and professionals never think to teach: landing jobs, choosing teams and projects, asking good questions, running meetings, going on-call, debugging production problems, technical writing, making the most of a mentor, and much more.In over a decade building software at companies such as Apple and Uber, Daniel Heller has mentored and managed tens of engineers from a variety of training backgrounds, and those engineers inspired this book with their hundreds of questions about career issues and day-to-day problems. Designed for either random access or cover-to-cover reading, it offers concise treatments of virtually every non-technical challenge you will face in the first five years of your career―as well as a selection of industry-focused technical topics rarely covered in training. Whatever your education or technical specialty, Building a Career in Software can save you years of trial and error and help you succeed as a real-world software professional.What You Will Learn Discover every important nontechnical facet of professional programming as well as several key technical practices essential to the transition from student to professional Build relationships with your employerImprove your communication, including technical writing, asking good questions, and public speakingWho This Book is ForSoftware engineers either early in their careers or about to transition to the professional world; that is, all graduates of computer science or software engineering university programs and all software engineering boot camp participants.

Everyone's Review
No reviews yet.
No.21
66

The 6th Edition of Systems Analysis and Design continues to offer a hands-on approach to SAD while focusing on the core set of skills that all analysts must possess. Building on their experience as professional systems analysts and award-winning teachers, authors Dennis, Wixom, and Roth capture the experience of developing and analyzing systems in a way that students can understand and apply. With Systems Analysis and Design, 6th Edition, students will leave the course with experience that is a rich foundation for further work as a systems analyst.

Everyone's Review
No reviews yet.
No.22
65

For courses in structured systems analysis and design. Developing advanced system analystsPrioritizing the practical over the technical, Modern Systems Analysis and Design presents the concepts, skills, methodologies, techniques, tools, and perspectives essential for systems analysts to develop information systems. The authors assume students have taken an introductory course on computer systems and have experience designing programs in at least one programming language. By drawing on the systems development life cycle, the authors provide a conceptual and systematic framework while progressing through topics logically. The 9th edition has been completely revised to adapt to the changing environment for systems development, with a renewed focus on agile methodologies.

Everyone's Review
No reviews yet.
No.23
65

Discover a practical, streamlined approach to information systems development that focuses on the latest developments with Tilley's SYSTEMS ANALYSIS AND DESIGN, 12E and MindTap digital resources. Real examples clearly demonstrate both traditional and emerging approaches to systems analysis and design, including object-oriented and agile methods. You also study cloud computing and mobile applications as this edition presents an easy-to-follow approach to systems analysis and design. Meaningful projects, insightful assignments and both online and printed exercises emphasize the critical thinking and IT skills that are most important in today's dynamic, business-related environment. New MindTap ConceptClip videos and a new online continuing case further demonstrate concepts for success in today's competitive and rapidly changing business world.

Everyone's Review
No reviews yet.
No.24
65

Managing people is difficult wherever you work. But in the tech industry, where management is also a technical discipline, the learning curve can be brutal―especially when there are few tools, texts, and frameworks to help you. In this practical guide, author Camille Fournier (tech lead turned CTO) takes you through each stage in the journey from engineer to technical manager.From mentoring interns to working with senior staff, you’ll get actionable advice for approaching various obstacles in your path. This book is ideal whether you’re a new manager, a mentor, or a more experienced leader looking for fresh advice. Pick up this book and learn how to become a better manager and leader in your organization. Begin by exploring what you expect from a manager Understand what it takes to be a good mentor, and a good tech lead Learn how to manage individual members while remaining focused on the entire team Understand how to manage yourself and avoid common pitfalls that challenge many leaders Manage multiple teams and learn how to manage managers Learn how to build and bootstrap a unifying culture in teams

Everyone's Review
No reviews yet.
No.25
64
Everyone's Review
No reviews yet.
No.26
64

What is it about the top tech product companies such as Amazon, Apple, Google, Netflix and Tesla that enables their record of consistent innovation?Most people think it’s because these companies are somehow able to find and attract a level of talent that makes this innovation possible. But the real advantage these companies have is not so much who they hire, but rather how they enable their people to work together to solve hard problems and create extraordinary products.As legendary Silicon Valley coach--and coach to the founders of several of today’s leading tech companies--Bill Campbell said, “Leadership is about recognizing that there's a greatness in everyone, and your job is to create an environment where that greatness can emerge.”The goal of EMPOWERED is to provide you, as a leader of product management, product design, or engineering, with everything you’ll need to create just such an environment.As partners at The Silicon Valley Product Group, Marty Cagan and Chris Jones have long worked to reveal the best practices of the most consistently innovative companies in the world. A natural companion to the bestseller INSPIRED, EMPOWERED tackles head-on the reason why most companies fail to truly leverage the potential of their people to innovate: product leadership.The book covers: what it means to be an empowered product team, and how this is different from the “feature teams” used by most companies to build technology products recruiting and coaching the members of product teams, first to competence, and then to reach their potential creating an inspiring product vision along with an insights-driven product strategy translating that strategy into action by empowering teams with specific objectives―problems to solve―rather than features to build redefining the relationship of the product teams to the rest of the company detailing the changes necessary to effectively and successfully transform your organization to truly empowered product teamsEMPOWERED puts decades of lessons learned from the best leaders of the top technology companies in your hand as a guide. It shows you how to become the leader your team and company needs to not only survive but thrive.

Everyone's Review
No reviews yet.
No.27
64

What’s so special about design patterns?At any given moment, someone struggles with the same software design problems you have. And, chances are, someone else has already solved your problem. This edition of Head First Design Patterns―now updated for Java 8―shows you the tried-and-true, road-tested patterns used by developers to create functional, elegant, reusable, and flexible software. By the time you finish this book, you’ll be able to take advantage of the best design practices and experiences of those who have fought the beast of software design and triumphed.What’s so special about this book?We think your time is too valuable to spend struggling with new concepts. Using the latest research in cognitive science and learning theory to craft a multi-sensory learning experience, Head First Design Patterns uses a visually rich format designed for the way your brain works, not a text-heavy approach that puts you to sleep.

Everyone's Review
No reviews yet.
No.28
64

This award-winning and bestselling business handbook for digital transformation is now fully updated and expanded with the latest research and new case studies!“[The DevOps Handbook] remains a must-read for any organization seeking to scale up its IT capability and expand DevOps practices across multiple departments or lines of business.” ―Mike Perrow, TechBeaconFor years, The DevOps Handbook has been the definitive guide for taking the successes laid out in the bestselling The Phoenix Project and applying them in any organization. Now, with this fully updated and expanded edition, it's time to take DevOps out of the IT department and apply it across the full business.Technology is now at the core of every company, no matter the business model or product. The theories and practices laid out in The DevOps Handbook are tools to be used by anyone from across the organization to create joy and succeed in the marketplace.The second edition features 15 new case studies, including stories from Adidas, American Airlines, Fannie Mae, Target, and the US Air Force. In addition, renowned researcher and coauthor of Accelerate, Dr. Nicole Forsgren, provides her insights through new and updated material and research. With over 100 pages of new content throughout the book, this expanded edition is a must read for anyone who works with technology.“[The DevOps Handbook is] a practical roadmap to improving IT in any organization. It's also the most valuable book on software development I've read in the past 10 years.” ―Adam Hawkins, software developer and host of the podcast SmallBatches

Everyone's Review
No reviews yet.
No.29
64

Pro Git (Second Edition) is your fully-updated guide to Git and its usage in the modern world. Git has come a long way since it was first developed by Linus Torvalds for Linux kernel development. It has taken the open source world by storm since its inception in 2005, and this book teaches you how to use it like a pro.Effective and well-implemented version control is a necessity for successful web projects, whether large or small. With this book you’ll learn how to master the world of distributed version workflow, use the distributed features of Git to the full, and extend Git to meet your every need.Written by Git pros Scott Chacon and Ben Straub, Pro Git (Second Edition) builds on the hugely successful first edition, and is now fully updated for Git version 2.0, as well as including an indispensable chapter on GitHub. It’s the best book for all your Git needs.

Everyone's Review
No reviews yet.
No.30
63

Increase profitability, elevate work culture, and exceed productivity goals through DevOps practices.More than ever, the effective management of technology is critical for business competitiveness. For decades, technology leaders have struggled to balance agility, reliability, and security. The consequences of failure have never been greater―whether it's the healthcare.gov debacle, cardholder data breaches, or missing the boat with Big Data in the cloud.And yet, high performers using DevOps principles, such as Google, Amazon, Facebook, Etsy, and Netflix, are routinely and reliably deploying code into production hundreds, or even thousands, of times per day.Following in the footsteps of The Phoenix Project, The DevOps Handbook shows leaders how to replicate these incredible outcomes, by showing how to integrate Product Management, Development, QA, IT Operations, and Information Security to elevate your company and win in the marketplace.

Everyone's Review
No reviews yet.
No.31
63

The New York Times best-selling team leadership handbook for modern executives, managers, and organizationsAfter her first two weeks observing the problems at DecisionTech, Kathryn Petersen, its new CEO, had more than a few moments when she wondered if she should have taken the job. But Kathryn knew there was little chance she would have turned it down. After all, retirement had made her antsy, and nothing excited her more than a challenge. What she could not have known when she accepted the job, however, was just how dysfunctional her team was, and how team members would challenge her in ways that no one ever had before.For twenty years, The Five Dysfunctions of a Team has been engaging audiences with a page-turning, realistic fable that follows the travails of Kathryn Petersen, DecisionTech’s CEO, as she faces the ultimate leadership crisis. She must unite a team in such disarray that it threatens to derail the entire company.Equal parts leadership fable and business handbook, this definitive source on teamwork by Patrick Lencioni reveals the five behavioral tendencies that go to the heart of why even the best teams struggle. He offers a powerful model and step-by-step guide for overcoming those dysfunctions and getting every one rowing in the same direction.Today, the lessons in The Five Dysfunctions of a Team are more relevant than ever. This special anniversary edition celebrates one of the best-selling business books of all time with a new foreword from the author that reflects on its legacy and lessons.

Everyone's Review
No reviews yet.
No.34
63

The classic guide to how computers work, updated with new chapters and interactive graphics"For me, Code was a revelation. It was the first book about programming that spoke to me. It started with a story, and it built up, layer by layer, analogy by analogy, until I understood not just the Code, but the System. Code is a book that is as much about Systems Thinking and abstractions as it is about code and programming. Code teaches us how many unseen layers there are between the computer systems that we as users look at every day and the magical silicon rocks that we infused with lightning and taught to think."- Scott Hanselman, Partner Program Director, Microsoft, and host of HanselminutesComputers are everywhere, most obviously in our laptops and smartphones, but also our cars, televisions, microwave ovens, alarm clocks, robot vacuum cleaners, and other smart appliances. Have you ever wondered what goes on inside these devices to make our lives easier but occasionally more infuriating?For more than 20 years, readers have delighted in Charles Petzold's illuminating story of the secret inner life of computers, and now he has revised it for this new age of computing. Cleverly illustrated and easy to understand, this is the book that cracks the mystery. You'll discover what flashlights, black cats, seesaws, and the ride of Paul Revere can teach you about computing, and how human ingenuity and our compulsion to communicate have shaped every electronic device we use.This new expanded edition explores more deeply the bit-by-bit and gate-by-gate construction of the heart of every smart device, the central processing unit that combines the simplest of basic operations to perform the most complex of feats. Petzold's companion website, CodeHiddenLanguage.com, uses animated graphics of key circuits in the book to make computers even easier to comprehend.In addition to substantially revised and updated content, new chapters include: Chapter 18: Let's Build a Clock! Chapter 21: The Arithmetic Logic Unit Chapter 22: Registers and Busses Chapter 23: CPU Control Signals Chapter 24: Jumps, Loops, and Calls Chapter 28: The World BrainFrom the simple ticking of clocks to the worldwide hum of the internet, Code reveals the essence of the digital revolution.

Everyone's Review
No reviews yet.
No.36
63

Refactoring is about improving the design of existing code. It is the process of changing a software system in such a way that it does not alter the external behavior of the code, yet improves its internal structure. With refactoring you can even take a bad design and rework it into a good one. This book offers a thorough discussion of the principles of refactoring, including where to spot opportunities for refactoring, and how to set up the required tests. There is also a catalog of more than 40 proven refactorings with details as to when and why to use the refactoring, step by step instructions for implementing it, and an example illustrating how it works The book is written using Java as its principle language, but the ideas are applicable to any OO language.

Everyone's Review
No reviews yet.
search