Tagged articles
1187 articles
Page 4 of 12
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Nov 22, 2023 · Fundamentals

Understanding the Five Creational Design Patterns

This article provides a comprehensive overview of the five creational design patterns—Singleton, Abstract Factory, Factory Method, Builder, and Prototype—explaining their concepts, UML structures, implementation details, typical use cases, advantages, disadvantages, and includes Java code examples and diagrams.

Creational PatternsDesign PatternsSoftware Architecture
0 likes · 9 min read
Understanding the Five Creational Design Patterns
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Nov 17, 2023 · Fundamentals

Factory Method Pattern: Definition, Structure, Implementation, Advantages, and Use Cases

This article explains the Factory Method design pattern, covering its definition, UML diagram, key participants, the problems it solves compared to the Simple Factory, step‑by‑step Java implementation with code examples, advantages, disadvantages, application scenarios, and differences from the Simple Factory pattern.

Design PatternsFactory MethodObject-Oriented
0 likes · 8 min read
Factory Method Pattern: Definition, Structure, Implementation, Advantages, and Use Cases
政采云技术
政采云技术
Nov 16, 2023 · Fundamentals

Comprehensive Guide to Software Architecture Design and Practices

This article provides an extensive overview of software architecture, covering its definition, history, core concepts, design principles, complexity sources, design process, performance, high availability, scalability, and practical implementation techniques for large‑scale web systems.

MicroservicesScalabilitySoftware Architecture
0 likes · 24 min read
Comprehensive Guide to Software Architecture Design and Practices
DevOps
DevOps
Nov 12, 2023 · Fundamentals

Software Engineer Self‑Improvement: Principles for Code Review, Testing, and Architecture

This article extends the ideas from "13 Years of Coding at Tencent" by presenting a comprehensive set of engineering self‑cultivation principles—including bias, entropy control, test‑driven design, early and automated testing, unified terminology, domain‑driven design, framework decoupling, and disciplined code encapsulation—to help developers write higher‑quality, maintainable code.

Code reviewDevOpsSoftware Architecture
0 likes · 23 min read
Software Engineer Self‑Improvement: Principles for Code Review, Testing, and Architecture
Alibaba Cloud Developer
Alibaba Cloud Developer
Nov 7, 2023 · Frontend Development

How to Turn Technical Debt into Growth: Refactoring Lessons from Alibaba Cloud

This article shares a developer’s three‑year journey on Alibaba Cloud’s platform, exploring the nature of technical debt, categorizing its causes, and illustrating how micro‑refactorings and configuration‑driven upgrades can steadily improve code quality, accelerate feature delivery, and align engineering with business goals.

ConfigurationSoftware ArchitectureTechnical Debt
0 likes · 10 min read
How to Turn Technical Debt into Growth: Refactoring Lessons from Alibaba Cloud
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Nov 6, 2023 · Fundamentals

Seven Fundamental Design Principles Behind Design Patterns

This article provides a comprehensive overview of design patterns by first explaining the seven core design principles—Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion, and others—detailing their definitions, benefits, UML diagrams, practical examples, and offering a downloadable PDF for deeper study.

Design PatternsSOLIDSoftware Architecture
0 likes · 12 min read
Seven Fundamental Design Principles Behind Design Patterns
DaTaobao Tech
DaTaobao Tech
Nov 3, 2023 · Fundamentals

Mastering the Strategy Pattern: From Simple IF‑ELSE to Scalable Design

This article explains why hard‑coded if‑else logic hinders extensibility, introduces the Strategy pattern, shows its structure and Java implementation for data synchronization, then enhances the design with a Factory to decouple object creation, concluding with best‑practice recommendations.

Design PatternsFactory PatternObject-Oriented Design
0 likes · 8 min read
Mastering the Strategy Pattern: From Simple IF‑ELSE to Scalable Design
Top Architect
Top Architect
Nov 2, 2023 · Fundamentals

Designing Effective Software Architecture Diagrams: Concepts, Types, and Best Practices

This article explains the fundamental concepts of software architecture, the purpose and classification of architecture diagrams, criteria for good diagrams, and introduces the C4 modeling approach with practical examples to help engineers create clear, self‑describing visualizations for various audiences.

C4 ModelSoftware ArchitectureSystem Design
0 likes · 13 min read
Designing Effective Software Architecture Diagrams: Concepts, Types, and Best Practices
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Nov 2, 2023 · Fundamentals

Understanding the Proxy Design Pattern with Java Examples

This article explains the Proxy design pattern, illustrates its core participants with clear Chinese idiom analogies, and provides a complete static‑proxy implementation in Java—including interface, real subject, proxy class, and client code—while also noting the distinction between static and dynamic proxies.

Design PatternsProxy PatternSoftware Architecture
0 likes · 6 min read
Understanding the Proxy Design Pattern with Java Examples
DaTaobao Tech
DaTaobao Tech
Nov 1, 2023 · Fundamentals

Understanding the Chain of Responsibility Design Pattern

The Chain of Responsibility pattern links a series of handler objects so that a request can be passed along until one processes it, decoupling sender and receiver, supporting dynamic composition, runtime flexibility, and the Open/Closed principle, as illustrated by a Java leave‑approval workflow.

Chain of ResponsibilityCode ExampleSoftware Architecture
0 likes · 12 min read
Understanding the Chain of Responsibility Design Pattern
Test Development Learning Exchange
Test Development Learning Exchange
Oct 29, 2023 · Fundamentals

Common Design Patterns in Python

This article lists and briefly explains fifteen common Python design patterns, including Singleton, Factory, Abstract Factory, Builder, Prototype, Adapter, Decorator, Proxy, Observer, Strategy, Template Method, Iterator, Chain of Responsibility, Command, and State, helping developers understand their purposes and usage.

Design PatternsFactoryPython
0 likes · 4 min read
Common Design Patterns in Python
Architect
Architect
Oct 27, 2023 · Fundamentals

Can Clean Architecture Transform Your Codebase? A Deep Dive into Design

This article explains why software architecture matters, defines the essence of Clean Architecture, compares it with Hexagonal and DDD layered models, and walks through a practical, step‑by‑step process—from business analysis and domain modeling to layer implementation and code examples—showing how to reduce complexity and maintenance cost.

BackendClean ArchitectureDDD
0 likes · 21 min read
Can Clean Architecture Transform Your Codebase? A Deep Dive into Design
Bilibili Tech
Bilibili Tech
Oct 27, 2023 · Game Development

