惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

GbyAI
GbyAI
L
LINUX DO - 热门话题
月光博客
月光博客
B
Blog
博客园 - 叶小钗
美团技术团队
D
Docker
A
About on SuperTechFans
Stack Overflow Blog
Stack Overflow Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
WordPress大学
WordPress大学
P
Proofpoint News Feed
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Y
Y Combinator Blog
V
V2EX
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 三生石上(FineUI控件)
The Register - Security
The Register - Security
博客园_首页
The Cloudflare Blog
I
InfoQ
T
Tailwind CSS Blog
MongoDB | Blog
MongoDB | Blog
Engineering at Meta
Engineering at Meta
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Microsoft Azure Blog
Microsoft Azure Blog
有赞技术团队
有赞技术团队
C
CERT Recently Published Vulnerability Notes
AWS News Blog
AWS News Blog
Spread Privacy
Spread Privacy
V
Visual Studio Blog
博客园 - Franky
Cloudbric
Cloudbric
Help Net Security
Help Net Security
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
N
News and Events Feed by Topic
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Webroot Blog
Webroot Blog
博客园 - 【当耐特】
TaoSecurity Blog
TaoSecurity Blog
B
Blog RSS Feed
N
News | PayPal Newsroom
人人都是产品经理
人人都是产品经理
H
Heimdal Security Blog
L
LangChain Blog
PCI Perspectives
PCI Perspectives
Jina AI
Jina AI
Google DeepMind News
Google DeepMind News
Schneier on Security
Schneier on Security

博客园 - -Enchant

Linux上搭建Asp.net MVC3环境(CentOS + Nginx + Mono) 《单例模式》你需要注意的问题 Extjs prompt 显示密码框 Python网页抓取、模拟登录 单点登录(SSO)的一点思考 Jquery以JSON方式调用WebService WCF初探 关于抓取百度搜索内容 iPhone开发环境搭建(备忘) SMTP/POP3命令简介(转) C/S模式下 简单的定时任务功能 Asp.net MVC2学习笔记索引 Oracle 调优 Oracle常见错误 @OutputCache指令参数 关于ACL权限控制【ASP.NET MVC2】 c#递归生成XML ASP.NET MVC2 Ajax返回JSON 引用类型的对象复制(浅复制和深复制)
系统框架整理
-Enchant · 2011-05-21 · via 博客园 - -Enchant

最近空闲时间喜欢折腾自己的“框架”

其实框架这东西,当你项目实战经验丰富了,自然就形成了框架(除非你自己不整理。。O(∩_∩)O~)

1、流行的框架

  目前流行的框架很多,比如:三层、7层、N层、MVC、MVP、MVVM 等等,这里就不具体一一介绍,大家有兴趣可以查一下相关资料,这些框架还是值得大家好好研究的,

否则怎么能够形成自己的框架呢?哈哈

  这么多框架的形成,最主要的作用我想还是 系统扩展性

      客户的需求是千变万化的,如何快速响应需求、快速扩展需求,就需要框架的支持、设计上的支持,

  还有重要的就是 系统快速开发,建立在框架的基础上再开发,显然开发效率提高了,开发成本自然降低(我相信大部分公司是看中这一点的)。

2、整理自己的框架

  下面是个人一些看法:

    首先框架的底层 大家都知道是数据持久层(就是说 我们系统的数据要保存到哪里?我们要从哪里读取数据?),

    其次 我们需要 中间层,该层 负责 系统的业务逻辑数据处理、业务逻辑判断等跟实际业务相关的操作,该层调用持久层接口来保存数据和读取数据

    最上层 UI层,负责展示数据,与用户交互,可以直接调用业务逻辑层

  好,上面是经典的三层结构,不过 个人认为 我们可以把中间层再拆分为2层,业务逻辑和控制,UI来调用控制层,控制层负责调用业务逻辑,这样我们的

  UI就不需要直接调用业务逻辑相关类来做处理了,减少他们2之间的耦合度,当我们业务逻辑发送变化时,只需要修改控制层和业务层,基本与UI层无关

  理解几层的关系以后,我们很容易就能画出来系统结构图,下面是我根据目前的结构 画的图:

             

     上面我只画了三层,不过,我在UI层,加上了控制器,而且使用了spring.net 来做IOC,这个看大家需要来选择了

     UI层目前使用纯ajax操作,与后台控制层数据采用json传递(其实,当我们纯ajax操作了,前台界面岂不是可以直接html了?就不需要aspx页面了?确实,我前面2个项目都是采用这种方式,看情况还不错,只是开发js工作量增大)

      业务逻辑层 处理 业务数据,如:单据新增、修改、删除、逻辑验证等操作

       数据持久层 :自己实现 DataCore 并根据DbProvider 来适应不同数据库(具体细节这次就不多说了),并且采用了xml方式来保存sql语句到外部文件

    上面的结构图中 还加入了Cache,保存一些常用的数据。。。。

上面只是对框架的简单介绍,当然我们还有很多细节工作需要完善比如各层之间的调用方式、缓存的处理等。。