Tagged articles

refactoring

426 articles · Page 1 of 5
Java Tech Workshop
Java Tech Workshop
Sep 28, 2026 · Fundamentals

Java Interface Default & Static Methods: Evolution Tool or Maintenance Trap?

This article analyzes Java 8+ interface default and static methods, explaining their original purpose for backward-compatible interface evolution, valid use cases like optional capabilities and mixin-style derived methods, and common pitfalls including hidden assumptions, silent failures, fixed workflows that prevent customization, and binary vs semantic compatibility issues. It includes a real-world refactoring example for payment callback handlers.

Interface Default MethodsInterface EvolutionInterface Static Methods
0 likes · 24 min read
Java Interface Default & Static Methods: Evolution Tool or Maintenance Trap?
Java Tech Enthusiast
Java Tech Enthusiast
Sep 18, 2026 · Fundamentals

The Programmer's Ultimate Revenge: No Comments, Then Quit — And How to Fix Their Mess

A humorous yet practical deep-dive into legacy code horrors — meaningless names, 7-level nesting, 1200-line god methods, magic numbers, and copy-paste duplication — followed by a four-step refactoring playbook (understand, extract, name/comment, optimize) and team-level prevention tactics like code reviews, coding standards, and offboarding rituals.

Code ReviewDesign Patternsclean code
0 likes · 23 min read
The Programmer's Ultimate Revenge: No Comments, Then Quit — And How to Fix Their Mess
Java Architect Essentials
Java Architect Essentials
Sep 16, 2026 · Artificial Intelligence

What Is Codex? OpenAI's AI Coding Agent for Software Engineering

Codex is an AI programming agent that reads repositories, edits files, runs commands and tests, and presents changes for review — ideal for repetitive, well-defined tasks like fixing tests or refactoring, but not for architectural decisions or high-risk changes such as database migrations.

AI programming agentCI debuggingCodex
0 likes · 3 min read
What Is Codex? OpenAI's AI Coding Agent for Software Engineering
IT Architects Alliance
IT Architects Alliance
Sep 16, 2026 · Databases

Firebolt's Microservices Rollback: Lessons on Deployment, Coordination & Fault Isolation

Firebolt consolidated previously independent metadata, identity, and garbage-collection services into its core database process to simplify multi-environment deployment and reduce cross-service coordination, while analyzing trade-offs in fault isolation, resource contention, and the distinction between module and process boundaries.

FireboltMicroservicesdatabase architecture
0 likes · 10 min read
Firebolt's Microservices Rollback: Lessons on Deployment, Coordination & Fault Isolation
Thought Artisan
Thought Artisan
Sep 14, 2026 · R&D Management

Architecture Governance: Why Platform Thinking Beats AI Hype

Experts discuss why software architecture governance—not AI tools—is the key to sustainable development efficiency, illustrating with a case study where refactoring a 480k-line system's core module from 65k to 15k lines resolved persistent bugs and improved maintainability, arguing that deterministic platforms and human cognitive density outweigh AI-generated code.

AI in developmentarchitecture governancecognitive density
0 likes · 11 min read
Architecture Governance: Why Platform Thinking Beats AI Hype
IT Services Circle
IT Services Circle
Sep 11, 2026 · Fundamentals

No Comments, Then Quit: The Code Revenge That Haunts Teams

This article explores the nightmare of inheriting uncommented, poorly structured code from departed developers, illustrating anti-patterns like cryptic naming, deep nesting, magic numbers, and copy-paste duplication, while providing a four-step refactoring guide and team-level prevention strategies including code reviews, coding standards, and offboarding practices.

Code Reviewcode commentscode quality
0 likes · 25 min read
No Comments, Then Quit: The Code Revenge That Haunts Teams
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Sep 9, 2026 · Backend Development

Refactoring 7 Duplicate Notification Services Using Template Method Pattern in Spring Boot

The article demonstrates how to correctly apply the DRY principle by refactoring seven duplicated notification service classes in Spring Boot 3.5.0 using the template method pattern and a NotificationMessage value object, consolidating 40 lines of repeated validation, logging, and error handling into a single abstract base class.

DRY PrincipleDesign PatternsJava
0 likes · 12 min read
Refactoring 7 Duplicate Notification Services Using Template Method Pattern in Spring Boot
samdeepthink
samdeepthink
Sep 8, 2026 · Fundamentals

Why If Nesting Beyond 3 Levels Hides Bugs: Flatten with Guard Clauses

The article demonstrates how deep if nesting (over 3 levels) obscures bugs using a payment callback example where error messages are swapped, then refactors with guard clauses to flatten logic; it also addresses loop nesting by extracting methods to reduce cognitive load, emphasizing keeping conditions close to their handling.

bug preventionclean codecode nesting
0 likes · 10 min read
Why If Nesting Beyond 3 Levels Hides Bugs: Flatten with Guard Clauses
samdeepthink
samdeepthink
Sep 6, 2026 · Backend Development

Functional Core, Imperative Shell: Refactoring Checkout Code for Testability and Reuse

The article demonstrates refactoring a tangled checkout method by separating pure calculation logic into a functional core using Java 17 records and sealed interfaces, leaving IO operations in an imperative shell, resulting in easily testable, reusable code without mocks or Spring containers.

Functional Core Imperative ShellJava 17checkout
0 likes · 10 min read
Functional Core, Imperative Shell: Refactoring Checkout Code for Testability and Reuse
samdeepthink
samdeepthink
Aug 26, 2026 · R&D Management

Understanding Technical Debt: Why Code Becomes a Liability and How to Cut It

The article explains how every line of code adds constraints and maintenance cost, turning code into technical debt, examines why developers often avoid repaying it, and offers practical strategies such as writing less, reusing existing components, and regularly removing dead code to keep debt under control.

code qualitycode reuserefactoring
0 likes · 13 min read
Understanding Technical Debt: Why Code Becomes a Liability and How to Cut It
Architect's Guide
Architect's Guide
Aug 12, 2026 · Backend Development