Optimizing Global Game Publishing Efficiency with ONE SDK/API: Architecture, Metrics, and Practices

Bilibili’s ONE SDK/API unifies 22 fragmented game SDK variants across brands, regions, and devices into a single, adapter‑based package with centralized parameter management and automated multi‑channel builds, slashing global integration time from 60 to 15 days, cutting parameter awareness by 90 % and duplicate development effort by at least 75 %.

SDKSoftware Architectureefficiency
0 likes · 30 min read
Optimizing Global Game Publishing Efficiency with ONE SDK/API: Architecture, Metrics, and Practices
Test Development Learning Exchange
Test Development Learning Exchange
Oct 25, 2023 · Fundamentals

Understanding the Command Pattern with Python Examples

This article explains the Command design pattern, describes its key participants and advantages, and provides five Python examples demonstrating command encapsulation, undo/redo functionality, file operations, shopping‑cart management, and menu handling to illustrate how the pattern decouples request senders from receivers.

Command PatternDecouplingDesign Patterns
0 likes · 9 min read
Understanding the Command Pattern with Python Examples
Java Architect Essentials
Java Architect Essentials
Oct 23, 2023 · Backend Development

Design Patterns Employed in the MyBatis Framework

This article analyzes the MyBatis source code, illustrating how it applies a variety of design patterns—including Factory, Singleton, Builder, Adapter, Proxy, Composite, Decorator, Template, Strategy, and Iterator—to solve complex architectural challenges and improve modularity, extensibility, and maintainability.

Design PatternsFactory PatternMyBatis
0 likes · 8 min read
Design Patterns Employed in the MyBatis Framework
Test Development Learning Exchange
Test Development Learning Exchange
Oct 22, 2023 · Fundamentals

Master 10 Essential Python Design Patterns with Ready-to-Run Code

This article introduces ten classic software design patterns—Singleton, Factory, Observer, Strategy, Adapter, Builder, Prototype, Decorator, Template Method, and Facade—explaining their purpose, structure, and providing complete Python code examples that demonstrate how to implement and apply each pattern in real projects.

CreationalDesign PatternsSoftware Architecture
0 likes · 9 min read
Master 10 Essential Python Design Patterns with Ready-to-Run Code
DaTaobao Tech
DaTaobao Tech
Oct 20, 2023 · Backend Development

DDD Principles Overview and Lecture Series

This article provides direct links to a comprehensive DDD lecture series covering domain primitives, architectural fundamentals, the repository pattern, and best practices for designing a robust domain‑driven design in their projects, offering developers practical examples and essential guidance for implementing effective domain‑driven design.

DDDSoftware Architecturebackend-development
0 likes · 1 min read
DDD Principles Overview and Lecture Series
MaGe Linux Operations
MaGe Linux Operations
Oct 18, 2023 · Fundamentals

Mastering Software Architecture Diagrams: From 4+1 to C4 Views

This article explains the purpose and definition of system architecture, outlines the differences between business, application, technical, and data architectures, and introduces the 4+1 and C4 diagram models with practical guidance on creating clear, audience‑focused architectural drawings.

4+1 viewC4 ModelSoftware Architecture
0 likes · 9 min read
Mastering Software Architecture Diagrams: From 4+1 to C4 Views
Architecture Digest
Architecture Digest
Oct 18, 2023 · Fundamentals

How to Create Clear System Architecture Diagrams: 4+1 and C4 Views

This article explains the purpose and classification of system architecture diagrams, introduces the 4+1 and C4 view models, and provides practical guidance on drawing effective, audience‑focused diagrams that are self‑descriptive, consistent, and aligned with code.

4+1 viewC4 ModelSoftware Architecture
0 likes · 10 min read
How to Create Clear System Architecture Diagrams: 4+1 and C4 Views
Continuous Delivery 2.0
Continuous Delivery 2.0
Oct 17, 2023 · Fundamentals

Software Engineering Principles: Code Review, Entropy Control, Test Design, and Architectural Practices

This article presents a comprehensive set of software engineering principles—including obsessive code detail, entropy control, test‑driven design, domain‑driven modeling, and disciplined coding habits—to improve code quality, maintainability, and team collaboration across development projects.

DDDSoftware ArchitectureSoftware Testing
0 likes · 21 min read
Software Engineering Principles: Code Review, Entropy Control, Test Design, and Architectural Practices
Tencent Cloud Developer
Tencent Cloud Developer
Oct 16, 2023 · Fundamentals

Software Engineering Principles: Code Review, Testing, and Architecture

The article expands on prior reflections by urging engineers to adopt a paranoid, entropy‑controlling mindset, design for testability, apply domain‑driven design, keep frameworks peripheral, enforce purposeful encapsulation and explicitness, and treat code as a craft, inviting community discussion.

Code reviewDDDSoftware Architecture
0 likes · 22 min read
Software Engineering Principles: Code Review, Testing, and Architecture
JD Tech
JD Tech
Oct 11, 2023 · Fundamentals

Key Considerations for Building System Engineering Architecture: Design, Technology Selection, and Consensus

This article comprehensively discusses the essential aspects of constructing a system engineering architecture, emphasizing value‑first decision making, layered and DDD architectural patterns, technology selection criteria, exception handling, logging, monitoring, and the importance of establishing shared consensus among teams.

DDDException HandlingSoftware Architecture
0 likes · 26 min read
Key Considerations for Building System Engineering Architecture: Design, Technology Selection, and Consensus
JD Cloud Developers
JD Cloud Developers
Sep 26, 2023 · Backend Development

How Rich Models Supercharge DDD Entity Design and Boost Maintainability

Rich (or active) models embed behavior and aggregation relationships directly within DDD entities, contrasting with anemic models; this approach clarifies business logic, reduces glue code, and improves readability, though it can cause entity bloat, prompting strategies like external service classes, utility helpers, and careful injection handling.

DDDEntity DesignRich Model
0 likes · 6 min read
How Rich Models Supercharge DDD Entity Design and Boost Maintainability
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Sep 26, 2023 · Fundamentals

Understanding the Strategy Pattern in JavaScript

This article explains the Strategy design pattern, demonstrates its implementation in JavaScript through three code versions, discusses the drawbacks of naïve if‑else approaches, and outlines the pattern's advantages and disadvantages for creating flexible, maintainable code.

Design PatternsJavaScriptSoftware Architecture
0 likes · 6 min read
Understanding the Strategy Pattern in JavaScript
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Sep 20, 2023 · Fundamentals

