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

推荐订阅源

爱范儿
爱范儿
量子位
人人都是产品经理
人人都是产品经理
小众软件
小众软件
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - Franky
Recent Announcements
Recent Announcements
A
About on SuperTechFans
Microsoft Security Blog
Microsoft Security Blog
N
Netflix TechBlog - Medium
H
Help Net Security
博客园 - 三生石上(FineUI控件)
博客园 - 司徒正美
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
MyScale Blog
MyScale Blog
The Cloudflare Blog
S
SegmentFault 最新的问题
H
Hackread – Cybersecurity News, Data Breaches, AI and More
J
Java Code Geeks
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
P
Proofpoint News Feed
宝玉的分享
宝玉的分享
Vercel News
Vercel News

博客园 - Chatterley

验证码的安全效果 Sea@35还是挺适合初玩游戏的人 wpmu中使用jquery的bug 无题国庆 google.cn的设计? Microsoft Academic Address 注册openid来遨游网络 缓存有关的几篇文章 product@35 wordpress mu无法显示中文问题的解决方法 Zend framework 1.0.0下载 PHP扩展入门的好文章 microformats Windows SharePoint Services Skills 第17界Jolt大奖 产品开发和商业系统开发 走了,想回头,却不能回头 Ajax界面 工作流开发的一篇好文章
关于分层和职责
Chatterley · 2008-04-11 · via 博客园 - Chatterley

现在,人人都会用MVC的模式,都知道分3个层次来处理系统。分了3个层次,而代码的分界确又是堆砌的,爱堆哪就堆哪,这样和没分层又有什么区别呢?表现上看起来好点罢了。

我看到很多的代码,在aspx.cs页面处理了很多的业务逻辑。在简单的网站,也许你认为没有业务逻辑,所以都可以写在aspx.cs。事实上并非如此。页面的显示视图不一样,也是逻辑。对于输出View的控制所有东西都是逻辑。在业务逻辑层上,很多人喜欢重复调用下数据层的东西,那种重复劳动太值了,多了一层多处理,又没有起到应有的作用。在业务逻辑层还出现GetXXXByUserID之类,就说明你出现了吃力不讨好的事情了。

分层的心态是好的,可没做到份上。事实上,原则应该如下:

表现层,用以处理所有用户输入和数据显示问题;
业务逻辑层,存放所有“业务逻辑”,所有处理,算法等应该放的地方;
数据访问或资源层,存放用于检索、修改或存储数据的所有代码。

简单的说表现层只处理输入和数据显示,当然还包括JS之类的处理。其他一律可以放到逻辑层处理。而数据访问层,说简单就是增删改查四个动作,其他的一律提到逻辑层处理。这样逻辑层的东西就可以具体的根据相同职责来分分合合。这样代码就清晰多了。

哎~,可这个世界就有如字不可教的大量人存在。