Six Years In, This Java Code Made Me Cringe

The article recounts a six‑year veteran’s encounter with a tangled Java data‑isolation implementation, explains how a custom MyBatis interceptor and annotation were used to inject and filter an env field across dozens of tables, and reflects on the code smell and refactoring lessons learned.

Custom AnnotationData IsolationInterceptor
0 likes · 13 min read
Six Years In, This Java Code Made Me Cringe
Code Farming
Code Farming
Aug 11, 2026 · Backend Development

Can DDD’s Six‑Step Method Rescue a Broken Microservices Architecture?

The article presents a real‑world case of a ride‑hailing system whose microservices became tangled, and shows how applying Domain‑Driven Design—through strategic design, a six‑step refactoring roadmap, tactical four‑layer architecture, and context mapping—can systematically restore clean, business‑driven services.

DDDDomain-Driven DesignMicroservices
0 likes · 6 min read
Can DDD’s Six‑Step Method Rescue a Broken Microservices Architecture?
Dabaoshi
Dabaoshi
Aug 2, 2026 · Fundamentals

Master the Seven Design Principles Before Tackling Design Patterns

The article explains that design patterns rely on solid design principles—SRP, OCP, LSP, DIP, ISP, LoD, and CARP—using a flawed order‑processing example to show each principle, how to refactor the code, and why over‑engineering must be avoided.

JavaObject-Oriented DesignSOLID
0 likes · 24 min read
Master the Seven Design Principles Before Tackling Design Patterns
YiSu Grain
YiSu Grain
Jul 24, 2026 · Fundamentals

Why Legacy Systems Can't Be Rewritten: Evolution, Maintenance Types & Migration

The article explains that a decade‑old retail core system supporting 600 stores cannot simply be replaced; instead it must be evaluated for business value, classified into maintenance categories, and evolved through static or dynamic changes, using reverse engineering, refactoring, and a phased migration strategy to ensure continuity and data integrity.

architectureevolutionlegacy
0 likes · 28 min read
Why Legacy Systems Can't Be Rewritten: Evolution, Maintenance Types & Migration
IT Learning Made Simple
IT Learning Made Simple
Jul 16, 2026 · R&D Management

Architecture Rot: How Code Degenerates from "Sweet" to "Beast"

The article defines Architecture Rot as the gradual decay of system design, outlines its four stages—healthy, debt accumulation, degradation, and crisis—details code‑level symptoms, business and technical causes, quantitative detection metrics, and presents a step‑by‑step governance plan including prevention, regular health checks, and incremental refactoring using the strangler‑fig pattern.

architecturecode qualityrefactoring
0 likes · 11 min read
Architecture Rot: How Code Degenerates from "Sweet" to "Beast"
IT Learning Made Simple
IT Learning Made Simple
Jul 15, 2026 · Fundamentals

Technical Debt: Why Every Debt Must Be Repaid

The article explains the concept of technical debt, its origins, explicit and implicit forms, sources, interest costs, calculation methods, management practices—including identification, prioritization, repayment strategies, prevention measures, tooling with SonarQube, workshops, OKRs—and debunks common myths about aiming for zero debt.

AgileSonarQubecode quality
0 likes · 12 min read
Technical Debt: Why Every Debt Must Be Repaid
Java Tech Enthusiast
Java Tech Enthusiast
Jul 4, 2026 · Backend Development

New CTO Bans java.util.Date Usage—Why Ignoring It Can Get You Fired

The article explains the fundamental design flaws of java.util.Date—misleading name, mutability, non‑finality, timezone quirks, and legacy numbering—why a CTO may forbid its use, and provides a step‑by‑step guide to replace it with java.time classes such as Instant, LocalDateTime and ZonedDateTime.

BackendJavadate-time
0 likes · 12 min read
New CTO Bans java.util.Date Usage—Why Ignoring It Can Get You Fired
BirdNest Tech Talk
BirdNest Tech Talk
Jul 3, 2026 · Artificial Intelligence

Detecting Code Smells with an AI ‘Smell’ Skill: My Scan of a Fresh Open‑Source Project

The article explains the origin of the term “code smell,” expands the classic catalog to over 50 modern smells, and demonstrates how the AI‑powered /smell skill automatically scans a sizable Go project (Gitlawb/zero), identifies issues such as God objects, long files, and hidden performance hotspots, then generates a prioritized refactoring roadmap.

AI analysisGocode smell
0 likes · 14 min read
Detecting Code Smells with an AI ‘Smell’ Skill: My Scan of a Fresh Open‑Source Project
samdeepthink
samdeepthink
Jun 27, 2026 · Backend Development

Why Embedding Marketing Logic in the Order API Was a Mistake (And How to Fix It)

The article recounts a painful e‑commerce architecture decision where marketing rules were hard‑coded into the order creation flow, causing bloated code, frequent releases, testing overload, and fault propagation, and then explains how introducing a dedicated settlement service restores clean separation and stability.

BackendMicroservicesarchitecture
0 likes · 11 min read
Why Embedding Marketing Logic in the Order API Was a Mistake (And How to Fix It)
BirdNest Tech Talk
BirdNest Tech Talk
Jun 26, 2026 · Fundamentals

Refactoring in the AI Era: Evolving Code for Cleanliness

The article explains how AI‑generated code often arrives as tangled, untested code, and shows how to apply classic refactoring principles—technical debt awareness, the Rule of Three, and a three‑step checklist—through the Goal Workflow /refactor and /smell skills, turning Fowler's book into an executable AI agent that diagnoses and cleans code automatically.

AI agentsautomationcode smells
0 likes · 18 min read
Refactoring in the AI Era: Evolving Code for Cleanliness
大转转FE
大转转FE
Jun 25, 2026 · Backend Development

Refactoring a 1,000‑Line Untested Core File with AI: My Proven Workflow

The author refactors a 1,021‑line, zero‑test IM conversion module that is referenced in five places by building a characterization‑test net with esbuild stubs, generating 130 exhaustive samples, recording a golden baseline, applying three systematic code transformations, and verifying behavior and a 2.77× speedup, all without touching business logic.

