南阳网站seo顾问,ppt模板免费模板,电子商务与网络营销论文,东莞短视频seo需要多少钱谈谈我对MVC的View层实现的理解 MVC框架可以把应用清晰明了地分为三个部分#xff1a;Model层–数据层#xff0c;View层–视图层#xff0c;Controller–逻辑层#xff0c;Model层负责整合数据#xff0c;View层负责页面渲染#xff0c;Controller层负责实现业务逻辑。 … 谈谈我对MVC的View层实现的理解 MVC框架可以把应用清晰明了地分为三个部分Model层–数据层View层–视图层Controller–逻辑层Model层负责整合数据View层负责页面渲染Controller层负责实现业务逻辑。 我在这里简单说一下我对MVC框架中的View层的理解。 View层一般包含两个部分View类和模版文件View类并不是必需的采用View类可以整合代码因为有时候View层也会有一些复杂的逻辑和数据读取的操作这些操作最好放在类或者对象中实现如果直接在模版文件中实现会让模版文件很凌乱不利于代码复用和后期维护。 对于一个Web应用来说整个应用的风格和页面布局需要保持一致那么聪明的小伙伴是否联想到了代码复用假如这个应用一共有200个页面如何实现“只需在代码中修改一处就可以修改所有页面的共用部分”这是一个非常重要的功能要不然页面上每一个小改动都需要重复200次其中难免出错维护代价高昂。 代码复用的基本思想是“模块化”每个模块只负责一小部分功能整个应用的功能就是这些模块的排列和组合这个思想运用在View层就可以实现上面提到的问题。 那么如何将“模块化”的思想运用在View层的实现上呢 首先需要分析web应用页面渲染的特点。一般的大部分页面共用一个基本布局基本布局之外没有web内容在基本布局里面进行划分比如划分为上下布局左右布局等然后再在划分好的小块中再进行布局划分以此类推直到完成一个页面的布局。因为一个Web应用的风格和大体布局是一致的所以上面划分出来的布局中一部分布局是可以共用的。每一次划分所产生的块都是“模块”这些“模块”都可以复用页面与页面之间共用的块可以通过调用相同的“模块”来实现需要修改的时候只需修改“模块”即可这样就可以达到“只需在代码中修改一处就可以修改所有页面的共用部分”。 那么如何划分布局呢如何把我脑海中对页面布局的划分告诉Web应用 我的两种方案 1. 在每个模块中实现对它所包含的子模块的调用。这样只需要“手动”调取出第一个模块就可以调取出所有它的子模块从而完成整个页面的渲染。这个方法的缺点是“环环相扣”并且没法快速查看如果某个模块渲染不正确只能一级一级地往上追溯。“环环相扣”导致模块与模块之间的关系非常紧密有悖于“模块化”的思想。 2. 为每一个页面单独设置一个布局的.xml文件在这个文件中规定好页面的布局划分哪个模块包含哪些子模块就一目了然便于快速定位问题。缺点是.xml文件的解析难度很大解析.xml文件也非常吃性能如果页面布局复杂维护.xml也会非常麻烦。 我比较偏向于第2个方案第1个方案还有一个非常致命的缺点页面的渲染过程是逐级展开的需要在关键节点进行“干预”使上级模块调取合适的子模块这也是一个难点如果需要干预的点太多就会非常麻烦并且非常凌乱。相比之下方案2只需要维护.xml文件只要编写一个完善的解析函数就可以很好的工作如果解析.xml文件对性能造成较大影响可以把解析.xml后所得的布局对象或者数据结构保存在NoSQL数据库中作为缓存毕竟页面布局不会修改的很频繁这样可在一定程度上减轻解析.xml文件对性能的影响。 再进一步 有没有发现上述的第2方案“为每一个页面单独设置一个布局的.xml文件”会导致众多.xml文件中都会包含大量的重复代码因为大部分页面的布局有很多位置是相同的或相近似的所以可以对.xml文件作一些优化把.xml文件中重复的部分分离出来单独维护这样.xml文件的内容就会清爽很多。 如果您觉得阅读本文对您有帮助欢迎转载本文但是转载文章之后必须在文章页面明显位置保留此段声明否则保留追究法律责任的权利。 转载于:https://www.cnblogs.com/zhanghaiyang/p/7212831.html