Observer Design Pattern in Java: Concepts, UML, and Full Code Example

This article explains the Observer behavioral design pattern, describes its participants, illustrates a real‑world e‑commerce scenario, and provides complete Java code for the observer interface, subject interface, concrete subject, concrete observers, and a test client, concluding with the pattern’s benefits.

Design PatternsObserver PatternSoftware Architecture
0 likes · 7 min read
Observer Design Pattern in Java: Concepts, UML, and Full Code Example
Amap Tech
Amap Tech
Sep 15, 2023 · R&D Management

Understanding Architecture: Goals, Resources, Behaviors, and Decision‑Making for Architects

The article broadens software architecture beyond structural design to encompass people, processes, and business value, urging architects to balance realistic, flexible goals, limited resources, commercial‑focused behaviors, and industry trends so they can deliver cost‑effective, scalable solutions that align technology with organizational objectives.

Resource ManagementSoftware Architecturebusiness value
0 likes · 18 min read
Understanding Architecture: Goals, Resources, Behaviors, and Decision‑Making for Architects
Senior Brother's Insights
Senior Brother's Insights
Aug 30, 2023 · Backend Development

Why Learning Multiple Programming Languages Boosts Your Backend Skills

The author reflects on how studying several programming languages—Java, Go, and Python—mirrors learning foreign tongues, revealing that cross‑language comparison sharpens understanding of data structures, HTTP fundamentals, and framework implementations, ultimately deepening overall software development expertise.

GoSoftware Architecturebackend-development
0 likes · 5 min read
Why Learning Multiple Programming Languages Boosts Your Backend Skills
JD Retail Technology
JD Retail Technology
Aug 25, 2023 · Fundamentals

From Traditional Layered Architecture to Hexagonal and Clean Architecture: Principles, Problems, and Dependency Inversion

This article explains the traditional strict and loose layered architectures, highlights their coupling issues, introduces the Dependency Inversion Principle as a solution, and shows how applying it leads to hexagonal and clean architecture designs with illustrative diagrams and code examples.

DDDDependency InversionHexagonal Architecture
0 likes · 7 min read
From Traditional Layered Architecture to Hexagonal and Clean Architecture: Principles, Problems, and Dependency Inversion
Wukong Talks Architecture
Wukong Talks Architecture
Aug 25, 2023 · Cloud Native

Cloud-Native Architecture Evolution and Practices at ZEEK Automotive

This article details ZEEK Automotive's transition to a cloud‑native architecture, describing how the company adopted Kubernetes, containerization, micro‑service unification, and full‑link gray release to improve system stability, scalability, and development efficiency across its APP ecosystem.

DevOpsKubernetesMicroservices
0 likes · 18 min read
Cloud-Native Architecture Evolution and Practices at ZEEK Automotive
JD Tech
JD Tech
Aug 24, 2023 · Fundamentals

Why Architecture Visualization Matters and How to Apply the C4 Model

This article explains the importance of architecture visualization for clear communication, compares wireframe, UML, and sketch approaches, and details how the C4 model’s layered abstractions—system, container, component, and code—provide a low‑cognitive‑load, consistent way to document software systems.

C4 ModelSoftware ArchitectureUML
0 likes · 14 min read
Why Architecture Visualization Matters and How to Apply the C4 Model
Top Architecture Tech Stack
Top Architecture Tech Stack
Aug 19, 2023 · Fundamentals

The Seven SOLID Principles in Java Software Design

This article explains the seven SOLID principles of Java software design—Single Responsibility, Open‑Closed, Liskov Substitution, Interface Segregation, Dependency Inversion, Law of Demeter, and Composite Reuse—illustrating each with clear Java code examples that demonstrate how to write more maintainable, extensible, and flexible object‑oriented code.

Object-OrientedSOLIDSoftware Architecture
0 likes · 18 min read
The Seven SOLID Principles in Java Software Design
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Aug 18, 2023 · Fundamentals

Understanding the Strategy Design Pattern with Java Examples

This article explains the Strategy design pattern, its definition, structure, and how to refactor a typical e‑commerce discount calculation in Java using interfaces, concrete strategy classes, and a context, highlighting benefits, drawbacks, and best‑practice considerations.

Design PatternsSoftware ArchitectureStrategy Pattern
0 likes · 9 min read
Understanding the Strategy Design Pattern with Java Examples
MaGe Linux Operations
MaGe Linux Operations
Aug 16, 2023 · Fundamentals

How Layered Architecture Keeps a 30K‑File Python Codebase Manageable

This article explains how a massive Python project with nearly 30,000 files uses a layered architecture and Import Linter to enforce dependency rules, reduce complexity, track technical debt, and improve maintainability, while also discussing the trade‑offs and practical implementation details.

PythonSoftware Architecturecode organization
0 likes · 15 min read
How Layered Architecture Keeps a 30K‑File Python Codebase Manageable
Java Backend Technology
Java Backend Technology
Aug 16, 2023 · Fundamentals

Why Overusing the Chain of Responsibility Bloats Your Code—and How to Refactor It

This article explains the Chain of Responsibility design pattern, shows its typical use cases, demonstrates how naïve implementations can lead to tangled, hard‑to‑maintain code, and provides step‑by‑step refactorings—including abstract handlers, linked chains, and a factory‑based configuration—to produce clean, extensible Java solutions.

Chain of ResponsibilitySoftware Architecturejava
0 likes · 13 min read
Why Overusing the Chain of Responsibility Bloats Your Code—and How to Refactor It
Tech Architecture Stories
Tech Architecture Stories
Aug 15, 2023 · Cloud Native

Why ‘Microservice Design’ and ‘Systems Thinking’ Are Essential Reads for Architects

The author revisits two concise yet powerful books—‘Microservice Design’ and ‘Systems Thinking’—explaining how the former guides architects through microservice boundaries, deployment, and scaling, while the latter offers a systematic mindset for designing and governing complex software systems, making both indispensable for modern architects.

MicroservicesSoftware Architecturedesign principles
0 likes · 5 min read
Why ‘Microservice Design’ and ‘Systems Thinking’ Are Essential Reads for Architects
Architect
Architect
Aug 12, 2023 · Backend Development

Understanding Code Architecture: Clean, Hexagonal, Onion, COLA and a Go Implementation Guide

This article explains why code architecture matters, compares Clean, Hexagonal, Onion and COLA patterns, describes their layered structures and separation‑of‑concerns principles, and provides a practical Go project layout with concrete code examples to illustrate how each layer interacts.