AICharacterization TestJavaScript
0 likes · 16 min read
Refactoring a 1,000‑Line Untested Core File with AI: My Proven Workflow
samdeepthink
samdeepthink
Jun 18, 2026 · Fundamentals

Why Code Cleanliness Is a Professional Habit, Not Just a Quirk

The article argues that code cleanliness—careful naming, clear responsibilities, consistent abstraction levels, and purposeful design patterns—boosts maintainability and delivery efficiency, while warning against over‑formatting, premature abstraction, and needless refactoring of legacy code.

Strategy Patternclean codecoding standards
0 likes · 10 min read
Why Code Cleanliness Is a Professional Habit, Not Just a Quirk
ZhiKe AI
ZhiKe AI
Jun 1, 2026 · Fundamentals

When Knowing 7 Development Principles Still Fails: How to Apply DRY, KISS, YAGNI, POLA, and More

The article argues that merely knowing popular coding principles is insufficient, and it provides concrete decision frameworks, code examples, and trade‑off analyses for DRY, KISS, YAGNI, POLA, the Boy Scout Rule, Fail‑Fast, and Separation of Concerns so developers can choose when to abstract, simplify, defer implementation, ensure expected behavior, improve incrementally, expose errors early, and isolate change boundaries.

DRYKISSPOLA
0 likes · 14 min read
When Knowing 7 Development Principles Still Fails: How to Apply DRY, KISS, YAGNI, POLA, and More
Java Tech Workshop
Java Tech Workshop
May 21, 2026 · Backend Development

The Pros and Cons of Java’s var Local Variable Type Inference

This article examines Java's var local‑variable type inference introduced in Java 10, detailing its benefits such as reduced boilerplate, improved readability, and easier refactoring, while also highlighting drawbacks like potential readability loss, ambiguous types, and strict usage constraints that can lead to bugs if misused.

Best PracticesCode ReadabilityJava
0 likes · 26 min read
The Pros and Cons of Java’s var Local Variable Type Inference
AI Step-by-Step
AI Step-by-Step
May 15, 2026 · Artificial Intelligence

AI‑First Architecture Constraints: Tool Limits, Refactor Triggers, and Context

The article examines six practical challenges of AI‑First development—oversized tool libraries, when to trigger refactoring, propagating newly extracted methods, duplicate code from parallel sub‑agents, context aging, and the lack of a unified framework—while presenting concrete solutions such as three‑layer loading, sub‑agent isolation, semantic search, consolidation agents, persistent context files, and adaptive compression strategies.

AI agentsContext ManagementTool Registry
0 likes · 24 min read
AI‑First Architecture Constraints: Tool Limits, Refactor Triggers, and Context
Top Architect
Top Architect
Apr 23, 2026 · Fundamentals

12 Surefire Ways to Write Unmaintainable Code

The article lists twelve concrete anti‑patterns—such as over‑splitting microservices, writing megamethods, deep nesting, misleading comments, copy‑pasting code, ignoring logging, and over‑engineering with heavyweight frameworks—that dramatically reduce code readability and make maintenance a nightmare, illustrated through the fictional programmer Er Gou and his bewildered teammates.

Microservicesbad practicescode quality
0 likes · 13 min read
12 Surefire Ways to Write Unmaintainable Code
FunTester
FunTester
Apr 21, 2026 · Fundamentals

What Real-World Code Changes Teach About Low‑Level Design

The author recounts how maintaining and evolving a long‑lived production system exposed hidden costs of poor low‑level design, leading to a shift from pattern‑first thinking to change‑driven analysis, small incremental refactorings, and ultimately a calmer, more maintainable codebase.

Code MaintainabilityDesign Patternslow-level design
0 likes · 16 min read
What Real-World Code Changes Teach About Low‑Level Design
LuTiao Programming
LuTiao Programming
Apr 8, 2026 · Backend Development

From Chaos to Production: Building a Real Food-Delivery Backend with Spring Boot

The article chronicles the step‑by‑step evolution of a small team’s chaotic food‑delivery backend into a production‑ready system, detailing how they introduced layering, transactions, security, caching, async processing, messaging, observability, scalability, resilience, containerization, and testing using Spring Boot, Kafka, Redis, JWT, and Docker.

DockerKafkaMicroservices
0 likes · 10 min read
From Chaos to Production: Building a Real Food-Delivery Backend with Spring Boot
Java Tech Enthusiast
Java Tech Enthusiast
Mar 26, 2026 · Fundamentals

When Bad Code Leaves: Surviving and Refactoring Legacy Nightmares

The article explores how developers inherit poorly written, uncommented code from departing colleagues, illustrates the pain with real Java examples, and offers a step‑by‑step guide to understand, refactor, and prevent such code‑base sabotage.

Best Practicescode qualitynaming conventions
0 likes · 25 min read
When Bad Code Leaves: Surviving and Refactoring Legacy Nightmares
Sohu Tech Products
Sohu Tech Products
Mar 19, 2026 · Backend Development

Boost Java Backend Efficiency with Qoder AI Plugin in JetBrains IDE

This guide demonstrates how JetBrains IDE users can integrate the Qoder AI plugin to accelerate backend development, covering installation, configuration, performance tuning of deep‑pagination queries, and safe incremental refactoring of legacy Java code with detailed code examples and results.

AIBackendIDE
0 likes · 19 min read
Boost Java Backend Efficiency with Qoder AI Plugin in JetBrains IDE
JavaGuide
JavaGuide
Mar 17, 2026 · Backend Development

Boost Java Backend Productivity with IDEA + Qoder: From Days to Minutes

This article demonstrates how the Qoder AI plugin for JetBrains IDEA can transform lengthy backend tasks—such as deep‑pagination optimization and legacy code refactoring—into rapid, automated workflows, cutting development time from days to under ten minutes while preserving code quality.

AI codingIDEAJava backend
0 likes · 18 min read
Boost Java Backend Productivity with IDEA + Qoder: From Days to Minutes
ITPUB
ITPUB
Mar 7, 2026 · Backend Development

