Opis ebooka: Refactoring at Scale
Making significant changes to large, complex codebases is a daunting task--one that's nearly impossible to do successfully unless you have the right team, tools, and mindset. If your application is in need of a substantial overhaul and you're unsure how to go about implementing those changes in a sustainable way, then this book is for you.
Software engineer Maude Lemaire walks you through the entire refactoring process from start to finish. You'll learn from her experience driving performance and refactoring efforts at Slack during a period of critical growth, including two case studies illustrating the impact these techniques can have in the real world. This book will help you achieve a newfound ability to productively introduce important changes in your codebase.
- Understand how code degrades and why some degradation is inevitable
- Quantify and qualify the state of your codebase before refactoring
- Draft a well-scoped execution plan with strategic milestones
- Win support from engineering leadership
- Build and coordinate a team best suited for the project
- Communicate effectively inside and outside your team
- Adopt best practices for successfully executing the refactor
Wybrane bestsellery
-
Dzięki temu praktycznemu przewodnikowi komfortowo rozpoczniesz pracę z platformą streamingową Apache Kafka. Poznasz najlepsze praktyki w zakresie jej wdrażania i konfiguracji, aby zapewnić sobie możliwość strumieniowego przetwarzania dużych ilości danych. Zaznajomisz się z AdminClient API Kafki, ...
Kafka w praktyce. Przetwarzanie strumieniowe i potoki danych o dużej skali. Wydanie II Kafka w praktyce. Przetwarzanie strumieniowe i potoki danych o dużej skali. Wydanie II
(39.90 zł najniższa cena z 30 dni)54.45 zł
99.00 zł(-45%) -
Get up to speed on Scala--the JVM, JavaScript, and natively compiled language that offers all the benefits of functional programming, a modern object model, and an advanced type system. Packed with code examples, this comprehensive book shows you how to be productive with the language and ecosyst...(211.65 zł najniższa cena z 30 dni)
220.15 zł
259.00 zł(-15%) -
Ten przystępny podręcznik przeznaczono dla programistów, którzy chcą poznać język Scala, aby wykorzystywać go do pisania współbieżnych, skalowalnych i reaktywnych aplikacji. Przedstawiono tu podstawy niezbędne do rozpoczęcia kodowania w Scali: składnię języka, podstawowe typy danych, literały czy...(24.90 zł najniższa cena z 30 dni)
36.84 zł
67.00 zł(-45%) -
Apache Spark is a ?exible in-memory framework that allows processing of both batch and real-time data. Its unified engine has made it quite popular for big data use cases. This book will help you to quickly get started with Apache Spark 2.0 and write efficient big data applications for a variety ...
Apache Spark Quick Start Guide. Quickly learn the art of writing efficient big data applications with Apache Spark Apache Spark Quick Start Guide. Quickly learn the art of writing efficient big data applications with Apache Spark
-
Design patterns make developers’ lives easier by helping them write great software that is easy to maintain, runs efficiently, and is valuable to the company or people concerned. In this book, you’ll learn about the various features of Scala and will be able to apply well-known, ind...
Scala Design Patterns. Design modular, clean, and scalable applications by applying proven design patterns in Scala - Second Edition Scala Design Patterns. Design modular, clean, and scalable applications by applying proven design patterns in Scala - Second Edition
-
This book presents unique techniques to conquer different Big Data processing and analytics challenges using Hadoop. Practical examples are provided to boost your understanding of Big Data concepts and their implementation. By the end of the book, you will have all the knowledge and skills you ne...
Modern Big Data Processing with Hadoop. Expert techniques for architecting end-to-end big data solutions to get valuable insights Modern Big Data Processing with Hadoop. Expert techniques for architecting end-to-end big data solutions to get valuable insights
-
Poznaj podstawy teoretyczne programowania funkcyjnego, a następnie zacznij zgłębiać tajniki typów funkcyjnych, rekurencji oraz zmiennych niepodlegających modyfikacji. Z kolejnych rozdziałów dowiedz się, czym są ewaluacja rygorystyczna i nierygorystyczna. Zobacz też, jak wykonać dopasowanie do wzo...(29.40 zł najniższa cena z 30 dni)
34.30 zł
49.00 zł(-30%) -
Jeśli sięgniesz po tę książkę, błyskawicznie nauczysz się budować strony WWW przy użyciu serwletów i stron JSP. W kolejnych rozdziałach poznasz bardziej zaawansowane narzędzia — szkielet Struts 2, Spring Web MVC oraz JSF 2. Podczas tworzenia aplikacji działających w środowisku wirtualnej ma...(24.90 zł najniższa cena z 30 dni)
36.84 zł
67.00 zł(-45%) -
Why learn Scala? You don’t need to be a data scientist or distributed computing expert to appreciate this object-oriented functional programming language. This practical book provides a comprehensive yet approachable introduction to the language, complete with syntax diagrams, examples, and...
Learning Scala. Practical Functional Programming for the JVM Learning Scala. Practical Functional Programming for the JVM
(126.65 zł najniższa cena z 30 dni)126.65 zł
149.00 zł(-15%) -
Learning Concurrent Programming in Scala. Dive into the Scala framework with this programming guide, created to help you learn Scala and to build intricate, modern, scalable concurrent applications Learning Concurrent Programming in Scala. Dive into the Scala framework with this programming guide, created to help you learn Scala and to build intricate, modern, scalable concurrent applications
Ebooka "Refactoring at Scale" przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka "Refactoring at Scale" posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video "Refactoring at Scale" zobaczysz:
-
w aplikacjach Ebookpoint i Videopoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych z dostępem do najnowszej wersji Twojej przeglądarki internetowej
Szczegóły ebooka
- ISBN Ebooka:
- 978-14-920-7548-6, 9781492075486
- Data wydania ebooka:
- 2020-10-13 Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@ebookpoint.pl.
- Język publikacji:
- angielski
- Rozmiar pliku ePub:
- 9.9MB
- Rozmiar pliku Mobi:
- 23.4MB
Spis treści ebooka
- Preface
- Who Should Read This Book
- Why I Wrote This Book
- Navigating This Book
- Conventions Used in This Book
- Using Code Examples
- OReilly Online Learning
- How to Contact Us
- Acknowledgments
- I. Introduction
- 1. Refactoring
- What Is Refactoring?
- What Is Refactoring at Scale?
- Why Should You Care About Refactoring?
- Benefits of Refactoring
- Developer Productivity
- Identifying Bugs
- Risks of Refactoring
- Serious Regressions
- Unearthing Dormant Bugs
- Scope Creep
- Unnecessary Complexity
- When to Refactor
- Small Scope
- Code Complexity Actively Hinders Development
- Shift in Product Requirements
- Performance
- Using a New Technology
- When Not to Refactor
- For Fun or Out of Boredom
- Because You Happened to Be Passing By
- To Making Code More Extendable
- When You Dont Have Time
- Our First Refactoring Example
- Simplifying Conditionals
- Extracting Magic Numbers
- Extracting Self-Contained Logic
- 2. How Code Degrades
- Why Understanding Code Degradation Matters
- Requirement Shifts
- Scalability
- Accessibility
- Device Compatibility
- Environmental Changes
- External Dependencies
- Unused Code
- Changes in Product Requirements
- Tech Debt
- Working Around Technology Choices
- Persistent Lack of Organization
- Moving Too Quickly
- Applying Our Knowledge
- II. Planning
- 3. Measuring Our Starting State
- Why Is Measuring the Impact of a Refactor Difficult?
- Measuring Code Complexity
- Halstead Metrics
- Cyclomatic Complexity
- NPath Complexity
- Lines of Code
- Test Coverage Metrics
- Documentation
- Formal Documentation
- Informal Documentation
- Version Control
- Commit Messages
- Commits in Aggregate
- Reputation
- Building a Complete Picture
- 4. Drafting a Plan
- Defining Your End State
- On the Road
- At Work
- Defining Your End State
- Mapping the Shortest Distance
- On the Road
- At Work
- Identifying Strategic Intermediate Milestones
- On the Road
- At Work
- 1. Does this step feel attainable in a reasonable period?
- 2. Is this step valuable on its own?
- 3. If something comes up, could we stop at this step and pick it back up easily later?
- Choosing a Rollout Strategy
- Dark Mode/Light Mode
- Smart DNAs Rollout
- Cleaning Up Artifacts
- Referencing Metrics in Your Plan
- Interpolating Goal Metrics to Intermediate Milestones
- Distinct Milestone Metrics
- Estimating
- Sharing Your Plan with Other Teams
- Transparency
- Perspective
- Refined Plan
- 5. Getting Buy-In
- Why Your Manager Is Not Onboard
- Managers Arent Coding
- Managers Are Evaluated Differently
- Managers See the Risk
- Managers Need to Coordinate
- Why Your Manager Is Not Onboard
- Strategies for Making a Compelling Argument
- Using Conversational Devices
- Compliment their thought process
- Present the counter-argument
- Using Conversational Devices
- Building an Alignment Sandwich
- Rallying your teammates
- Skip-level
- Departments
- Tapping into influential engineers
- Relying on Evidence
- Playing Hardball
- Stop doing unrewarded maintenance work
- Giving an ultimatum
- Buy-In Shapes the Refactor
- 6. Building the Right Team
- Identifying Different Kinds of Experts
- Matchmaking
- Experts of Many Trades
- Revisiting Active Contributors
- Biases in Our Expert List
- Types of Refactoring Teams
- Owners
- Option 1: One team migrates all tests
- Option 2: Teams update their own tests
- Striking a balance
- Owners
- Proposed Approach
- Cleanup Crews
- The Pitch
- Metrics
- Generosity
- Opportunity
- Bartering
- Repeat
- A Few Outcomes
- Realistic Scenario
- Worst-Case Scenario
- Fostering Strong Teams
- III. Execution
- 7. Communication
- Within Your Team
- Stand-Ups
- Weekly Syncs
- Retrospectives
- Within Your Team
- Outside Your Team
- When Kicking Off the Project
- Choosing a single source of truth
- Setting expectations
- When Kicking Off the Project
- During Project Execution
- Progress announcements
- Execution plan
- Seeking feeback from senior engineers
- Always Iterate
- 8. Strategies for Execution
- Team Building
- Pair Programming
- Keeping Everyone Motivated
- Motivating individuals
- Motivating teams
- Team Building
- Keeping a Tally
- Intermediate Metric Measurements
- Unearthed Bugs
- Clean-Up Items
- Out-of-Scope Items
- Programming Productively
- Prototyping
- Keep Things Small
- Test, Test, Test
- Asking the Stupid Question
- Conclusion
- 9. Making the Refactor Stick
- Fostering Adoption
- Education
- Active Education
- Workshops
- Office hours
- Engineering gatherings
- Active Education
- Passive Education
- Reinforcement
- Progressive Linting
- Code Analysis Tools
- Gates Versus Guardrails
- Integrating Improvement into the Culture
- IV. Case Studies
- 10. Case Study: Redundant Database Schemas
- Slack 101
- Slack Architecture 101
- Scalability Problems
- Booting Up the Slack Client
- File Visibility
- Mentions
- Consolidating the Tables
- Gathering the Scattered Queries
- Developing a Migration Strategy
- Quantifying Our Progress
- Attempting to Keep the Team Motivated
- Communicating Our Progress
- Tidying Up
- Lessons Learned
- Develop a Well-Defined, Well-Communicated Plan
- Understand the Codes History
- Ensure Adequate Test Coverage
- Keep Your Team Motivated
- Focus on Strategic Milestones
- Identify and Rely on Meaningful Metrics
- Takeaways
- 11. Case Study: Migrating to a New Database
- Workspace-Sharded Data
- Migrating channels_members to Vitess
- Sharding Scheme
- Developing a New Schema
- User-sharded membership table
- Channel-sharded table schema
- Detangling JOINs
- A Difficult Rollout
- Backfill Mode
- Dark Mode
- Performance
- Data discrepancies
- Light Mode
- Sunset Mode
- Tidying Up
- Lessons Learned
- Set Realistic Estimates
- Source the Teammates You Need
- Plan Scope Carefully
- Choose a Single Place for Project Communication
- Design a Thoughtful Rollout Plan
- Takeaways
- Index
O'Reilly Media - inne książki
-
JavaScript gives web developers great power to create rich interactive browser experiences, and much of that power is provided by the browser itself. Modern web APIs enable web-based applications to come to life like never before, supporting actions that once required browser plug-ins. Some are s...(177.65 zł najniższa cena z 30 dni)
186.15 zł
219.00 zł(-15%) -
How will software development and operations have to change to meet the sustainability and green needs of the planet? And what does that imply for development organizations? In this eye-opening book, sustainable software advocates Anne Currie, Sarah Hsu, and Sara Bergman provide a unique overview...(160.65 zł najniższa cena z 30 dni)
177.65 zł
209.00 zł(-15%) -
OpenTelemetry is a revolution in observability data. Instead of running multiple uncoordinated pipelines, OpenTelemetry provides users with a single integrated stream of data, providing multiple sources of high-quality telemetry data: tracing, metrics, logs, RUM, eBPF, and more. This practical gu...(143.65 zł najniższa cena z 30 dni)
152.15 zł
179.00 zł(-15%) -
Interested in developing embedded systems? Since they don't tolerate inefficiency, these systems require a disciplined approach to programming. This easy-to-read guide helps you cultivate good development practices based on classic software design patterns and new patterns unique to embedded prog...(152.15 zł najniższa cena z 30 dni)
160.65 zł
189.00 zł(-15%) -
If you use Linux in your day-to-day work, then Linux Pocket Guide is the perfect on-the-job reference. This thoroughly updated 20th anniversary edition explains more than 200 Linux commands, including new commands for file handling, package management, version control, file format conversions, an...(92.65 zł najniższa cena z 30 dni)
101.15 zł
109.00 zł(-7%) -
Gain the valuable skills and techniques you need to accelerate the delivery of machine learning solutions. With this practical guide, data scientists, ML engineers, and their leaders will learn how to bridge the gap between data science and Lean product delivery in a practical and simple way. Dav...(245.65 zł najniższa cena z 30 dni)
254.15 zł
299.00 zł(-15%) -
This practical book provides a detailed explanation of the zero trust security model. Zero trust is a security paradigm shift that eliminates the concept of traditional perimeter-based security and requires you to "always assume breach" and "never trust but always verify." The updated edition off...(203.15 zł najniższa cena z 30 dni)
211.65 zł
249.00 zł(-15%) -
Decentralized finance (DeFi) is a rapidly growing field in fintech, having grown from $700 million to $100 billion over the past three years alone. But the lack of reliable information makes this area both risky and murky. In this practical book, experienced securities attorney Alexandra Damsker ...(203.15 zł najniższa cena z 30 dni)
211.65 zł
249.00 zł(-15%) -
Whether you're a startup founder trying to disrupt an industry or an entrepreneur trying to provoke change from within, your biggest challenge is creating a product people actually want. Lean Analytics steers you in the right direction.This book shows you how to validate your initial idea, find t...(126.65 zł najniższa cena z 30 dni)
126.65 zł
149.00 zł(-15%) -
When it comes to building user interfaces on the web, React enables web developers to unlock a new world of possibilities. This practical book helps you take a deep dive into fundamental concepts of this JavaScript library, including JSX syntax and advanced patterns, the virtual DOM, React reconc...(194.65 zł najniższa cena z 30 dni)
211.65 zł
249.00 zł(-15%)
Dzieki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka, którą chcesz zamówić pochodzi z końcówki nakładu. Oznacza to, że mogą się pojawić drobne defekty (otarcia, rysy, zagięcia).
Co powinieneś wiedzieć o usłudze "Końcówka nakładu":
- usługa obejmuje tylko książki oznaczone tagiem "Końcówka nakładu";
- wady o których mowa powyżej nie podlegają reklamacji;
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka drukowana
Oceny i opinie klientów: Refactoring at Scale Maude Lemaire (0) Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.