Clean ArchitectureSoftware Architecturecode organization
0 likes · 19 min read
Understanding Code Architecture: Clean, Hexagonal, Onion, COLA and a Go Implementation Guide
DaTaobao Tech
DaTaobao Tech
Aug 9, 2023 · Fundamentals

Understanding Domain-Driven Design: Principles, Challenges, and Practical Insights

The article likens blind adoption of Domain‑Driven Design to Forrest Gump’s run, explains how tangled business logic and over‑abstracted layers increase maintenance, shows DDD’s role in clarifying domains and mapping SOLID principles, offers practical tips for splitting responsibilities and building reusable capabilities, and concludes DDD is a valuable—not magical—lens for sustainable, extensible software.

DDDSoftware Architecturedesign principles
0 likes · 21 min read
Understanding Domain-Driven Design: Principles, Challenges, and Practical Insights
Tech Architecture Stories
Tech Architecture Stories
Aug 8, 2023 · Fundamentals

How Systems Theory Shapes Modern Software Architecture

Systems Theory, originating in the 1940s, provides a holistic framework for understanding and designing complex software architectures, emphasizing component interaction, feedback, and adaptability, with practical examples ranging from microservices and Kubernetes to chaos engineering, illustrating its impact on scalability, resilience, and modular design.

Cloud NativeMicroservicesSoftware Architecture
0 likes · 16 min read
How Systems Theory Shapes Modern Software Architecture
Architect
Architect
Aug 6, 2023 · Backend Development

From N‑Layered to Clean Architecture: Tracing the Evolution of Backend Design

This article walks through the historical evolution of backend architecture—from early N‑layered designs, through DDD, Hexagonal, Onion, and finally Clean Architecture—explaining why each style emerged, how they differ, and what practical rules developers can follow to manage complexity and dependencies.

Clean ArchitectureDDDHexagonal Architecture
0 likes · 17 min read
From N‑Layered to Clean Architecture: Tracing the Evolution of Backend Design
Architect
Architect
Aug 4, 2023 · Fundamentals

What Exactly Is Software Architecture? A Deep Dive into Systems, Modules, and Design Principles

The article systematically defines software architecture, distinguishes systems, subsystems, modules, and components, compares frameworks with architectures, explores TOGAF and RUP classifications, traces the evolution from monoliths to micro‑services, and presents concrete design principles and common pitfalls for building scalable, maintainable systems.

MicroservicesScalabilitySoftware Architecture
0 likes · 25 min read
What Exactly Is Software Architecture? A Deep Dive into Systems, Modules, and Design Principles
Tencent Cloud Developer
Tencent Cloud Developer
Aug 2, 2023 · Backend Development

How to Do Architecture Design Well: A Tencent Architect's Experience

A Tencent architect explains that effective software architecture requires clear distinctions between systems, subsystems, modules and components, understanding frameworks versus structural design, applying TOGAF classifications, evolving from monoliths to microservices, and following fifteen practical principles while avoiding common misconceptions such as over‑design and technology‑driven choices.

Distributed SystemsMicroservicesSoftware Architecture
0 likes · 20 min read
How to Do Architecture Design Well: A Tencent Architect's Experience
JD Retail Technology
JD Retail Technology
Aug 2, 2023 · Backend Development

Key Principles and Practices for Engineering Architecture Design

This article explores engineering architecture design, emphasizing value‑first decision making, layered and DDD architectures, technology selection criteria, and best practices for consensus, exception, logging, and monitoring to build scalable, maintainable, and secure software systems.

DDDException HandlingMicroservices
0 likes · 23 min read
Key Principles and Practices for Engineering Architecture Design
Alibaba Terminal Technology
Alibaba Terminal Technology
Jul 27, 2023 · Artificial Intelligence

How LLMs Transform Industrial Configuration Software: Architecture & Use Cases

This article explains how integrating large language models into industrial configuration tools creates AI‑driven features such as knowledge Q&A, automatic application generation, smart drawing, script and material generation, and outlines the three‑layer architecture, prompt engineering, and implementation lessons for developers.

AI integrationLLMPrompt engineering
0 likes · 30 min read
How LLMs Transform Industrial Configuration Software: Architecture & Use Cases
Alibaba Cloud Developer
Alibaba Cloud Developer
Jul 27, 2023 · Backend Development

How Gaode’s GBF Framework Eliminates Glue Code with Domain‑Driven Design

This article explains how Gaode's Information Business team tackled fragmented portal implementations across multiple industries by adopting the Gaode Business Framework (GBF) and domain‑driven design, achieving unified architecture, reduced duplication, improved reusability, and enhanced system stability and maintainability.

BackendDomain-Driven DesignFramework
0 likes · 17 min read
How Gaode’s GBF Framework Eliminates Glue Code with Domain‑Driven Design
21CTO
21CTO
Jul 19, 2023 · Operations

Scaling a Fast‑Growing Supply Chain Platform: Architecture and Ops Insights

This article details how a rapidly expanding B2B fresh‑food company restructured its R&D organization, adopted a matrix management model, and built a comprehensive distributed infrastructure—including task scheduling, service discovery, messaging, logging, file storage, CDN, configuration, sharding, search, caching, and monitoring—to support nationwide warehouse operations and future growth.

DevOpsDistributed SystemsOperations
0 likes · 7 min read
Scaling a Fast‑Growing Supply Chain Platform: Architecture and Ops Insights
DaTaobao Tech
DaTaobao Tech
Jul 17, 2023 · Fundamentals

Comprehensive Overview of 23 Design Patterns with Examples and Code

This article provides a systematic, example‑driven guide to all 23 classic design patterns—covering creational, structural, and behavioral types—explaining their intent, real‑world analogies, benefits, and offering clear diagrams and runnable code snippets to illustrate each pattern in practice.

BehavioralCode ExamplesCreational
0 likes · 40 min read
Comprehensive Overview of 23 Design Patterns with Examples and Code
ITPUB
ITPUB
Jul 14, 2023 · R&D Management

Why Becoming an Architect Is Really About Upgrading Your Cognition

The article shares the author’s years of architecture experience at Alipay, arguing that growth into a true architect is a cognitive upgrade, explains what architectural ability really means, illustrates it with a multithreading interview example, and presents systematic thinking methods and practical steps for building architectural competence.