Transform Messy Code with DDD + CQRS: A Practical Guide for Clean Architecture

Learn how to break the cycle of unreadable, tangled code by applying Domain-Driven Design and Command-Query Responsibility Segregation, with concrete examples, step-by-step refactoring, architecture diagrams, code snippets, and practical tips for gradually adopting these patterns in real-world backend projects.

Backend DevelopmentCQRSDDD
0 likes · 16 min read
Transform Messy Code with DDD + CQRS: A Practical Guide for Clean Architecture
IT Services Circle
IT Services Circle
Mar 4, 2026 · Fundamentals

Why utils.py Turns Into a Code Dump and 3 Better Alternatives

A bloated utils.py quickly becomes a maintenance nightmare because it mixes unrelated logic, hides business rules, and creates tight coupling, but by reorganizing functions into domain‑specific modules, class methods, or tiny generic utility packages you can restore clarity, testability, and scalability.

code organizationrefactoringsoftware design
0 likes · 11 min read
Why utils.py Turns Into a Code Dump and 3 Better Alternatives
Old Zhang's AI Learning
Old Zhang's AI Learning
Feb 28, 2026 · Artificial Intelligence

How OpenAI Engineers Leverage Codex: 6 Proven Best Practices

The article reveals how OpenAI’s engineering teams integrate Codex into daily workflows, detailing seven core application scenarios—from code understanding and refactoring to performance optimization and flow maintenance—and presents six concrete best‑practice guidelines for maximizing AI‑assisted development efficiency.

AI code generationBest PracticesCodex
0 likes · 7 min read
How OpenAI Engineers Leverage Codex: 6 Proven Best Practices
Data STUDIO
Data STUDIO
Feb 26, 2026 · Fundamentals

Stop Using a Monolithic utils.py: 3 Design Patterns to Make Your Python Code Cleaner

The article explains why a sprawling utils.py becomes a maintenance nightmare in Python projects, outlines three concrete patterns—module‑level placement, class‑based methods, and small dedicated modules—to restructure code, and provides decision criteria for when a function truly belongs in a utility module.

Design Patternscode organizationmodularization
0 likes · 11 min read
Stop Using a Monolithic utils.py: 3 Design Patterns to Make Your Python Code Cleaner
Code Mala Tang
Code Mala Tang
Feb 19, 2026 · Frontend Development

When AI Becomes a Junior Engineer: Real Front‑End Gains and Limits

AI is not the future of engineering but a tireless junior engineer that can speed up repetitive tasks, mechanical refactoring, and test scaffolding, while still failing at architectural decisions, performance reasoning, and async concurrency, so senior developers must guide and verify its output.

AIfrontendperformance
0 likes · 10 min read
When AI Becomes a Junior Engineer: Real Front‑End Gains and Limits
Tencent Cloud Developer
Tencent Cloud Developer
Feb 4, 2026 · Backend Development

How We Cut Server Costs by 82%: Refactoring a High‑Concurrency QQ Game Service from C++ to Go with Kafka

This article details the redesign of a core QQ game achievement service that suffered from low resource utilization and heavy CAS contention, describing how moving from a synchronous C++ implementation to an asynchronous Go‑Kafka pipeline eliminated lock conflicts, reduced server count by 82%, and dramatically improved latency and stability.

High ConcurrencyKafkarefactoring
0 likes · 11 min read
How We Cut Server Costs by 82%: Refactoring a High‑Concurrency QQ Game Service from C++ to Go with Kafka
Thought Artisan
Thought Artisan
Feb 3, 2026 · Fundamentals

DeepSeek on Structural Thinking: The 3 Levels of Engineering Mastery

The article explores structural thinking as the core mindset of software engineers, breaking it into three levels—conception, insight, and understanding—while emphasizing runtime and evolutionary structures for managing complexity, enabling collaboration, and sustaining long-term system health.

Conway's lawSystem Designcomplexity management
0 likes · 8 min read
DeepSeek on Structural Thinking: The 3 Levels of Engineering Mastery
dbaplus Community
dbaplus Community
Jan 13, 2026 · Backend Development

How AI‑Driven DDD Refactoring Cut Service Package Development from Days to Hours

This article presents a detailed case study of using AI to assist domain‑driven design (DDD) for refactoring Taobao's monolithic flash‑sale service‑package system, showing how automated context extraction, code skeleton generation, and AI‑augmented implementation reduced development effort from 5‑8 person‑days to a configurable solution while improving architecture decoupling, code quality, and extensibility.

AIDomain-Driven DesignMicroservices
0 likes · 15 min read
How AI‑Driven DDD Refactoring Cut Service Package Development from Days to Hours
Programmer1970
Programmer1970
Jan 11, 2026 · Fundamentals

Mastering YAGNI in Java: How to Avoid Premature Architecture

The article explains the YAGNI principle, showing how focusing on current requirements, using simple solutions, and refactoring when real needs arise can prevent over‑engineering, reduce technical debt, and keep Java code clean and adaptable.

DRYJavaKISS
0 likes · 7 min read
Mastering YAGNI in Java: How to Avoid Premature Architecture
AI Insight Log
AI Insight Log
Jan 9, 2026 · Artificial Intelligence

Claude Code Open‑Sources Its Code Simplifier Agent to Tame Messy AI‑Generated Code

Anthropic has open‑sourced the Code Simplifier Agent used in Claude Code, an AI‑powered tool that refactors, clarifies, and cleans code without altering functionality, following strict rules such as preserving behavior, favoring clarity over brevity, avoiding nested ternaries, and respecting project‑specific conventions.

AIClaude Codecode-simplifier
0 likes · 8 min read
Claude Code Open‑Sources Its Code Simplifier Agent to Tame Messy AI‑Generated Code
Code Wrench
Code Wrench
Dec 31, 2025 · Backend Development

Why Go’s Built‑In Toolchain Remains Essential in the AI Era

