-
依赖注入及AOP简述(十二)——依赖注入对象的行为增强(AOP)
所属栏目:[程序设计] 日期:2020-05-23 热度:176
四、依赖注入对象的行为增强(AOP) 前面讲到,依赖注入框架的最鲜明的特点就是能够提供受容器管理的依赖对象,并且可以对对象提供行为增强(AOP)功能,所以这一章我们来讨论有关AOP的话题。 1.对依赖对象进行行为增强 所谓AOP,就是Aspect Oriented Program[详细]
-
对于单元测试的观点收集
所属栏目:[程序设计] 日期:2020-05-23 热度:65
对于测试驱动开发,老外众口一词十分推崇,国内有人赞成有人反对。虽然暂时还没有开始这方面的尝试,在这里只是罗列一些双方的观点,做一些思想上的准备。 关于更深入的判断什么时候要写测试、该怎么写 1.测试让你用程序功力去挑战你的程序功力—身为工程师,[详细]
-
如何判断软件功能特性的依赖?
所属栏目:[程序设计] 日期:2020-05-23 热度:130
软件功能之间的关系大致有三种: 1. 彼此独立 这些功能就是打死不相干的,变更其中一个地方,另外的地方也不受影响,包括在输入上独立,输出显示上独立和数据独立 2. 调用和被调用 可能在某些应用程序中,有函数或dll的调用,那么如果被调用的特性被修改了,[详细]
-
链路聚合[神州数码设备]
所属栏目:[程序设计] 日期:2020-05-23 热度:73
实验线路连接图: 实验内容: 测试机配置[如图示] DCRS-5526S配置,接上个实验配置。 ===端口聚合配置=== SwitchB(Config)#port-group 1 //方法一:手工生成链路聚合组--使用强制模式 SwitchA: //创建port-group SwitchA(Config)#port-group 1 SwitchA(Config[详细]
-
敏捷开发为何难有“最佳实践”
所属栏目:[程序设计] 日期:2020-05-23 热度:127
虽然最早来源无从考察,但将最佳实践(Best Practices)一词发扬光大的无疑是CMM/CMMI。 以本人接触的先后顺序,CMM是在2001年同方听到的,而极限编程(那时候基本上还没有Scrum)也是同时听到的,所以算是同一时期的东西。但是为何10年来,“最佳实践”在CMM[详细]
-
依赖注入及AOP简述(十一)——生命周期管理
所属栏目:[程序设计] 日期:2020-05-23 热度:73
2.生命周期管理 各种依赖注入框架提供了替开发者管理各种Scope的便利功能,随之而来的就必然是被管理的依赖对象的生命周期管理的问题。所谓生命周期管理,就是一个对象在它所属的Scope中从被容器创建开始、到被提供给依赖者、再到最后的消亡这一整个过程中,[详细]
-
DDD调试 stagefright
所属栏目:[程序设计] 日期:2020-05-23 热度:112
Google为Android应用开发提供了eclipse加插件作为开发工具,基于eclipse可以方便调试apk,而对于底层开发人员(比如opencore开发)没有提供类似直观的开发工具及调试手段。本文旨在介绍一种基于ddd+gdbserver的调试方法,用于类似 opencore的C层面的程序调试[详细]
-
聚合,真正的聚合ActiveX控件 .
所属栏目:[程序设计] 日期:2020-05-23 热度:108
其实,个人以为,用聚合的方法来整合ActiveX控件并没有多少意思,还是用包容来得实在。不过,看到有许多人在msdn上问,而且也想看看聚合一个ActiveX控件的过程,就自己花了些时间用MFC来弄弄了。 1.建立一个普通的MFC ActiveX控件tagc 2. 缺省情况下,控件是[详细]
-
从单一产业到综合运营商 海航云转型之路
所属栏目:[程序设计] 日期:2020-05-23 热度:187
产业多元化转型 通常,大家一听到海航就认为是做交通业,做航空运输的。如果是十年前,这种认知完全正确,但在今天海航集团这四个字所代表的已经不仅仅是一个但一个的航空企业,而是涵盖航空旅游、现代旅游、现代金融等领域的综合性运营商。海航的企业愿景和[详细]
-
我眼中的敏捷实践
所属栏目:[程序设计] 日期:2020-05-23 热度:185
最近coolshell.cn上有几篇对TDD以及ThoughtWorks颇有微词的文章,然后园子里的Todd Wei同学也来了篇TDD到底美还是不美的文章。本来不想趟这个浑水,但想来想去还是有些话想说说。 声明:本文我不想议论ThoughtWorks怎么样,要我说她的坏话这有点过不去,她是[详细]
-
依赖注入及AOP简述(九)——单例和无状态Scope
所属栏目:[程序设计] 日期:2020-05-23 热度:98
三、依赖注入对象的Scope及其生命周期 在前面的章节我们讲到,依赖注入容器之所以能够区别于以往的ServiceLocator等容器,是在于其不但能够自动构建多层次的、完整的依赖关系图,并且可以管理依赖对象的Scope和对其进行行为增强。有关行为增强的话题我们会在[详细]
-
依赖注入及AOP简述(八)——混合请求模式
所属栏目:[程序设计] 日期:2020-05-23 热度:57
2.3.混合请求模式 上一节讲到了FQCN(全类名)请求模式会带来依赖定义的柔软性较差的问题,因此字符串和全类名混合的模式又应运而生了。比如刚才的Spring中的API方式声明注入点的例子就可以改为使用下面的API: // Spring的字符串+全类名注入的API BeanFactor[详细]
-
依赖注入及AOP简述(四)——“好莱坞原则”和依赖注入框架简介
所属栏目:[程序设计] 日期:2020-05-23 热度:197
3.2.“好莱坞原则” 看了前面关于依赖注入概念的描述,我们来提炼出依赖注入的核心思想。如果说传统的组件间耦合方式,例如new、工厂模式等,是一种由开发者主动去构建依赖对象的话,那么依赖注入模式则是其反向的,即被动地等待别人做好一个依赖对象提供给我[详细]
-
依赖注入及AOP简述(三)——依赖注入的原理
所属栏目:[程序设计] 日期:2020-05-23 热度:58
3.“依赖注入”登场 于是诸多优秀的IT工程师开始想出了更加轻量便利、更加具有可测试性和可维护性的设计模式——IoC模式。IoC,即Inversion of Control的缩写,中文里被称作“控制反转”。至于为什么会有这么一个看似古怪的名字,我们稍后会做解释。2004年著[详细]
-
依赖注入及AOP简述(二)——工厂和ServiceLocator
所属栏目:[程序设计] 日期:2020-05-23 热度:127
2.2.工厂模式 基于手工构建组件的诸多弱点,1995年“大师4人组”(GoF)在其经典著作《DesignPatterns》一书中提出了“工厂模式”,这种模式在一定程度上有效的解决了之前所遇到的问题,时至今日仍然被大量应用于软件工程的设计当中。 我们先来看之前的例子,[详细]
-
依赖注入及AOP简述(一)——“依赖”的概念
所属栏目:[程序设计] 日期:2020-05-23 热度:143
领导让我写一篇关于依赖注入的教案,正好一直也有想将近年来自己的所学所悟整理出来的想法,就在这里一边写着一边与大家分享吧~ 一、入门:依赖注入 作为一种全新的设计模式理念,“依赖注入”这个词汇在软件设计开发中已经是越来越耳熟能详了,而各种流行于[详细]
-
IoC(控制反转)与依赖注入是什么个概念
所属栏目:[程序设计] 日期:2020-05-23 热度:103
IOC是Inversion of Control的缩写,多数书籍翻译成“控制反转”,还有些书籍翻译成为“控制反向”或者“控制倒置”。 1996年,Michael Mattson在一篇有关探讨面向对象框架的文章中,首先提出了IOC 这个概念。对于面向对象设计及编程的基本思想,前面我们已经[详细]
-
为找工作练手--字符串倒置
所属栏目:[程序设计] 日期:2020-05-23 热度:121
今日写了字符串倒置的程序,非常简单。 算法思路: 1.把遍历字符串到中间位置 2.把每个遍历到的字符与它要倒置的字符互换位置。 程序如下: void reverseString(char *str){assert(str != NULL);int length = strlen(str);for(int i = 0; i length / 2; i++){[详细]
-
Pipeline Pattern
所属栏目:[程序设计] 日期:2020-05-23 热度:123
Pipeline模式在分布式框架中经常可以看到,应用该模式可以使框架具有良好的灵活性。当我们需要构建一个系统用于处理并转换一串输入数据时,如果通过一个大的组件按部就班的来实现此功能,那么一旦需求发生变化,比如其中的两个处理步骤需要调换次序,或者需[详细]
-
使用MbUnit进行数据驱动测试(单元测试)
所属栏目:[程序设计] 日期:2020-05-23 热度:89
MbUnit3.0较之2.0在数据驱动测试方面有很大的提高,下文尝试将数据驱动的测试运用于TDD。 问题: 在TDD的过程中,对于持久层数据的单元测试一直是一个很头大的问题,就数据逻辑本身,可能并不负责,但大量可读性较差的数据(几十条记录硬编码到代码中,想必测[详细]
-
软件开发永远不是简单的事 重构代码的7个阶段
所属栏目:[程序设计] 日期:2020-05-23 热度:75
你曾去想重构一个很老的模块,但是你只看了一眼你就恶心极了。文档,奇怪的函数和类的命名,等等,整个模块就像一个带着脚镣的衣衫褴褛的人,虽然能走,但是其已经让人感到很不舒服。面对这种情况,真正的程序员会是不会认输的,他们会接受挑战认真分析,那[详细]
-
从今天开始,记录下在公司的点点滴滴。
所属栏目:[程序设计] 日期:2020-05-23 热度:124
公司不给上外网啊...木有办法只好用这样的方式了. 今天由于家里还是不能上网,所以果断来公司加班以防止在家成为胡子拉碴的宅男过一天跟AI三国杀的日子. 来到办公室发现没有什么人,于是想起这周的工作成果还没有编写单元测试.提起键盘创建了xxxTest类才发现不[详细]
-
嵌入式编译器 查看库文件依赖关系
所属栏目:[程序设计] 日期:2020-05-23 热度:86
关于使用glibc库(修改: 2011.7.13) 可以先到google上搜索一下glibc了解大概,对于嵌入式系统的glibc库来说,只需加载器和动态库。 在制作交叉编译器的时候,已经生成了glibc库,可以直接使用。我使用的是openmoko团队制作的arm-linux-gcc 4.1.2版本编译器[详细]
-
Beamforming
所属栏目:[程序设计] 日期:2020-05-23 热度:176
(1) Beamforming 的定义 Beamforming是发射端对数据先加权再发送,形成窄的发射波束,将能量对准目标用户,从而提高目标用户的解调信噪比,这对改善小区边缘用户吞吐率特别有效。 Beamforming可以获得阵列增益、分集增益和复用增益。 (2) Beamforming通常[详细]
-
什么是依赖,什么是抽象
所属栏目:[程序设计] 日期:2020-05-23 热度:126
什么是依赖,什么是抽象 1.关于依赖和耦合:从小国寡民到和谐社会 在老子的“小国寡民”论中,提出了一种理想的社会状态:邻国相望,鸡犬之声相闻,民至老死,不相往来。这是他老人家的一种社会理想,老死不相往来的人群呈现了一片和谐景象。因为不发生瓜葛[详细]

浙公网安备 33038102330553号