MethodologyR&D managementSoftware Architecture
0 likes · 26 min read
Why Becoming an Architect Is Really About Upgrading Your Cognition
JD Tech
JD Tech
Jul 14, 2023 · Fundamentals

Exploring the Open‑Closed Principle in Software Architecture to Reduce Cognitive Load and Improve Efficiency

The article examines how applying the open‑closed principle and domain‑driven design in software architecture can lower programmers' cognitive load, streamline development, and enable cost‑effective, scalable evolution of complex systems, especially in fast‑iteration internet services.

DDDOpen/Closed PrincipleSoftware Architecture
0 likes · 16 min read
Exploring the Open‑Closed Principle in Software Architecture to Reduce Cognitive Load and Improve Efficiency
Ctrip Technology
Ctrip Technology
Jul 13, 2023 · Backend Development

Refactoring Practices and Strategies for Large‑Scale Microservice Systems

This article outlines the definition, motivations, impact levels, planning, communication, layered design, gray‑release techniques, quality improvement measures, and observability considerations for large‑scale backend refactoring in microservice architectures, drawing on practical experience from Ctrip's end‑to‑end refactoring project.

Software Architecturecode qualityrefactoring
0 likes · 11 min read
Refactoring Practices and Strategies for Large‑Scale Microservice Systems
Test Development Learning Exchange
Test Development Learning Exchange
Jul 7, 2023 · Fundamentals

Understanding the Object Factory Design Pattern with Python Examples

This article explains the Object Factory design pattern, its benefits such as decoupling, extensibility, and centralized instance management, and demonstrates five practical Python examples covering basic product creation, configuration‑driven factories, logger factories, singleton factories, and object caching factories.

Factory MethodObject FactoryPython
0 likes · 7 min read
Understanding the Object Factory Design Pattern with Python Examples
macrozheng
macrozheng
Jul 5, 2023 · Backend Development

Mastering Domain-Driven Design: From Concepts to Clean Architecture

This article explains how to apply Domain‑Driven Design (DDD) to a new project, covering key terminology, architectural evolution, bounded contexts, the four DDD boundaries, and various layered architectures such as clean, hexagonal, and onion models.

DDDHexagonal ArchitectureSoftware Architecture
0 likes · 9 min read
Mastering Domain-Driven Design: From Concepts to Clean Architecture
Su San Talks Tech
Su San Talks Tech
Jul 2, 2023 · Fundamentals

Master Design Patterns: Chain, Template, Pub/Sub & Strategy in Java

This article explains the concepts, advantages, disadvantages, and real-world use cases of four essential design patterns—Chain of Responsibility, Template Method, Publish‑Subscribe, and Strategy—providing detailed Java and Spring code examples to help developers apply them effectively.

Design PatternsSoftware Architecturejava
0 likes · 41 min read
Master Design Patterns: Chain, Template, Pub/Sub & Strategy in Java
Java Architect Essentials
Java Architect Essentials
Jun 29, 2023 · Fundamentals

Understanding Domain-Driven Design: Boundaries, Contexts, and Architectural Patterns

This article explains how to apply Domain-Driven Design (DDD) from project inception, covering key terminology, architectural evolution, bounded contexts, the four DDD boundaries, and various layered architectures such as clean, hexagonal, and onion models to achieve modular, maintainable systems.

Bounded ContextClean ArchitectureDomain-Driven Design
0 likes · 9 min read
Understanding Domain-Driven Design: Boundaries, Contexts, and Architectural Patterns
21CTO
21CTO
Jun 28, 2023 · Fundamentals

What Is Software Architecture? Definitions, Types, and Design Principles Explained

This comprehensive guide clarifies the concept of software architecture, explores related notions such as systems, subsystems, modules, components, frameworks, and various architectural classifications, and outlines design goals, evolution paths, common pitfalls, and recommended reading for building effective, scalable, and maintainable systems.

Architecture PatternsMicroservicesSoftware Architecture
0 likes · 35 min read
What Is Software Architecture? Definitions, Types, and Design Principles Explained
ByteFE
ByteFE
Jun 28, 2023 · Frontend Development

How GPT is Transforming Frontend Development and UI Interaction

The article examines the rapid rise of GPT models, their technical capabilities and limitations, and how their integration is reshaping software interaction from command‑line to GUI‑plus‑Language UI, offering frontend engineers new opportunities, practical examples, and guidance on leveraging large‑model AI in product design.

AI integrationGPTLLM
0 likes · 21 min read
How GPT is Transforming Frontend Development and UI Interaction
21CTO
21CTO
Jun 20, 2023 · R&D Management

When Architects Turn Into PMs: Risks and How to Stop It

This article explains what architect‑to‑PM transformation means, outlines its characteristic signs and harmful impacts on projects, organizations, and individuals, and offers practical organizational, personal, and cultural measures—including automation pipelines—to keep architects focused on real technical work.

R&D managementSoftware ArchitectureTeam Culture
0 likes · 7 min read
When Architects Turn Into PMs: Risks and How to Stop It
JD Tech
JD Tech
Jun 20, 2023 · Fundamentals

Design Patterns, Architectural Patterns, and Programming Paradigms: Theory, Examples, and Practical Guidance

This article analyses the relationship between design patterns, architectural patterns and programming paradigms, explains core concepts and principles, provides extensive examples in Java and Python, presents common pattern catalogs, and offers practical implementation guidelines and case studies for software developers.

Code ExamplesObject-OrientedProgramming Paradigms
0 likes · 28 min read
Design Patterns, Architectural Patterns, and Programming Paradigms: Theory, Examples, and Practical Guidance
Top Architect
Top Architect
Jun 20, 2023 · Fundamentals

Understanding Complex Systems and Software Architecture: Definitions, Classifications, and Design Principles

The article explains what constitutes a complex system, defines software architecture, outlines its essential elements, categorizes various architecture types, discusses key factors such as functional and non‑functional requirements, and presents design principles and typical solutions for building robust, scalable systems.

Cloud NativeComplex SystemsDomain-Driven Design
0 likes · 15 min read
Understanding Complex Systems and Software Architecture: Definitions, Classifications, and Design Principles
Architects' Tech Alliance
Architects' Tech Alliance
Jun 19, 2023 · Fundamentals

Understanding Complex Systems and Software Architecture: Definitions, Types, Principles, and Design Considerations

This article explains what complex systems and software architecture are, outlines various architectural categories, discusses essential functional and non‑functional requirements, and presents design principles and typical solutions such as domain‑driven design, microservices, cloud‑native, DevOps, and big‑data architectures for building stable, scalable, and maintainable systems.