Even as AI accelerates code generation, this article shows how Go’s native formatting, static analysis, and refactoring tools provide indispensable engineering constraints that keep large‑scale projects maintainable, predictable, and safe during extensive rewrites.

Backendengineeringrefactoring
0 likes · 8 min read
Why Go’s Built‑In Toolchain Remains Essential in the AI Era
ITPUB
ITPUB
Dec 28, 2025 · Backend Development

AI-Driven DDD Refactoring: From Monolithic Service Packages to Modular Architecture

Using AI to assist domain-driven design, this case study details how a monolithic Taobao service-package system was analyzed, restructured, and refactored, reducing development effort from 5-8 person-days per package to configuration-based implementation while eliminating duplicated code and improving modularity, testability, and scalability.

AIDomain-Driven Designrefactoring
0 likes · 16 min read
AI-Driven DDD Refactoring: From Monolithic Service Packages to Modular Architecture
Data STUDIO
Data STUDIO
Dec 25, 2025 · Fundamentals

Boost Python Automation Efficiency with toolz: A Practical Refactoring Guide

This article explains how the pure‑Python functional library toolz can transform tangled automation scripts into clear, composable data pipelines, reducing code size, improving testability, and eliminating hidden technical debt through concrete examples and step‑by‑step refactoring.

Pythonautomationdata pipelines
0 likes · 15 min read
Boost Python Automation Efficiency with toolz: A Practical Refactoring Guide
php Courses
php Courses
Dec 23, 2025 · Backend Development

How to Detect and Fix Common PHP Code Smells for Cleaner, More Maintainable Code

This article explains the concept of code smells in PHP, identifies several frequent issues such as long methods, large classes, duplicate code, excessive comments, complex conditionals, and infinite loops, and provides concrete refactoring examples and best‑practice solutions to improve readability, maintainability, and quality.

code smellsrefactoringsoftware engineering
0 likes · 8 min read
How to Detect and Fix Common PHP Code Smells for Cleaner, More Maintainable Code
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Nov 6, 2025 · Fundamentals

Why Long Functions Hurt Maintainability and How to Refactor Them into Pure Units

Long functions exceeding about 20 lines often hide multiple responsibilities, increase cognitive load, impede testing, and introduce hidden side effects; this article explains the problems, illustrates them with real JavaScript examples, and demonstrates a functional‑programming‑inspired refactor that splits logic into small, pure, testable functions.

Pure Functionscode qualityrefactoring
0 likes · 12 min read
Why Long Functions Hurt Maintainability and How to Refactor Them into Pure Units
macrozheng
macrozheng
Nov 2, 2025 · Backend Development

12 Toxic Coding Habits That Destroy Readability (And How to Avoid Them)

The article humorously outlines twelve detrimental coding habits—from over‑splitting microservices to avoiding logs—that cripple readability and maintainability, illustrating each with a fictional programmer “Er Gou” and warning developers not to follow these anti‑patterns.

Microservicesbad practiceslogging
0 likes · 12 min read
12 Toxic Coding Habits That Destroy Readability (And How to Avoid Them)
Open Source Tech Hub
Open Source Tech Hub
Oct 29, 2025 · Backend Development

Automate PHP Upgrades with Rector: A Step‑by‑Step Guide

This article explains how the Rector tool can automatically refactor and upgrade legacy PHP code—from installation and configuration to real‑world migration scenarios and CI/CD integration—helping developers modernize projects with minimal manual effort.

BackendCode MigrationPHP
0 likes · 6 min read
Automate PHP Upgrades with Rector: A Step‑by‑Step Guide
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Oct 19, 2025 · Backend Development

16+ Proven Techniques to Refactor Java If‑Else into Clean, Maintainable Code

This article presents over sixteen practical refactoring methods for Java, demonstrating how to replace tangled if‑else statements with clearer constructs such as early returns, ternary operators, switch‑case, guard clauses, optional handling, enums, reflection, strategy, and table‑driven approaches, each illustrated with concise code examples.

Design PatternsJavaSpring Boot
0 likes · 16 min read
16+ Proven Techniques to Refactor Java If‑Else into Clean, Maintainable Code
IT Architects Alliance
IT Architects Alliance
Oct 9, 2025 · R&D Management

Boost Development Speed with a Continuous Architecture Improvement Framework

This article explains why enterprises need a systematic, ongoing architecture improvement process, outlines health metrics, debt visualization, refactoring patterns, decision‑record practices, governance automation, observability, and performance measurement to accelerate delivery and reduce technical debt.

architecturecontinuous improvementrefactoring
0 likes · 8 min read
Boost Development Speed with a Continuous Architecture Improvement Framework
IT Architects Alliance
IT Architects Alliance
Oct 7, 2025 · Cloud Native

How to Transform Legacy IT Systems into Cloud‑Native Architecture: A Step‑by‑Step Guide

This article examines the limitations of traditional IT infrastructures and presents a progressive, cloud‑native refactoring roadmap—including containerization, micro‑service migration, Kubernetes orchestration, and DevOps practices—supported by concrete YAML examples and best‑practice recommendations for risk mitigation, cost optimization, and continuous evolution.

DevOpsMicroservicescloud-native
0 likes · 10 min read
How to Transform Legacy IT Systems into Cloud‑Native Architecture: A Step‑by‑Step Guide
JavaScript
JavaScript
Oct 3, 2025 · Fundamentals

How Early Returns Can Simplify Complex If‑Else Logic in JavaScript

This article explains why deeply nested if‑else statements hurt code readability and maintainability, and demonstrates how using early return statements and the Guard Clause pattern can flatten the structure, reduce cognitive load, and improve overall code quality.

JavaScriptcode optimizationguard clauses
0 likes · 5 min read
How Early Returns Can Simplify Complex If‑Else Logic in JavaScript
Deepin Linux
Deepin Linux
Sep 30, 2025 · Fundamentals

Mastering SOLID: Real-World Refactoring of Order Systems for Cleaner Code

