Tagged articles
24 articles
Page 1 of 1
Code Mala Tang
Code Mala Tang
Jan 3, 2025 · Fundamentals

How the Adapter Pattern Seamlessly Integrates PayPal and Stripe Payments

This article explains the Adapter design pattern, demonstrates step‑by‑step how to wrap existing PayPal payment code with a Stripe adapter in TypeScript, and discusses best practices, common pitfalls, and extensions such as factories and nested adapters for flexible payment integration.

Adapter PatternDesign PatternsObject-Oriented Design
0 likes · 13 min read
How the Adapter Pattern Seamlessly Integrates PayPal and Stripe Payments
Ops Development & AI Practice
Ops Development & AI Practice
Apr 13, 2024 · Cloud Native

Decoding Kubelet: An Object‑Oriented View of Kubernetes Node Agents

This article examines Kubernetes’ Kubelet component through an object‑oriented lens, detailing its role, key responsibilities, abstract properties and methods, and illustrating implementation steps such as resource checks and pod scheduling, to show how OO abstraction clarifies complex system behavior.

Cloud NativeKubernetesObject-Oriented Design
0 likes · 5 min read
Decoding Kubelet: An Object‑Oriented View of Kubernetes Node Agents
Tencent Cloud Developer
Tencent Cloud Developer
Dec 19, 2023 · Fundamentals

Object-Oriented Analysis and Design: Exception Handling, RAII, and Error‑Code Practices

The article explains how object‑oriented analysis and design should treat exceptions by using RAII for automatic resource cleanup, avoiding error‑code patterns, and adopting a throw‑by‑default policy with strongly‑typed exceptions, illustrating concepts with C++ and VB.NET examples and framework design recommendations.

C++Error CodesException Handling
0 likes · 38 min read
Object-Oriented Analysis and Design: Exception Handling, RAII, and Error‑Code Practices
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Nov 4, 2023 · Fundamentals

Understanding the Composite Reuse Principle (CRP): Concepts, Benefits, UML, and Implementation Examples

This article provides a comprehensive explanation of the Composite Reuse Principle (CRP), covering its definition, background, advantages over inheritance, UML representation, practical Java code examples, and guidelines for choosing between composition and inheritance in object‑oriented design.

Composite Reuse PrincipleComposition over InheritanceDesign Patterns
0 likes · 11 min read
Understanding the Composite Reuse Principle (CRP): Concepts, Benefits, UML, and Implementation Examples
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 PatternJava
0 likes · 8 min read
Mastering the Strategy Pattern: From Simple IF‑ELSE to Scalable Design
php Courses
php Courses
Sep 16, 2022 · Fundamentals

Understanding SOLID Principles in Object‑Oriented Design

This article explains the five SOLID object‑oriented design principles—Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion—while also promoting a PHP online training program that covers modern web technologies and offers enrollment via QR code or contact details.

BackendObject-Oriented DesignPHP
0 likes · 2 min read
Understanding SOLID Principles in Object‑Oriented Design
Architecture Digest
Architecture Digest
Nov 13, 2021 · Fundamentals

Anemic vs. Rich Domain Models: Core Concepts of Domain‑Driven Design

The article explains the differences between the anemic (transaction‑script) and rich (domain‑model) approaches in DDD, discusses their historical origins, advantages, drawbacks, and provides guidance on when and how to apply each model in software design.

Domain-Driven DesignObject-Oriented DesignRich Model
0 likes · 9 min read
Anemic vs. Rich Domain Models: Core Concepts of Domain‑Driven Design
ByteFE
ByteFE
Oct 14, 2021 · Fundamentals

Strategy Design Pattern: A Comprehensive Guide

This article explains the Strategy Design Pattern, a behavioral design pattern that enables defining a family of algorithms, encapsulating each one, and making them interchangeable to improve code maintainability and flexibility in software development.

Code RefactoringObject-Oriented DesignSoftware Engineering
0 likes · 7 min read
Strategy Design Pattern: A Comprehensive Guide
Architect
Architect
Sep 16, 2021 · Fundamentals

Object Modeling: Comparing Object and Data Models, OOP Principles, and Composition vs Aggregation

This article explains the philosophical basis of object‑oriented thinking, distinguishes objects from things, discusses attributes and methods, compares object‑oriented and data‑model designs with Java and SQL examples, and clarifies composition and aggregation through real‑world and code illustrations.

Domain-Driven DesignJavaObject-Oriented Design
0 likes · 13 min read
Object Modeling: Comparing Object and Data Models, OOP Principles, and Composition vs Aggregation
Intelligent Backend & Architecture
Intelligent Backend & Architecture
May 7, 2021 · Fundamentals

Unlocking Behavioral Design Patterns: When and How to Use Them

This article explains behavioral design patterns—how they manage complex runtime interactions among classes or objects, outlines the eleven classic patterns with their motivations, class diagrams, advantages, disadvantages, and typical scenarios, and shows why object‑based patterns offer greater flexibility than class‑based ones.

