代码与组件

本文仅仅从纯粹代码维护和进化的角度考虑问题,完全忽略微观工程中的组织和分工。

程序中的组件并不等同与真实世界的组件,本质上是方法,数据,上下文。

组件是抽象组件,比如开车方法,放在人身上也行,放在车身上也行,放在车身上,就是车提供一个被开的方法,属于某种,建造者模式。

有时候是组件提供某种方法,有时候是组件提供某种方法的映射或运行结果,那被称之为外观模式(门面模式)

实际上想说,不用拘泥于客观世界的定势,架构师扮演上帝,制造一个属于概念的世界,

组件的划分,随时从虚空中发明无限多不存在的功能构件,其目的不是为了提供功能,而仅仅是为提供功能的代码提供某种助记助用的虚拟区域划分,如同军队中的组织单元。

组件代码的多少无定,不受空间的限制,只受维护复杂极限的限制。

组件之间的组装,套用,不受任何字面的逻辑限制,仅需要考虑的是如何能化难为量,化需求为知识,让计算机和知识储备为你的工作解决大部分问题。如果调用不利,就切割组件或映射组件。

组件的划分和调用,仅仅对代码有效组织的助记而已,本质上应追求代码的有效组织,而不是其他。

时间: 2024-11-01 16:47:21

代码与组件的相关文章

可复用代码:组件的来龙去脉

相关文章链接 编程之基础:数据类型(一) 编程之基础:数据类型(二) 高屋建瓴:梳理编程约定 动力之源:代码中的泵 难免的尴尬:代码依赖 重中之重:委托与事件 物以类聚:对象也有生命 可复用代码:组件的来龙去脉 7.1 .NET中的组件 7.1.1 组件的定义 7.1.2 Windows Forms中的组件 7.1.3 Windows Forms中的控件 7.2 容器-组件-服务模型 7.2.1 容器的另类定义 7.2.2 容器与组件的合作 7.2.3 窗体设计器 7.3 设计时(Design-

华丽丽的在线代码高亮组件CodeMirror

偷懒为码农天性之一:能一蹴而就的决不愚公移山,能一劳永逸的决不孜孜不倦!其中一个代码实例就是 动态配置,将不同的场景抽象成通用逻辑加配置,这样就可以"一处代码供全球,不做代码搬运工",更有甚者是把特殊的代码也变成是动态加载(比如用Groovy, Clojure去做动态加载).当配置动态代码时,总得把代码上传到服务器,如果代码是通过贴到上传页面的话,Textarea里的代码可没有IDE下那么婀娜多姿,要想好看就得想办法!在线代码高亮组件 正在灯火阑珊处.... 在线代码高亮组件有很多,特

常用的 C# 4.0 的代码和组件包

C ommonLibrary.NET 是一组很常用的 C# 4.0 的代码和组件包,范围涉及 ActiveRecord, Csv, Command Line Parsing, Configuration, Validation, Logging, Collections, Authentication,等等 面向的平台: .NET C# 4.0 for current version. 3.5 for prior versions http://commonlibrarynet.codeplex

如何写出高质量的代码 data 组件 函数

今天在将以前文件上传的地方全部 改为新的文件上传的api. 在改动的过程中,发现代码有很多不合理的地方 在改的时候,因此也是非常的痛苦的哈. 比如说在data中我有太多的flag标识.俩控制元素的显示和隐藏了.真的是太多了 这样要不得,虽然代码是可以正常的跑的.但是呢?? 以后不利于他人自己以后的维护.这一点我一定赶紧过来. 1在data中不要写太多的公共数据 如何解决了: 能局部显示的,就局部显示吧. 是不是非要data中的数据取显示了. 2学会写局部组件和公共组件 我写的代码还有一个问题 h

解决代码着色组件SyntaxHighlighter行号显示问题

SyntaxHighlighter是根据代码中的换行符分配行号的.但是,如果一行代码或者注释比较长,在页面显示时需要分成多行显示,这时行号就对不上了.如下图: 通过下面的css强制不换行,可以避开这个问题. .syntaxhighlighter .line { white-space: pre !important; } 但这样会出现横向滚动条,而不想出现横向滚动条,css要改为这样: .syntaxhighlighter .line { white-space: pre-wrap !impor

UI刷新组件和代码刷新组件

华丽的网上突出代码组件CodeMirror

农民之间的代码懒惰性质:愚公绝不能过夜.一劳永逸永远不知疲倦!这是一个代码示例 动态配置,在不同的场景抽象为常见的配置逻辑加,这使得有可能"为一个全球性的代码.代码做搬运工",更糟糕的是特殊的代码已经成为一个动态负载(让我们用Groovy, Clojure做动态负载).置动态代码时,总得把代码上传到server.假设代码是通过贴到上传页面的话.Textarea里的代码可没有IDE下那么婀娜多姿.要想好看就得想办法! 在线代码高亮组件 正在灯火阑珊处.... 在线代码高亮组件有非常多,特

autofac v4.0+通过配置文件的方式注册组件

最近在看李玉宝 / OpenAuth.Net的项目代码,新手表示看不懂.所以,不管三七二十一,模仿是最好的学习,于是我决定自己创建一个项目,把人家的代码一点一点拷贝过来,细细品味. 在研究的过程中,我发现大神用autofac是通过配置文件的方式.Autofac.Configuration的版本是V3.3,然后我创建的项目用的是V4.0.1. 本来是想用代码注册组件的,但是以看到大神是通过配置文件注册的,于是乎,不管三七二十一,我就定下了一个小目标,我要用v4.0.1版本来完成使用配置文件的方式来

难免的尴尬:代码依赖

相关文章连接 动力之源:代码中的泵 高屋建瓴:梳理编程约定 编程之基础:数据类型(一) 编程之基础:数据类型(二) 可复用代码:组件的来龙去脉 重中之重:委托与事件 物以类聚:对象也有生命 难免的尴尬:代码依赖 12.1 从面向对象开始 12.1.1 对象基础:封装 12.1.2 对象扩展:继承 12.1.3 对象行为:多态 12.2 不可避免的代码依赖 12.2.1 依赖存在的原因 12.2.2 耦合与内聚 12.2.3 依赖造成的尴尬 12.3 降低代码依赖 12.3.1 认识抽象与具体 1