This article explains the five SOLID principles—Single Responsibility, Open‑Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion—using an order‑processing system example, showing common violations, step‑by‑step refactorings, practical guidelines, and Java code snippets to improve code modularity, maintainability, and extensibility.

JavaOOPSOLID
0 likes · 32 min read
Mastering SOLID: Real-World Refactoring of Order Systems for Cleaner Code
Alibaba Cloud Developer
Alibaba Cloud Developer
Sep 17, 2025 · Artificial Intelligence

How AI‑Powered Cursor Supercharges Legacy Backend Development

This article demonstrates how the Cursor AI assistant can dramatically accelerate development on an old WebX backend project by automatically generating design plans, code skeletons, SQL mappers, services, and Spring configurations through concise prompts and multi‑turn dialogues, while also showcasing tips for context injection, rule management, and code refactoring.

Cursorrefactoringsoftware automation
0 likes · 15 min read
How AI‑Powered Cursor Supercharges Legacy Backend Development
FunTester
FunTester
Aug 29, 2025 · Fundamentals

How to Tackle Automated Testing in Legacy Systems: Practical Tips & Refactoring

Automated testing is essential but challenging for legacy systems; this guide explains testing types, prioritizes unit and integration tests, classifies code for targeted testing, demonstrates refactoring techniques with Java examples, and applies SOLID principles to improve testability and maintainability of aging codebases.

SOLID principlesautomated testinglegacy code
0 likes · 13 min read
How to Tackle Automated Testing in Legacy Systems: Practical Tips & Refactoring
Architecture Digest
Architecture Digest
Jul 14, 2025 · Fundamentals

How to Eliminate Excessive if…else: 8 Proven Refactoring Techniques

This article examines the problems caused by overusing if…else statements—such as reduced readability, maintainability, and extensibility—and presents eight practical solutions including table‑driven design, chain‑of‑responsibility, annotation‑driven, event‑driven, state machines, Optional, Assert, and polymorphism, plus additional tactics like method extraction and guard clauses.

Design Patternscode qualityif-else
0 likes · 16 min read
How to Eliminate Excessive if…else: 8 Proven Refactoring Techniques
Architect's Guide
Architect's Guide
Jul 5, 2025 · Backend Development

12 Toxic Coding Habits That Destroy Readability (And How to Avoid Them)

The article lists twelve common anti‑patterns—such as over‑splitting microservices, excessive refactoring without rollout, ultra‑long methods, deep nesting, random naming, misleading comments, copy‑paste code, ignored specs, missing logs, and reinventing wheels—that dramatically reduce code readability and increase maintenance difficulty.

Anti-PatternsMicroservicescode quality
0 likes · 11 min read
12 Toxic Coding Habits That Destroy Readability (And How to Avoid Them)
Shepherd Advanced Notes
Shepherd Advanced Notes
Jul 2, 2025 · Fundamentals

45 Tips for Writing Clean, Beautiful Code

This article presents 45 practical coding tips—from naming conventions and formatting to exception handling, thread safety, and design patterns—illustrated with Java examples and real‑world scenarios, helping developers produce readable, maintainable, and robust code.

Best PracticesDesign PatternsThread Safety
0 likes · 29 min read
45 Tips for Writing Clean, Beautiful Code
php Courses
php Courses
Jun 13, 2025 · Backend Development

How to Transform Legacy PHP Code into a Clean, Testable Architecture

Legacy PHP applications often suffer from spaghetti code, global state abuse, mixed concerns, and lack of tests; this guide outlines a step‑by‑step refactoring strategy—adding a testing safety net, introducing dependency injection, separating concerns with MVC/DDD, adopting repository patterns, and leveraging modern tools like Composer and PHPStan—to evolve them into maintainable, testable, and scalable backend systems.

Backend DevelopmentDDDlegacy code
0 likes · 6 min read
How to Transform Legacy PHP Code into a Clean, Testable Architecture
Java Captain
Java Captain
Jun 12, 2025 · Backend Development

12 Toxic Coding Habits That Destroy Readability (And How to Avoid Them)

The article humorously chronicles twelve common anti‑patterns—such as over‑splitting microservices, writing massive methods, deep nesting, random naming, misleading comments, copy‑pasting code, ignoring design docs, and avoiding logging—that severely hurt code readability and maintainability, and explains why they should be avoided.

Code Readabilitybad coding practicesrefactoring
0 likes · 10 min read
12 Toxic Coding Habits That Destroy Readability (And How to Avoid Them)
Top Architect
Top Architect
Jun 11, 2025 · Backend Development

How I Refactored a Bloated Open‑Source Admin into a Lean Backend Solution

The author shares a personal journey from early backend work to full‑stack responsibilities, critiques heavyweight admin frameworks, and explains how they rebuilt a lightweight enterprise admin using MyBatisPlus, Lombok, and streamlined architecture, while outlining future enhancements such as email, payment, multi‑tenant, and distributed scheduling.

JavaLombokMybatisPlus
0 likes · 9 min read
How I Refactored a Bloated Open‑Source Admin into a Lean Backend Solution
Java Tech Enthusiast
Java Tech Enthusiast
May 20, 2025 · Fundamentals

12 Toxic Coding Habits That Destroy Readability (And How to Spot Them)

The article lists twelve common but harmful coding practices—such as over‑splitting micro‑services, writing massive methods, nesting deep conditionals, misusing comments, and avoiding logging—that dramatically reduce code readability and increase maintenance difficulty, illustrated with a fictional programmer’s missteps.

Best PracticesMicroservicescode quality
0 likes · 11 min read
12 Toxic Coding Habits That Destroy Readability (And How to Spot Them)
Full-Stack Internet Architecture
Full-Stack Internet Architecture
May 18, 2025 · Fundamentals

Strategy Design Pattern in Java: Definition, Structure, Example, and Refactoring

This article explains the behavioral Strategy design pattern, describes its definition and structure, demonstrates a real‑world e‑commerce discount scenario with both a tangled if‑else implementation and a clean refactoring using Java interfaces, concrete strategy classes, a context, and a client, and finally discusses its advantages and drawbacks.

