Based on the model design in the previous article, the O/R Mapping of this system relies heavily on reflection or proxy and attribute for marking. For the sake of performance, we don't need to reflect all classes every time, and we have implemented a metadata model for classes. In the end, is this model as flexible and efficient as the designer imagined ~~~
With the deepening of the project, I seem to have recovered the coding feeling. When working on metadata, I realized the powerful reflection mechanism of. net. Reflection, Oo, and template are mixed together, and sometimes you may feel confused. It seems that you do not have a deep understanding of compile-time and runtime.
For this project, writing flat code like PHP can quickly develop a prototype system, but for some "scalability" and "scalability ", we chose the O/R Mapping + metadata format. However, I found that some aspects of flexibility are indeed at the cost of other aspects of rigidity. Maybe our model is still not flexible enough. Our design and implementation are more agile than the traditional development process, but we have not used the code "agile" written in PHP ". What kind of "degree" is the compromise between "flexibility" and "quick?