Big DataComplex SystemsDomain-Driven Design
0 likes · 13 min read
Understanding Complex Systems and Software Architecture: Definitions, Types, Principles, and Design Considerations
Big Data Technology & Architecture
Big Data Technology & Architecture
Jun 19, 2023 · Fundamentals

Architectural Growth: How Cognition Upgrade Shapes System Design

The article explores how an architect’s cognitive upgrade—through systematic thinking, model-driven analysis, and practical design methods—drives effective system architecture, business modeling, and trade‑off decisions, illustrated by a multithreading interview example and a suite of methodological tools.

BackendMethodologySoftware Architecture
0 likes · 26 min read
Architectural Growth: How Cognition Upgrade Shapes System Design
phodal
phodal
Jun 14, 2023 · Industry Insights

What Are the Four Core Principles for LLM‑Powered Software Architecture?

This article outlines four foundational design principles—user‑intent‑driven design, context awareness, atomic capability mapping, and language‑API integration—for building LLM‑centric software architectures, illustrating each with DSL examples, Kotlin implementations, and practical insights on prompt engineering, dynamic context layering, and API evolution.

DSLLLMPrompt engineering
0 likes · 10 min read
What Are the Four Core Principles for LLM‑Powered Software Architecture?
Code Ape Tech Column
Code Ape Tech Column
Jun 14, 2023 · Fundamentals

Understanding Complex Systems and Software Architecture: Principles, Types, and Design Considerations

This article explains what complex systems are, defines software architecture, explores its essence and classifications, outlines key architectural factors, and presents design principles and typical solutions such as domain‑driven design, microservices, cloud‑native, and big‑data architectures.

Cloud NativeComplex SystemsDomain-Driven Design
0 likes · 14 min read
Understanding Complex Systems and Software Architecture: Principles, Types, and Design Considerations
High Availability Architecture
High Availability Architecture
Jun 13, 2023 · R&D Management

The Role and Growth Path of a Software Architect

The article explains what a software architect does, outlines four developmental stages—from entry to team collaboration—emphasizes continuous learning, and promotes the 2023 GIAC Global Internet Architecture Conference covering topics like AIGC, cloud native, and digital transformation.

Career DevelopmentR&D managementSoftware Architecture
0 likes · 5 min read
The Role and Growth Path of a Software Architect
Architect
Architect
Jun 12, 2023 · Backend Development

Best Practices for Application Layering and Domain Model Design

The article explains why clear application layering—covering controller, service, manager, and DAO levels—is essential for maintainable backend code, reviews Alibaba's recommended layer structure, proposes an optimized layering model, and discusses domain model conversions to avoid excessive object transformations.

Service LayerSoftware Architectureapplication layering
0 likes · 9 min read
Best Practices for Application Layering and Domain Model Design
Bitu Technology
Bitu Technology
Jun 8, 2023 · Backend Development

Lexical – The Next‑Generation Language Server: Architecture, Features, and Future Roadmap

The article reviews Scott's presentation on Lexical, the next‑generation Elixir language server, explaining the Language Server Protocol, Lexical's dual‑node architecture, modular design for easy contribution, and upcoming development plans, while inviting the community to explore the video replay and contribute.

ElixirLanguage Server ProtocolLexical
0 likes · 7 min read
Lexical – The Next‑Generation Language Server: Architecture, Features, and Future Roadmap
Qunar Tech Salon
Qunar Tech Salon
Jun 8, 2023 · Operations

System Complexity Modeling and Anti‑Corruption Governance at Qunar

This article describes how Qunar's technology center defined, measured, and managed system complexity through a custom modeling framework, implemented a dashboard for continuous monitoring, and established an anti‑corruption governance process that limits complexity growth to maintain low maintenance costs across hundreds of applications and systems.

OperationsQunarSoftware Architecture
0 likes · 14 min read
System Complexity Modeling and Anti‑Corruption Governance at Qunar
Continuous Delivery 2.0
Continuous Delivery 2.0
Jun 6, 2023 · Fundamentals

Design Document Readability: Core Principles, Key Points, and Best Practices

This article explains why design documents need readability, outlines the three essential writing elements—clarity, conciseness, elegance—presents four key design principles such as trade‑offs, the importance of “why” over “how”, time considerations, and avoiding over‑design, and concludes with a brief promotion for a continuous deployment course.

Software Architecturedesign documentationreadability
0 likes · 6 min read
Design Document Readability: Core Principles, Key Points, and Best Practices
DaTaobao Tech
DaTaobao Tech
Jun 5, 2023 · Fundamentals

Chain of Responsibility Design Pattern in Java

The article explains Java’s Chain of Responsibility pattern, describing how abstract and concrete handler classes form a linked chain that passes a request until one processes it, outlines the steps to implement and assemble the chain, and discusses its benefits, drawbacks, and typical applications such as approval workflows and filter pipelines.

Chain of ResponsibilityDesign PatternsSoftware Architecture
0 likes · 12 min read
Chain of Responsibility Design Pattern in Java
Qunar Tech Salon
Qunar Tech Salon
May 30, 2023 · Databases

Smooth Migration to Sharding: Design, Implementation, and Componentization of Qunar's Database Sharding Solution

This article describes the challenges of migrating a long‑running monolithic database to a sharded architecture, presents a two‑stage smooth migration strategy using double‑write, diff verification, and mapping‑key techniques, and details the componentized design, core implementation, and configuration of a reusable sharding framework built on MyBatis and Spring.

MyBatisSoftware Architecturedata synchronization
0 likes · 34 min read
Smooth Migration to Sharding: Design, Implementation, and Componentization of Qunar's Database Sharding Solution
Programmer DD
Programmer DD
May 24, 2023 · Fundamentals

Mastering the Chain of Responsibility Pattern: From Flawed IF Chains to Elegant Handlers

This article explains the Chain of Responsibility design pattern, shows why naïve nested if‑statements are problematic, demonstrates a step‑by‑step refactor using linked handlers, introduces an abstract handler hierarchy, and finally presents a factory‑based dynamic configuration for scalable request processing in Java.

Chain of ResponsibilitySoftware Architecturedesign pattern
0 likes · 12 min read
Mastering the Chain of Responsibility Pattern: From Flawed IF Chains to Elegant Handlers
Architects Research Society
Architects Research Society
May 20, 2023 · Cloud Native

