因为在编程当中呢,也就是随着现代编程语言,编程工具的发展,面向组件的编程思想越来越蓬勃发展;
为什么要用组件?
这个是我们经常可以看到的三层应用程序模型的出现,这个三层应用程序模型的出现可以说极大地促进了组件的发展,所谓的N层应用程序模型是在这个基础上发展起来的,对于任何的一个事物呢,我们分为三个层次或者说三个阶段或者三个层面来看待,首先是UI层(用户界面层),在这里面就是ASP.NET的页面包括ASP.NET的用户控件等等,UI层就像戏剧里面的演员,朋友们看到的是演员的表演,演员实际上就是UI层,观众直接看到的,用户直接看到的;业务对象层,我们也叫业务逻辑层包括一些业务对象的逻辑,比如以戏剧为例,导演这样一个角色就是出于业务逻辑层;数据层,剧本就是数据层;比如说我们有个电子商务的网站,那么毫无疑问各个界面各个页面都是UI层,整个的业务逻辑都是业务对象层(包括整个业务是如何实现的,整个数据是如何传递的,整个的表单时如何提交的等等都属于业务对象层),数据层常见的就是数据库了比如SQL Server,还比如说Access等等都属于数据层,基本上常见的应用程序呢都可以划分这三层,也就是您在进行程序设计的时候都可以从这三个角度来考虑它,也就是说这三个方面可以划分为独立的模块来做,比如UI层独立的表现,而业务逻辑层是独立的内部,它不需要界面的表现,只需要内部程序的一些算法,数据层专门处理数据的交互的,所以说这三块相对来说是独立的,所以就提到了组件的发展,也就是说既然它们可以独立出来,自然而然我们就把它作为一个模块来对待;
什么是组件?
可以在不同的应用程序中使用的对象集合,一般来说一个组件包括好多个对象,而这些对象是有一些相同的功能的,我们把他们放到一块组成了组件;组件类似软件编程中的积木,从程序发展的角度来讲呢,编码是越来越简单的,作为一个编码员来说我们只是把一些现成的组件堆积到一块;功能相对完备的单元,带有与它的内部体系结构相对独立的外部接口,就是说组件的外部接口是相对独立的和内部的算法是没有关系的,比如插线板,无论哪种插线板我们的计算机的插销都可以插上去,不管它是什么品牌,它的外部接口是一样的;例如Dll,文件对话框,aspnet_isapi用来处理ASP.NET页面的,Framework类库;
组件的优点?
首先单个的组件比一个功能完备的应用程序要简单的多,组件比应用程序小,比类大;组件功能是独立的,如果接口相同可以那另外一个组件来代替原来的组件,可以做到无缝升级;可以重复使用,我们编程语言的发展的目的就是重复使用,无论面向对象还是面向组件它们的目的都是重复使用,写一次就不用再写了,如果小的东西我们拿来过程如果相对大一点的我们拿来一个类,如果再大一点的我们拿来一个组件来;减少代码量,使得代码更容易维护;
发表评论
-
什么是组件以及为什么使用组件
2012-07-03 12:18 560因为在编程当中呢 ... -
amchart的使用!~
2012-07-02 10:15 795最近公司开发项目 ... -
Mnogosearch
2012-07-02 10:15 729一。Mnogosearch是php的搜索引擎 同datep ... -
android ubuntu9.10 源码的编译 Eclipse工程 Contacts编译 应用加载
2012-07-02 10:15 738第一部分:编译环 ... -
用Lisp写网站程序的备忘
2012-07-02 10:14 5641。 使用 hunchentoot 作为网站框架,它的功能 ... -
如何使用registerClassAlias来解决module中使用RemoteObject---第一次访问正常、第二次出错
2012-07-01 09:37 546问题:今天我在Flex的module中使用RemoteOb ... -
Flex4 使用RemoteObject BlazeDS 连接JAVA对象获取数据
2012-07-01 09:36 694使用FLEX4 和 JAVA进行通讯 并和JAVA内置的对 ... -
Flex remoteobject工作原理探讨
2012-07-01 09:36 537Flex访问远程服务都是通过AbstractService ... -
一个用ArrayCollection作为数据格式 读取远程XML绑定到DropDownList例子
2012-07-01 09:36 553这个例子没有使用 XMLListCollection 而是 ... -
一个用ArrayCollection作为数据格式 读取远程XML绑定到DropDownList例子
2012-07-01 09:36 652这个例子没有使用 XMLListCollection 而是 ... -
VS调试项目出现"访问IIS元数据库失败"的267904错误解决方法
2012-06-30 17:53 1030今天重做系统后,新装了VS2008和IIS6.将原来的AS ... -
Linux下ODBC中文乱码解决方法
2012-06-30 17:53 899最近在做一个linux下的系统,基于移植性的考虑(该系统数 ... -
phpmyadmin链接表的附加功能尚未激活的解决方法
2012-06-30 17:53 541phpmyadmin链接表的附加功能尚未激活的解决方法 ... -
u-boot在S3C2440上的移植问题及解决方法集锦(二)
2012-06-30 17:53 672一、移植环境 ... -
linux内核编译过程中出现两个错误的解决方法~!
2012-06-30 17:53 1462/*************************** ...
相关推荐
java 使用JCheckBox组件 java 使用JCheckBox组件 java 使用JCheckBox组件
在使用 vue 的开发中,我们有时会引用外部组件,包括 UI 组件(ElementUI、iview)。 当 <style> 标签有 scoped 属性时,它的 CSS 只作用于当前组件中的元素。 但是在父组件中添加 scoped 之后,父组件的样式...
这样就可以在组件再次需要使用时,原地满血复活,就像什么都没发生过一样。这种设计思想非常适合内存较小的移动设备。理解Android组件设计思想,对Android应用程序架构会有更好的认识。这一节讲Android组件化设计的...
如果定位不支持ES2015的浏览器: 您可能需要重新考虑,因为在这种情况下最好不要使用Web组件。用法dist/vue-wc-wrapper.js :此文件为ES模块格式。 这是捆绑程序的默认导出,可以在带有<script type="mo
使用FileUpload组件实现上传功能,供大家一起共同分享学习。
java基本组件使用
使用JACOB工具调用COM组件 JACOB 就是 JAVA-COM Bridge的缩写,提供自动访问com的功能,也是通过JNI功能访问Windows平台下的com组件或者win32系统库。这是一个开始于1999年的开源项目的成果。本书使用的是jacob1.7,...
aspjpeg组件aspjpeg组件aspjpeg组件
本篇文章主要介绍了在React 组件中使用Echarts的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Flex 组件Flex 组件Flex 组件Flex 组件Flex 组件
Angular父子组件以及组件之间通讯 @Input @Ouput @ViewChild
不使用组件操作EXcel
Ajax组件Ajax组件Ajax组件Ajax组件
Jmail组件Jmail组件Jmail组件Jmail组件
cui组件-web前端jquery组件库
组件与控件 组件与控件 组件与控件组件与控件组件与控件组件与控件组件与控件组件与控件
这个在使用的时候可以自己加,另外一个问题就是由于这个库是FLEX3的,所以在FLEX4.0或以上的版本(使用的spark主题)的时候,需要修改类里面的Canvas为Group或者其他的显示容器,如果有什么问题可以发邮件给我。...
使用 ActionScript 3.0 组件 编程 学习FLASH BUILDER RIA 必不可少
最新vue组件使用说明 , 基本文档介绍Vue
资源为Winform用户自定义组件库,是自己平时做项目用到的组件以及参考晚上那些有特效组件封装的组件库,中间付出了很多努力,攻克了很多难点,大家喜欢的话,请大家多多给予鼓励,目前是V1.0版本,后期不断更新。...