Designing Classes and Modules in C++ After Ten Years: Insights from Real Project Structures

Designing Classes and Modules in C++ After Ten Years: Insights from Real Project Structures

From WeChat Official Account: Programmer Cat In my first year of writing C++, I thought “as long as it runs, it’s fine”; by the third year, I started to emphasize “encapsulation, inheritance, and polymorphism”; it wasn’t until the tenth year that I realized: designing a good class and module is far more challenging than just … Read more

In-Depth Analysis of the C++ Visitor Pattern: Structure, Advantages, Disadvantages, and Application Scenarios

In-Depth Analysis of the C++ Visitor Pattern: Structure, Advantages, Disadvantages, and Application Scenarios

1.Introduction In C++ design patterns, the Visitor Pattern is a type of behavioral design pattern whose core idea is to separate data structures from data operations, allowing new operations to be defined without modifying existing object structures. This pattern is particularly suitable for scenarios where the data structure is stable but operations change frequently, such … Read more

Common Software Architectures for Microcontroller Development

Common Software Architectures for Microcontroller Development

Microcontroller programs are familiar to everyone, but few truly consider the architecture used. As program development continues to increase, having a solid architecture becomes essential. 1. Time-Slice Polling Method This is a program architecture design scheme that lies between sequential execution methods and operating systems. This design scheme aims to help embedded software developers elevate … Read more

How to Achieve Clear Architectural Design in Embedded Systems?

How to Achieve Clear Architectural Design in Embedded Systems?

In embedded system development, the visualization and documentation of software architecture are often overlooked, leading to difficulties in project maintenance and chaotic team collaboration. The C4 model created by Simon Brown (Context, Containers, Components, Code) clearly presents software architecture in a layered and progressive manner, making it particularly suitable for resource-constrained and increasingly complex embedded … Read more

How to Digest Knowledge of an Unfamiliar Topic Like RTOS?

How to Digest Knowledge of an Unfamiliar Topic Like RTOS?

Many people, especially students who tend to think in a rigid way, believe that they must thoroughly understand the underlying principles of a technology, such as configuring registers to use a microcontroller, examining task scheduling algorithms, time-slicing, and critical section protection, before they can claim to have learned it. What happens? After much effort, you … Read more

Considerations for Infrastructure Development in Embedded Software Architecture Design

Considerations for Infrastructure Development in Embedded Software Architecture Design

Click the above“Embedded and Linux Matters” Select“Pin/Star Public Account” Welfare and valuable content delivered promptly In ancient times, writing emphasized the importance of intention. Today, engineers working on projects and products should also approach software issues from the perspective of software architecture, believing that their understanding of software will become deeper. In embedded software development, … Read more

Interactive HTTP Packet Capture Tool: Aiding Penetration Testing and Development | Open Source Daily No.721

Interactive HTTP Packet Capture Tool: Aiding Penetration Testing and Development | Open Source Daily No.721

mitmproxy/mitmproxyhttps://github.com/mitmproxy/mitmproxy Stars: <span>38.2k</span> License: <span>MIT</span> mitmproxy is an interactive, SSL/TLS-capable HTTP proxy designed for penetration testers and software developers. Supports HTTP/1, HTTP/2, and WebSockets protocols Provides a command-line version mitmdump, similar to tcpdump for HTTP traffic analysis Features a web-based interface mitmweb for user-friendly operation and monitoring Offers extensive documentation and tutorials to help users … Read more

How to Achieve Clear Architectural Design in Embedded Systems

How to Achieve Clear Architectural Design in Embedded Systems

In embedded system development, the visualization and documentation of software architecture are often overlooked, leading to difficulties in project maintenance and chaotic team collaboration. The C4 model created by Simon Brown (Context, Containers, Components, Code) clearly presents software architecture in a layered and progressive manner, making it particularly suitable for resource-constrained and increasingly complex embedded … Read more

Embedded C Language: Misconceptions and Solutions for Global Variable Usage

Embedded C Language: Misconceptions and Solutions for Global Variable Usage

Click the above to select“Pin/Star Public Account” Welfare and valuable content delivered first-handHello everyone, I am Mai Ge.In embedded development, especially in os-less microcontroller programs, the most common mistake is the rampant use of global variables.This phenomenon is often seen among programmers transitioning from early assembly language and beginners, who tend to treat global variables … Read more