Leveraging Software Architecture at Nubank: From Startup to Scale

This article chronicles Nubank’s architectural evolution—detailing how strategic technology choices, cloud‑native platforms, micro‑service design, and data‑engineering practices were leveraged across startup, growth, consolidation, and expansion phases to achieve massive scalability and business agility.

Cloud NativeKubernetesMicroservices
0 likes · 24 min read
Leveraging Software Architecture at Nubank: From Startup to Scale
Amap Tech
Amap Tech
May 18, 2023 · Fundamentals

Software Architecture Design: Principles, Patterns, and Practical Approaches

The article defines software architecture as a business‑driven abstraction of system structure, explains core design principles such as SOLID, Ockham’s Razor, DRY, YAGNI, KISS and POLA, illustrates LSP violations, surveys layered, hexagonal, onion and DDD styles, and shows how applying Dependency Inversion in a large C++ codebase yields a simple, maintainable, business‑aligned architecture.

DDDSOLIDSoftware Architecture
0 likes · 22 min read
Software Architecture Design: Principles, Patterns, and Practical Approaches
JD Tech
JD Tech
May 17, 2023 · R&D Management

JD Supply Chain Low-Code Rule Engine Platform: Architecture, Challenges, and Solutions

This article describes JD Supply Chain's self‑developed low‑code rule engine platform, outlining its motivation, high‑concurrency performance challenges, value‑centric design, visual rule‑authoring workflow, SDK integration, and the resulting efficiency gains for both development and business teams.

Business AutomationR&DSoftware Architecture
0 likes · 16 min read
JD Supply Chain Low-Code Rule Engine Platform: Architecture, Challenges, and Solutions
DataFunSummit
DataFunSummit
May 16, 2023 · Fundamentals

Understanding Software Architecture: Definitions, Design Goals, Classifications, and Common Pitfalls

This article explains the concept of software architecture, distinguishes it from frameworks, outlines its components, design objectives, classification methods such as RUP 4+1 and TOGAF, evolution from monoliths to micro‑services, evaluation criteria, typical misconceptions, and recommends essential reading for architects.

Architecture PatternsMicroservicesSoftware Architecture
0 likes · 29 min read
Understanding Software Architecture: Definitions, Design Goals, Classifications, and Common Pitfalls
Alipay Experience Technology
Alipay Experience Technology
May 11, 2023 · Backend Development

How DDD Tames Microservice Complexity: A Practical Guide

This article explains why architecture design, especially Domain‑Driven Design, is essential for controlling the complexity, cost, and scalability of microservice systems, detailing common misconceptions, sources of complexity, and concrete steps to define clear domain and service boundaries.

BackendDomain-Driven DesignMicroservices
0 likes · 26 min read
How DDD Tames Microservice Complexity: A Practical Guide
21CTO
21CTO
May 10, 2023 · Fundamentals

What Makes a System Complex? Unpacking Architecture Principles

This article explains what a complex system is, defines software architecture, explores its essence and classifications, and outlines the key factors, analysis methods, design principles, and typical solution patterns such as DDD, micro‑services, cloud‑native, DevOps, and big‑data architectures.

Complex SystemsDomain-Driven DesignMicroservices
0 likes · 16 min read
What Makes a System Complex? Unpacking Architecture Principles
Continuous Delivery 2.0
Continuous Delivery 2.0
May 9, 2023 · Fundamentals

Advantages, Costs, and Trade‑offs of Google’s Monorepo (Piper) Model

The article examines Google’s single‑repository (monorepo) strategy, detailing its technical benefits such as unified version control, code sharing, and atomic changes, while also analyzing the substantial tooling, infrastructure, and maintenance costs, and discussing why alternatives like Git are not adopted.

MonorepoSoftware ArchitectureVersion Control
0 likes · 15 min read
Advantages, Costs, and Trade‑offs of Google’s Monorepo (Piper) Model
MaGe Linux Operations
MaGe Linux Operations
May 6, 2023 · Backend Development

Why Evolving Architecture Beats Rigid Design: Lessons from Amazon and Prime Video

The article explains that building evolvable software systems—using strategies like microservices and event‑driven architecture—allows teams to adapt to changing workloads and business growth, illustrated with real‑world examples from Amazon, Prime Video, and S3, while emphasizing that no single architectural pattern fits all scenarios.

Event-Driven ArchitectureSoftware Architecturecloud computing
0 likes · 6 min read
Why Evolving Architecture Beats Rigid Design: Lessons from Amazon and Prime Video
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
May 5, 2023 · Fundamentals

Inversion of Control and SOLID Principles in the JavaScript Ecosystem with InversifyJS and Theia

This article revisits Inversion of Control and SOLID design principles within the JavaScript ecosystem, explains their practical application using InversifyJS, demonstrates a full‑stack example in the Theia IDE framework, and discusses the benefits, challenges, and best‑practice considerations of adopting IOC in modern web projects.

InversifyJSInversion of ControlSoftware Architecture
0 likes · 23 min read
Inversion of Control and SOLID Principles in the JavaScript Ecosystem with InversifyJS and Theia
DataFunTalk
DataFunTalk
Apr 25, 2023 · Fundamentals

What Is Enterprise Architecture and Why It Matters

This article explains the concept of enterprise architecture by likening an organization to a massive software system, discusses its importance in digital transformation, outlines its meta‑model and view layers, and highlights why a structured architectural approach is essential for modern enterprises.

Digital TransformationInformation SystemsSoftware Architecture
0 likes · 6 min read
What Is Enterprise Architecture and Why It Matters
JD Retail Technology
JD Retail Technology
Apr 23, 2023 · Fundamentals

Design Patterns and Programming Paradigms: Concepts, Architecture Patterns, and Practical Applications

This article explores the relationship between design patterns and programming languages, explains various programming paradigms, compares design patterns with architectural patterns, outlines key design principles, and provides extensive Java code examples illustrating factory, strategy, template method, builder, proxy, chain of responsibility, and command patterns in practice.

Builder PatternCode ExamplesDesign Patterns
0 likes · 27 min read
Design Patterns and Programming Paradigms: Concepts, Architecture Patterns, and Practical Applications
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Apr 14, 2023 · Fundamentals

Pipeline Domain Design in Multimedia Frameworks: Concepts, Comparative Analysis, and Implementation

The article defines pipeline domain design concepts, compares major multimedia frameworks such as FFmpeg, GStreamer, MediaPipe and AVPipeline, and demonstrates a configurable, extensible node‑based architecture that enables fast plugin integration and adaptable audio‑video pipelines across diverse business scenarios and platforms.