Design PatternsJavaObject-Oriented Programming
0 likes · 9 min read
Strategy Design Pattern in Java: Definition, Structure, Example, and Refactoring
Programmer DD
Programmer DD
May 17, 2025 · Backend Development

Why Java Records Beat Lombok @Data: A Practical Migration Guide

This article examines the drawbacks of Lombok—such as reduced readability, IDE instability, and debugging challenges—and demonstrates how replacing Lombok annotations with Java Records, explicit constructors, and MapStruct for mapping yields cleaner, type‑safe, and maintainable code while eliminating boilerplate.

Java RecordsLombokMapStruct
0 likes · 5 min read
Why Java Records Beat Lombok @Data: A Practical Migration Guide
Code Mala Tang
Code Mala Tang
May 3, 2025 · Frontend Development

How Top Engineers Refactor Complex Conditional Logic for Cleaner Code

This article examines why developers often over‑nest and misuse conditional statements, then presents proven techniques—early returns, lookup objects, optional chaining, guard clauses, and state machines—to simplify, improve readability, and make conditional logic more maintainable and scalable.

Code ReadabilityConditional LogicJavaScript
0 likes · 8 min read
How Top Engineers Refactor Complex Conditional Logic for Cleaner Code
phodal
phodal
Apr 29, 2025 · Industry Insights

Designing AI‑Friendly Architecture: Practices, Patterns, and Validation Strategies

This article examines how to build AI‑friendly software architectures by aligning team coding standards, layered design, domain‑driven terminology, prompt‑engineering techniques, project‑specific rules, validation‑first development, and continuous refactoring to improve both human and generative‑AI productivity.

AIValidationrefactoring
0 likes · 29 min read
Designing AI‑Friendly Architecture: Practices, Patterns, and Validation Strategies
JavaScript
JavaScript
Apr 23, 2025 · Fundamentals

Simplify Nested If‑Else Logic with Early Return Refactoring

This article explains how overusing nested if‑else statements harms code readability and maintainability, and demonstrates how replacing them with early return statements and guard clauses can flatten the structure, reduce cognitive load, and improve testability and future modifications.

Code Readabilityif-elserefactoring
0 likes · 4 min read
Simplify Nested If‑Else Logic with Early Return Refactoring
Su San Talks Tech
Su San Talks Tech
Apr 19, 2025 · Backend Development

How to Refactor Smelly if…else Chains in Java: 5 Clean Design‑Pattern Solutions

This article examines the problems of long if…else statements in Java payment services, explains why they violate the Open‑Closed and Single Responsibility principles, and presents five practical refactoring techniques—including annotations, dynamic bean names, template methods, strategy‑factory, and chain‑of‑responsibility patterns—to eliminate the conditional logic.

DesignPatternsJavaOpenClosedPrinciple
0 likes · 16 min read
How to Refactor Smelly if…else Chains in Java: 5 Clean Design‑Pattern Solutions
macrozheng
macrozheng
Apr 9, 2025 · Fundamentals

Why Clean Code Matters: Practical Tips for Naming, Classes, Functions & Testing

This article explains why clean code is essential for productivity and team collaboration, outlines concrete guidelines for meaningful naming, single‑responsibility classes, concise functions, and effective testing, and shows how tools and refactoring can help maintain high code quality.

Best Practicesclean codenaming conventions
0 likes · 14 min read
Why Clean Code Matters: Practical Tips for Naming, Classes, Functions & Testing
Selected Java Interview Questions
Selected Java Interview Questions
Apr 3, 2025 · Fundamentals

How to Write Clean and Maintainable Code: Naming, Classes, Functions, and Testing

This article explains why clean code is essential for team development and provides practical guidelines on naming, class design, function composition, and testing—including SOLID principles, meaningful identifiers, single‑responsibility classes, short functions, and test‑driven development—to improve readability, extensibility, and overall software quality.

clean codenaming conventionsrefactoring
0 likes · 19 min read
How to Write Clean and Maintainable Code: Naming, Classes, Functions, and Testing
KooFE Frontend Team
KooFE Frontend Team
Mar 13, 2025 · Artificial Intelligence

Is AI Accelerating a Hidden Software Crisis? The Rise of Duplicate Code

The article examines how the surge of AI coding assistants is boosting short‑term productivity while sharply reducing refactoring efforts, leading to a surge in duplicated code and raising serious long‑term maintenance and technical‑debt concerns for software projects.

AI code assistantscode duplicationrefactoring
0 likes · 7 min read
Is AI Accelerating a Hidden Software Crisis? The Rise of Duplicate Code
21CTO
21CTO
Feb 27, 2025 · Artificial Intelligence

Are AI Coding Assistants Undermining Code Quality? New Study Reveals Alarming Trends

A recent GitClear analysis of 211 million lines of code shows AI coding assistants are increasing duplicated and copy‑paste code while reducing refactoring, leading to poorer code quality despite claims of productivity gains, and highlights the need for guidelines to mitigate these risks.

AI coding assistantscode qualityduplicate code
0 likes · 5 min read
Are AI Coding Assistants Undermining Code Quality? New Study Reveals Alarming Trends
Efficient Ops
Efficient Ops
Feb 19, 2025 · Fundamentals

Why Do Some Messy Codebases Remain Surprisingly Stable?

The article explores how heavily indebted, poorly designed code—often called a “shit mountain”—can stay stable over time thanks to accumulated technical debt, rigorous testing processes, and continuous maintenance, while highlighting the risks of refactoring or adding new features.

code stabilityrefactoringsoftware engineering
0 likes · 6 min read
Why Do Some Messy Codebases Remain Surprisingly Stable?
JD Tech Talk
JD Tech Talk
Feb 19, 2025 · Frontend Development

From Monolith to Micro‑Frontend: The Evolution and Refactoring of the Xingyun Frontend Platform

This article recounts the architectural challenges of the Xingyun 2.0 frontend platform, explains why its monolithic codebase and build process became unsustainable, and details the step‑by‑step migration to a modular monorepo with micro‑frontend, Nx, pnpm, and Tailwind to improve scalability, maintainability, and developer productivity.