Behavioral PatternsDesign PatternsObject-Oriented Design
0 likes · 22 min read
Unlocking Behavioral Design Patterns: When and How to Use Them
Alibaba Cloud Developer
Alibaba Cloud Developer
Apr 14, 2021 · Fundamentals

Unlock the Core Logic of Design Patterns: Identify and Encapsulate Change

This article explains why mastering the underlying logic of design patterns—recognizing what changes and how to encapsulate those changes—is essential for developers to select appropriate patterns, improve object‑oriented design, and solve real‑world software problems effectively.

Object-Oriented DesignSoftware Architecturechange encapsulation
0 likes · 15 min read
Unlock the Core Logic of Design Patterns: Identify and Encapsulate Change
Programmer DD
Programmer DD
Apr 10, 2021 · Fundamentals

Why the Anemic Domain Model Is a Hidden Anti‑Pattern and How Rich Models Save You

This article examines the anemic (transaction‑script) versus rich (active) domain model patterns, explaining their origins, drawbacks, and benefits, and shows why embedding behavior in domain objects aligns with true object‑oriented design while over‑reliance on service layers leads to costly anti‑patterns.

Domain-Driven DesignObject-Oriented DesignRich Model
0 likes · 8 min read
Why the Anemic Domain Model Is a Hidden Anti‑Pattern and How Rich Models Save You
Architect
Architect
Mar 26, 2021 · Fundamentals

Anemic vs. Rich Domain Model: Core Concepts and Trade‑offs in Domain‑Driven Design

The article explains the fundamental differences between the anemic (transaction‑script) and rich (domain‑model) approaches in DDD, discusses their historical origins, advantages, disadvantages, and provides concrete examples to help developers decide when to apply each model in software architecture.

Domain-Driven DesignObject-Oriented DesignRich Model
0 likes · 8 min read
Anemic vs. Rich Domain Model: Core Concepts and Trade‑offs in Domain‑Driven Design
Programmer DD
Programmer DD
May 11, 2020 · Game Development

How to Build a Simple Plants vs Zombies Game in Java: Design, Code, and Optimization

This article walks through creating a lightweight Plants vs Zombies‑style game in Java, covering object‑oriented design of plants, zombies and bullets, pause handling, collision detection, movement and attack logic, as well as several code‑level optimizations and background music integration.

JavaObject-Oriented DesignPause Functionality
0 likes · 19 min read
How to Build a Simple Plants vs Zombies Game in Java: Design, Code, and Optimization
Java Captain
Java Captain
May 2, 2020 · Game Development

Design and Implementation of a Simple Plants vs Zombies Game in Java

This article details the design, architecture, and code implementation of a simplified Plants vs Zombies game in Java, covering game objects, pause functionality, object interactions, movement, collision detection, optimization techniques, and additional features such as rewards, background music, and future enhancements.

Audio IntegrationGame DevelopmentJava
0 likes · 18 min read
Design and Implementation of a Simple Plants vs Zombies Game in Java
vivo Internet Technology
vivo Internet Technology
Feb 1, 2019 · Fundamentals

Object-Oriented Design Principles (SOLID and Package Principles)

The article explains essential object‑oriented design principles—SOLID for class design and six package‑level rules—showing how proper dependency management and modular organization create flexible, reusable, and maintainable software, and why developers must understand these concepts beyond basic procedural programming.

Object-Oriented DesignSOLIDSoftware Architecture
0 likes · 6 min read
Object-Oriented Design Principles (SOLID and Package Principles)
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Apr 3, 2018 · Fundamentals

How to Cultivate Object‑Oriented Thinking and Architecture Skills as a Junior Developer

After years of coding without guidance, the author shares practical insights on developing object‑oriented design thinking, when to use interfaces, the limits of OOD, and how continuous refactoring and learning design patterns can gradually build a junior developer’s architectural competence.

Design PatternsObject-Oriented DesignSoftware Architecture
0 likes · 11 min read
How to Cultivate Object‑Oriented Thinking and Architecture Skills as a Junior Developer
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Feb 7, 2018 · Fundamentals

Mastering Refactoring: When and How to Move Methods, Fields, and Classes

This article explains core refactoring techniques—Move Method, Move Field, Extract Class, Inline Class, Hide Delegate, Remove Middle Man, Introduce Foreign Method, and Introduce Local Extension—showing when to apply each, how to identify candidates, and the benefits for cleaner, more maintainable object‑oriented code.

Object-Oriented Designextract classmove method
0 likes · 11 min read
Mastering Refactoring: When and How to Move Methods, Fields, and Classes
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Feb 8, 2017 · Fundamentals

Mastering GRASP: 9 Essential Object‑Oriented Design Patterns Explained

This article introduces the GRASP (General Responsibility Assignment Software Patterns) principles, outlines its nine core patterns—including Information Expert, Creator, High Cohesion, Low Coupling, Controller, Polymorphism, Pure Fabrication, Indirection, and Protected Variations—and explains how they guide responsibility assignment, object discovery, and design decisions to achieve high cohesion and low coupling in object‑oriented systems.

GRASPObject-Oriented DesignResponsibility Assignment
0 likes · 25 min read
Mastering GRASP: 9 Essential Object‑Oriented Design Patterns Explained