FrameworkMultimediaPipeline
0 likes · 39 min read
Pipeline Domain Design in Multimedia Frameworks: Concepts, Comparative Analysis, and Implementation
Top Architect
Top Architect
Apr 7, 2023 · Fundamentals

Sustainable (Continuous) Software Architecture: Principles, Practices, and Tools

The article explains the emerging concept of sustainable or continuous software architecture, outlines six guiding principles, compares it with traditional methods, and describes how it integrates with agile, DevOps, and product‑centric thinking to deliver resilient, adaptable systems over the long term.

Continuous DeliverySoftware ArchitectureSustainable Architecture
0 likes · 8 min read
Sustainable (Continuous) Software Architecture: Principles, Practices, and Tools
iQIYI Technical Product Team
iQIYI Technical Product Team
Mar 31, 2023 · Backend Development

Component-Based Interface Integration Solution for External Partnerships

The article presents a component‑based integration framework that abstracts partner‑specific data mapping, signature creation, call execution, and response parsing into reusable modules, enabling companies to standardize interfaces, eliminate custom development for most partners, cut integration costs by 86 % and pave the way for a hot‑swappable orchestration platform.

API developmentSoftware Architecturebusiness efficiency
0 likes · 5 min read
Component-Based Interface Integration Solution for External Partnerships
Tencent Cloud Developer
Tencent Cloud Developer
Mar 29, 2023 · Backend Development

Understanding Code Architecture: Clean, Onion, Hexagonal, and COLA with a Go Project Scaffold

The article explains why layered architectures such as Clean, Onion, and Hexagonal are essential for reducing coupling and improving maintainability, introduces the COLA (Clean Object‑oriented and Layered Architecture) derived from them, and presents a concrete Go project scaffold with clearly defined Domain, Application, Infrastructure, and Adapter layers and recommended directory layout.

Hexagonal ArchitectureSoftware Architecturecode scaffolding
0 likes · 20 min read
Understanding Code Architecture: Clean, Onion, Hexagonal, and COLA with a Go Project Scaffold
21CTO
21CTO
Mar 28, 2023 · R&D Management

What Makes a Great Architect? Lessons from Alibaba’s Platform Engineering

The article shares a senior engineer’s reflections on technical architecture at Alibaba, covering top‑level design, physical and application architecture, the evolving role of architects, essential problem‑solving skills, the need for a global perspective, broad technical breadth, continuous learning, and how these insights shape effective R&D management.

R&D managementSoftware ArchitectureSystem Design
0 likes · 14 min read
What Makes a Great Architect? Lessons from Alibaba’s Platform Engineering
DevOps Cloud Academy
DevOps Cloud Academy
Mar 26, 2023 · Operations

Essential DevOps Capabilities for Continuous Delivery, Architecture, Product, Lean Management, and Culture

This article outlines 24 key DevOps capabilities—covering continuous delivery, loosely‑coupled architecture, product feedback, value‑stream visibility, small‑batch work, lean management, monitoring, and cultural practices—derived from the Accelerate research to improve software delivery performance.

Continuous DeliveryCultureDevOps
0 likes · 10 min read
Essential DevOps Capabilities for Continuous Delivery, Architecture, Product, Lean Management, and Culture
Bilibili Tech
Bilibili Tech
Mar 24, 2023 · Big Data

Design and Implementation of Bilibili's Event Tracking (埋点) Analysis Platform

Bilibili’s unified event‑tracking platform now manages over 120,000 definitions and ingests billions of daily events, guiding product, operation and marketing decisions through a full‑lifecycle framework—design, collection, testing, storage, and analysis—while leveraging a Spmid naming scheme, protobuf models, ClickHouse for sub‑second queries, and visual dashboards, with future plans for dynamic TTL, automated DWD tables, and deeper AB‑testing integration.

Data AnalyticsSoftware Architectureevent tracking
0 likes · 14 min read
Design and Implementation of Bilibili's Event Tracking (埋点) Analysis Platform
Continuous Delivery 2.0
Continuous Delivery 2.0
Mar 24, 2023 · Operations

Continuous Testing as a Weapon Against Architecture Decay: Practices, Performance Fences, Acceptance Test Nets, and Dependency Checks

Continuous testing, performance testing fences, acceptance test nets, and ArchUnit dependency checks are presented as practical strategies to prevent software and architecture decay, illustrated with real project experiences, CI/CD integration, and code examples for robust quality assurance.

ArchUnitPerformance TestingSoftware Architecture
0 likes · 7 min read
Continuous Testing as a Weapon Against Architecture Decay: Practices, Performance Fences, Acceptance Test Nets, and Dependency Checks
Top Architect
Top Architect
Mar 23, 2023 · Fundamentals

How to Create Effective Software Architecture Diagrams: Methods, Views, and Best Practices

This article explains the purpose and classification of software architecture diagrams, introduces the 4+1 and C4 view models, describes business, application, technical, and data architectures, and provides practical guidance on drawing clear, audience‑focused diagrams that accurately reflect system design.

C4 ModelSoftware ArchitectureSystem Design
0 likes · 9 min read
How to Create Effective Software Architecture Diagrams: Methods, Views, and Best Practices
FunTester
FunTester
Mar 23, 2023 · Fundamentals

Factory Method Pattern in Go: Theory, Use Cases, and Implementation

This article explains why design patterns are needed, introduces the Factory Method pattern with its UML roles, provides a step‑by‑step Go implementation—including interfaces, concrete factories, and client code—covers a clothing‑brand example, and discusses the pattern's advantages and drawbacks while also noting its source from a Go design‑patterns book.

Creational PatternDesign PatternsFactory Method
0 likes · 11 min read
Factory Method Pattern in Go: Theory, Use Cases, and Implementation
Top Architect
Top Architect
Mar 15, 2023 · Fundamentals

Understanding Software Architecture: Concepts, Layers, Levels, Evolution, and Common Pitfalls

This article explains the definition and essence of software architecture, outlines its layers and classifications, describes architectural levels and the evolution from monolithic to micro‑service designs, and discusses how to evaluate architectural rationality while highlighting typical misconceptions and best‑practice guidelines.

Architecture PatternsScalabilitySoftware Architecture
0 likes · 23 min read
Understanding Software Architecture: Concepts, Layers, Levels, Evolution, and Common Pitfalls