| = This article is read by Haohappy > | = Notes from the Chapter Classes and Objects | = Translation + personal experience | = Please do not reprint to avoid unnecessary trouble that may occur, thank you | = Welcome to criticize and correct me, Hope to make progress together with all PHP enthusiasts! +------------------------------------------------ --------------------------+ */ Section 1 - Object-oriented programming Object-oriented programming is designed for large software projects Provide solutions, especially for multi-person projects. When the source code grows to 10,000 lines or more, every change may cause undesirable side effects. This happens when modules form secret alliances. At that time, it was like Europe before World War I. //haohappy Note: It means that the correlation between modules is too high and the interdependence is too strong. Changing one module will cause other modules to also be changed. Imagine, If you have a module that handles logins, allow a credit card processing module to share its database connection. Of course the intention is good, saving the expense of another database connection. However, sometimes, the login processing module changes the name of one of the variables. , it is possible to cut off the agreement between the two, leading to errors in the processing of the credit card module, which in turn leads to errors in the module that processes invoices. Soon, all irrelevant modules in the system may make errors. Therefore, I think it is a bit dramatic, Most programmers are grateful for coupling and encapsulation. Coupling is a measure of the dependence between two modules. The less coupling the better. We want to be able to take a module from an existing project and use it in a new project Used in. We also hope to make large-scale changes within a certain module without worrying about the impact on other modules. The principle of encapsulation can provide this solution. Modules are regarded as relatively independent, and data communication between modules is through interfaces Proceed. Modules don't spy on each other through each other's variable names, they politely send requests through functions. Encapsulation is a principle you can use in any programming language. In PHP and many procedural-oriented languages, it's okay to be lazy It's tempting. There's nothing stopping you from building a hypothetical WEB through modules. Object-oriented programming is a way for programmers to not violate the principle of encapsulation. In object-oriented programming, modules are organized into objects. . These objects have methods and properties. From an abstract point of view, methods are actions performed by an object, and properties are characteristics of the object. From a programming perspective, methods are functions and properties are variables. In an idealized In an object-oriented system, each part is an object. The system consists of objects and the relationships between objects through methods. A class defines the properties of the object. If you are baking a set of cookie objects, then the class Will be a cookie machine. The properties and methods of a class are called members. One can express this by saying data members or method members. Each language provides different ways to access objects. PHP borrows concepts from C++, Provides a data type for containing functions and variables under an identifier. When PHP was originally designed, and even when PHP3 was developed, PHP was not intended to provide the ability to develop large projects with more than 100,000 lines of code. With the development of PHP and Zend Engine, it has become possible to develop large projects, but no matter how big your project is, writing your scripts in classes will allow code reuse. This is a good idea, especially if you are willing to share your code with others. The idea of objects is one of the most exciting concepts in computer science. It's hard to master it at first, but I can guarantee that once you do, thinking with its mind will feel very natural.