作为一个可持续发展的软件系统, 必须考虑以下几点:
1. 系统的开发量
2. 系统的维护难度
所谓的软件架构, 正是为了解决上面的问题而提出来的, 当然, 软件架构还会负责一些更多的内容, 比如, 解决性能问题等等
B/S结构最常见的是MVC结构, 这是一种非常成熟的概念了(JAVA在这方面走得很远, 我还尚未能深入研究, 不过, 应用在php上面应该是够用的)
现在让我们检查一下, 哪些事情会增加系统的开发量?
1. 代码重用度不高, 结构不好
这应该通过良好的系统设计来避免
然后, 哪些事情会增加系统的维护量 (对web网站而言)?
1. 修改外观
2. 修改处理流程
3. 增加全新功能
考虑项目中目录的划分, 这里再补充说明一下
1. html和数据的输出分离 (html页面保存有输出数据的tag, 其他如何修改就是美工的事情了)
2. 流程处理由logic完成, 因为流程往往涉及到网站的架构, 所以处理流程(不同页面的跳转逻辑)可以通过mapping的数据, 保存起来, 一般来说, 我认为logic里面是没有页面输出的, 应该只有函数
3. 后台的数据, 通过生成新的类或者函数接口, 向module层申请, 返回各种数据, 然后由logic的action完成
以上架构有点struts的味道, 实际上我所参考的phrame从项目简介来说, 就是一个struts的参考实现, 当然, 我认为并不需要使用很heavy的很标准的库来完成项目, 一般的template类(view)和数据库接口(module)已经够用了, 在项目规模不大的情况下, 合理的系统架构已经够用了
分享到:
相关推荐
初中语文文学讨论名著导读旧文新读感慨时光 和吴越先生在一起
个人工作总结范文新.doc
【华硕服务器在文新传媒信息化建设中的应用】 华硕服务器在文新传媒信息化建设中发挥了关键作用,其中,华硕RS520-E6是一款针对机柜优化的2U机架式服务器,专为强化新闻采编系统的建设而选用。这款服务器基于Intel...
房屋漏水起诉书范文新.pdf
2020医生述职报告范文新素材.docx
寒假实习总结范文新5篇.docx
文明养犬文新中队PPT学习教案.pptx
2021个人述职报告范文新五篇.docx
1. **委托开发内容及技术指标**: - 这部分定义了合同的核心,即委托方(甲方)要求开发方(乙方)完成的具体技术研发任务,以及技术指标和标准。这些内容应清晰明确,确保双方对项目目标有共同理解。 2. **履行...
【甲骨文、金文新释两则】这篇文章主要探讨了甲骨文和金文中的两个关键人物身份的再解析,对于理解古代历史和文化具有重要意义。文章首先聚焦于周原甲骨文H11:11,通过对该片卜辞的重新审视,作者提出其中的人名“更...
【考研复试英语自我介绍范文新精选】 在考研的复试阶段,英语自我介绍是展示考生语言能力和个人特质的重要环节。一篇精心准备的自我介绍可以帮助考生在众多竞争者中脱颖而出。以下是一份新的考研复试英语自我介绍...
1. **基本概念** - **项目** 是一种具有明确开始和结束日期的活动集合,具有独特性,需在预定的时间、费用和资源限制内完成。ISO10006定义项目为一系列相互协调和受控的活动,旨在达成特定目标。 - **工程项目** ...
针对NAT环境下参与用户网络类型、网络状况往往不一致的情况,提出一种动态节点转发的实时多媒体数据传输技术。采用数据发送节点基于最优节点路由算法将数据发送给多媒体系统中的某些节点,然后由这些节点及下一批被...
+ (-1)^(n+1)*n^2 = (-1)^(n+1)*n*(n+1)/2。这种思维方式在解决数学问题时能帮助我们寻找规律并形成猜想。 类比推理则是基于已知对象的相似性,推测未知对象的性质。例如,从实数的性质类比到复数的性质,判断复数...
1. 整理卷宗:实习生通过整理卷宗熟悉律师的办案流程和司法程序,理解案件的起诉、答辩和判决过程。 2. 协助律师工作:参与当事人会见,了解律师与当事人沟通的技巧和策略;跟随律师开庭,观察法庭辩论,学习如何...
1. **贷款用途**:贷款资金仅限于购买、建造或翻建自用住房,不得挪作他用。 2. **贷款支付方式**:贷款由金融机构通过转账直接划入售房单位或施工单位的账户。 3. **抵押物设定**:借款人提供特定的房产作为贷款...
教育精品资料
现以“个人工作年度述职报告范文新5篇.docx”为研究对象,深入分析其内容要点,以便更好地理解和掌握撰写此类报告的精髓。 首先,思想态度在个人年度述职报告中占有极其重要的地位。一个积极的工作态度是职业发展的...
高考数学文新思维二轮课件:第一部分送分专题第3讲不等式及线性规划.docx