The difference between php framework and design patterns
The difference between framework and design pattern
Many programmers tend to confuse framework pattern and design pattern, thinking that MVC is a a design pattern. In fact they are completely different concepts.
The two concepts of framework and design pattern are always easy to be confused. In fact, there are differences between them. (Recommended learning: PHP programming from entry to proficiency)
Framework is usually code reuse, while design pattern is design reuse, and architecture is between the two, with some codes Reuse, part of the design is reused, and sometimes analysis can also be reused.
There are three levels of reuse in software production:
Internal reuse, that is, abstract blocks that can be used publicly in the same application;
Code reuse, which is Common modules are combined into libraries or tool sets so that they can be used in multiple applications and fields;
Reuse of application frameworks, that is, providing common or ready-made infrastructure for specialized fields to obtain the highest level of reuse sex.
Although frameworks and design patterns are similar, they are fundamentally different. Design patterns are descriptions of recurring problems in a certain environment and solutions to the problems. They are more abstract than frameworks;
Frameworks can be expressed in code and can also be directly executed or reused, while In terms of patterns, only instances can be represented by code; design patterns are smaller elements than frameworks. A framework often contains one or more design patterns. A framework is always aimed at a specific application field, but the same pattern can be applied to various fields. kind of application.
It can be said that the framework is the software, and the design pattern is the knowledge of the software.
What are the framework patterns?
MVC, MTV, MVP, CBD, ORM, etc.;
What are the frameworks?
QT, MFC, gtk in C language, SSH and SSI in Java language, smarty in php language (MVC mode), django in python language (MTV mode), etc.
What are the design patterns?
Factory mode, adapter mode, strategy mode, etc.
In short: The framework is great wisdom, used to divide labor in software design; design patterns are small Techniques, propose solutions to specific problems to improve code reuse and reduce coupling.
The above is the detailed content of The difference between php framework and design patterns. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

If you are an experienced PHP developer, you might have the feeling that you’ve been there and done that already.You have developed a significant number of applications, debugged millions of lines of code, and tweaked a bunch of scripts to achieve op

This tutorial demonstrates how to efficiently process XML documents using PHP. XML (eXtensible Markup Language) is a versatile text-based markup language designed for both human readability and machine parsing. It's commonly used for data storage an

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

A string is a sequence of characters, including letters, numbers, and symbols. This tutorial will learn how to calculate the number of vowels in a given string in PHP using different methods. The vowels in English are a, e, i, o, u, and they can be uppercase or lowercase. What is a vowel? Vowels are alphabetic characters that represent a specific pronunciation. There are five vowels in English, including uppercase and lowercase: a, e, i, o, u Example 1 Input: String = "Tutorialspoint" Output: 6 explain The vowels in the string "Tutorialspoint" are u, o, i, a, o, i. There are 6 yuan in total

Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead.

What are the magic methods of PHP? PHP's magic methods include: 1.\_\_construct, used to initialize objects; 2.\_\_destruct, used to clean up resources; 3.\_\_call, handle non-existent method calls; 4.\_\_get, implement dynamic attribute access; 5.\_\_set, implement dynamic attribute settings. These methods are automatically called in certain situations, improving code flexibility and efficiency.
