现在实习了,发现以前学的东西都是镜花水月,除了基础知识,其他的和企业完全脱轨,规范化,安全性等等都是不堪一击,今天看了一天关于asp.net的三层架构的东西,虽然热潮已经过去了。
以前做web小应用时以为三层无非就是页面,页面对应的CS文件,和类文件这三方面对应的层次,今天看了很多博文,不管是博客园上的还是CSDN上的,都过于偏理论化,也可能本来这个话题就是理论的东西,所以看了半天仍然云里雾里,不知所以然。大家都清楚所谓的三层是表示层(UI),业务逻辑层(BLL),和数据访问层(DAL),可能是受VS的影响,编程分为前后台,所以三层区分起来有些摸不着头脑,看了很多片文章,也是众说纷纭,各不相同,就说我最糊涂的一点来说,页面对应的.CS文件应该是归属于那一层,UI还是BLL?BLL理论来说是一个桥梁,我想不明白的是BLL的任务是不是就是实现对DAL层函数调用和对UI需求信息的提供,比方说,UI层有个控件需要配置数据, 那么由BLL调用DAL的函数实现对数据库的操作并获取结果返回给UI?第二点疑问是,哪些属于数据访问层,哪部份又属于业务逻辑层,我个人编程经验很少,所以就把中间函数写在了页面对应的.CS文件中,当做BLL,然后对数据库的操作函数写在自定义的一个类文件中作为DAL,但肯定不可能那么简单。
还有一些编程过程中的问题,BLL按道理来说也就是编写调用函数并返回值,DAL貌似也就是实现这样的功能,可能区分开是为了实现数据库操作函数的不同页面共享,来实现代码的重用,当然还有common类中定义的一些通用函数,我想了解的是对于业务逻辑层函数的编程和对数据库操作函数的编程要怎样在项目中区分清楚,简单说就是各个文件的放置常用规则,类文件编写中的注意问题等等,还有一点就是类库和类文件的应用有什么区别吗?或者说类库的设计和类文件的设计上是不是有些区别,希望能得到各位的指教。