NxTailwindVue
0 likes · 17 min read
From Monolith to Micro‑Frontend: The Evolution and Refactoring of the Xingyun Frontend Platform
JavaScript
JavaScript
Feb 12, 2025 · Frontend Development

8 Essential JavaScript Refactoring Techniques to Write Cleaner, Maintainable Code

Discover eight practical JavaScript refactoring strategies—including extracting reusable functions, using object destructuring, early returns, enum constants, single-responsibility functions, function composition, optional chaining, and pure functions—to boost code readability, maintainability, and testability for modern frontend development.

JavaScriptcode qualityfrontend
0 likes · 4 min read
8 Essential JavaScript Refactoring Techniques to Write Cleaner, Maintainable Code
Code Mala Tang
Code Mala Tang
Jan 27, 2025 · Fundamentals

How to Refactor Flag‑Heavy Python Functions for Cleaner, Scalable Code

This article examines a Python function overloaded with flags, explains why such design harms readability, testability, and extensibility, and demonstrates step‑by‑step refactoring using descriptive helper functions, a pipeline approach, flexible step lists, and type annotations to produce clean, maintainable code.

PythonSingle Responsibilitycode quality
0 likes · 5 min read
How to Refactor Flag‑Heavy Python Functions for Cleaner, Scalable Code
Architect
Architect
Jan 22, 2025 · Frontend Development

Refactoring the External Product Detail Page: SSR Migration, Request Interceptor and Tracking Hook Redesign

This article details the complete redesign of the external product detail page, replacing the uni‑app SPA with a source‑build SSR solution, introducing a split‑first‑screen data strategy, multi‑environment support, risk‑controlled fallback mechanisms, and targeted refactors of request interceptors and tracking hooks, resulting in significant performance and business metric improvements.

SSRfrontendperformance
0 likes · 17 min read
Refactoring the External Product Detail Page: SSR Migration, Request Interceptor and Tracking Hook Redesign
DaTaobao Tech
DaTaobao Tech
Jan 20, 2025 · Fundamentals

Cyclomatic Complexity Management via Function Extraction

The article explains that cyclomatic complexity harms code quality and testability, and shows how using IDEA’s CodeMetrics plugin together with purposeful function extraction—splitting long, complex, or duplicated code into well‑named, reusable methods—reduces complexity, improves readability, and supports maintainable, testable software.

code qualitycyclomatic complexityfunction extraction
0 likes · 10 min read
Cyclomatic Complexity Management via Function Extraction
JD Retail Technology
JD Retail Technology
Jan 10, 2025 · Fundamentals

Clean Code: Principles and Practices for Writing Maintainable Software

The article argues that clean code—characterized by readable naming, minimal comments, short single‑purpose functions, simple control flow, and well‑encapsulated classes—is essential for maintainable software, contrasting it with design patterns and architecture, and demonstrates its benefits through practical refactoring examples and a real‑world case study.

Best Practicesclean codecode quality
0 likes · 20 min read
Clean Code: Principles and Practices for Writing Maintainable Software
Tencent Cloud Developer
Tencent Cloud Developer
Jan 2, 2025 · Backend Development

Rewriting the News Plugin Integration Layer: Design, Benefits, and Refactoring Timing

The article details a nine‑month rewrite of a fragmented 23‑interface news‑plugin integration layer into a single trpc‑go service, showing how unified architecture cut development effort by half, boosted stability above 99.99 %, slashed resource costs, raised test coverage to 66 %, and provides practical criteria for deciding when to refactor.

Backendcase studyperformance
0 likes · 15 min read
Rewriting the News Plugin Integration Layer: Design, Benefits, and Refactoring Timing
BirdNest Tech Talk
BirdNest Tech Talk
Jan 1, 2025 · Fundamentals

20 Essential Programming Rules for Cleaner, Safer Code

This article distills Chris Zimmeman's "Programming Rules" into twenty concrete guidelines—covering simplicity, bug containment, naming, generalization, deferred optimization, code reviews, debugging, refactoring, conventions, and more—each explained with its rationale and core takeaway for developers.

Best PracticesCode Reviewcode quality
0 likes · 15 min read
20 Essential Programming Rules for Cleaner, Safer Code
Zhuanzhuan Tech
Zhuanzhuan Tech
Dec 20, 2024 · Backend Development

State Machine Selection and Refactoring Strategies for Complex Business Scenarios

This article analyzes the problem of exploding state‑branch logic in merchant onboarding and exit flows, presents decoupling, design‑pattern, and state‑machine solutions, compares three Java state‑machine implementations (Zhuozhou, Cola, Spring Statemachine), and offers practical selection guidance for simple to highly complex B2B use cases.

refactoringsoftware architecturestate machine
0 likes · 21 min read
State Machine Selection and Refactoring Strategies for Complex Business Scenarios
Tencent Cloud Developer
Tencent Cloud Developer
Dec 17, 2024 · Fundamentals

38 Practices for Managing Technical Debt and Improving Software Development

The article outlines 38 actionable practices—ranging from treating technical debt like a loan and emphasizing simple, well‑named code to rigorous code reviews, systematic refactoring, comprehensive testing, automation, clear documentation, continuous learning, professional conduct, and solid design principles—to help teams reduce debt, improve quality, and sustain long‑term software health.

code qualitydesign principlesrefactoring
0 likes · 37 min read
38 Practices for Managing Technical Debt and Improving Software Development
Architect
Architect
Dec 11, 2024 · Fundamentals

Mastering Code Refactoring: When, Why, and How to Clean Up Your Java Projects

This article explains the concept of refactoring, distinguishes it from performance optimization, outlines the purposes, timing, and challenges of refactoring, and provides concrete techniques, patterns, and IDE tools—complete with code examples—to help developers improve code structure, readability, and maintainability.

Best PracticesIDE toolsJava
0 likes · 30 min read
Mastering Code Refactoring: When, Why, and How to Clean Up Your Java Projects